MultiTier Discounts

Discounts & Gifts: Merchant Guide

Start with one offer. Choose what qualifies, decide what the customer receives, and check the real cart and checkout before launching.

Design preview edition · Illustrated review: 20 October 2026 · 13 narrated tutorials added: 24 October 2026 · Fieldnote Supply examples · Select an image to open it at full size.

1. Choose a Plan for Your Offer

A plan lock identifies the required MTD plan. The MTD Plus app plan and Shopify's Shopify Plus platform plan are different subscriptions.

Where to start
MTD planMain capabilitiesAllowance
FreePercentage-based product, collection, quantity and price-position offers; schedules, limits and messages.2 active campaigns
StarterBuy X Get Y, exact variants, tags, fixed amounts, codes, cart-value and shipping rewards, revenue analytics.10 active campaigns
ProGift offers, gift priorities, advanced targeting and explicit currency thresholds.Unlimited
PlusPro features plus supported mystery-gift checkout presentation on eligible Shopify Plus stores.Unlimited

Open Plans & Billing for current prices, trial terms and the complete feature list. Review Shopify's confirmation before approving a charge. Development-store test access does not mean a paid subscription has started.

Demo plan comparison showing MTD plans and development test access
Checkout mystery requires both eligible Shopify Plus and MTD Plus access.

2. Set Up Your First Offer

Watch tutorial: Get started (3:36, English)

Video unavailable. Follow the illustrated steps below.

Use one clearly named test product and a small discount first. Do not begin with a catalog-wide 100% offer.

  1. Open MTD. The page is headed Discount & Gift Campaigns; the sidebar entry is All Campaigns.
  2. Select Create New Campaign, then a recipe or custom format.
  3. In Offer, name the campaign and choose automatic or code execution.
  4. In Conditions, choose what qualifies.
  5. In Rewards, configure tiers, gifts or shipping.
  6. In Review & launch, inspect the summary and choose Save as inactive draft.
  7. Reopen to confirm the saved values, then activate for a controlled cart and checkout test.
Current campaign list with statuses, schedules and row actions
Filter active, inactive, scheduled or expired campaigns. The theme-status banner refers to the published theme, not every draft preview.
Campaign chooser offering popular recipes and custom formats
A recipe prefills the form. It does not save or activate anything. Replace its example quantities, percentages and products.

3. Understand the Four Steps

StepQuestionSettings
OfferWhat promotion?Name, method, percentage/fixed amount.
ConditionsWhat qualifies?Trigger type, products, variants, collections or tags.
RewardsWhat does the customer get?Tiers, spend thresholds, gift pool, quantities, auto-add and shipping.
Review & launchWhen and for whom?Summary, status, schedule, combinations, sorting, limits, presentation and audience.

A trigger qualifies the offer; a target receives its benefit; a tier is one reward rule. Product tags and customer tags are different. Mystery presentation does not change the fulfillment product.

Advanced controls stay beside the relevant decision. Existing non-default values remain summarized when closed. Closing a disclosure does not reset its values. Use Change in the review summary to revisit a step without discarding the others.

Offer step with campaign identity and discount method
Offer: campaign identity and discount method.
Conditions step showing the cart-value gift trigger
Conditions: this example uses cart value. The spend amount belongs to its reward tier.
Rewards step with the fifty dollar threshold and selected Sun gift
Rewards: select the real gift and threshold. Setup required keeps an incomplete tier open.
Review and launch with summary, draft status and schedule
Review & launch: check the whole configuration before saving. Each step is shown separately so you can read at your own pace.

4. Quantity Breaks Are Not Price Positions

Watch tutorial: Quantity breaks (3:39, English)

Video unavailable. Follow the illustrated steps below.

Buy More of One Cart Line

Choose Quantity Breaks for “2 units: 10% off; 3 or more: 15% off.” Each cart line is evaluated separately. One unit of each of two products does not create a two-unit line. Different properties can also keep the same variant on separate lines.

  1. Select the intended product in Conditions.
  2. Replace the recipe tiers with minimum quantity 2 at 10%, and 3 at 15%.
  3. Use unlimited discounted quantity per line if every qualifying unit should receive that rate.
  4. Save inactive, then test quantities 1, 2, 3 and a return to 1.
Cobalt notebook: $18 each, excluding tax and shipping
Quantity on one lineRateMerchandise total
1None$18.00
210%$32.40
315%$45.90
415%$61.20

The highest matching quantity tier wins. The percentages are not added together. The three-unit result was checked in the real demo cart and checkout.

Current Rewards editor showing minimum quantity two at ten percent and minimum quantity three at fifteen percent
Quantity Breaks: set a minimum quantity on each tier. These are the retained demo campaign's saved values, viewed without changing them.
Cobalt product page with Quantity Tiers and its own add-to-cart control
The product widget explains the tiers before purchase. Its selected quantity controls its Add to cart action.
Three Cobalt notebooks in the real cart at forty five dollars ninety cents
Cart: 3 × $18, less $8.10, equals $45.90.
Real checkout summary with three Cobalt notebooks, fifteen percent saving and forty five dollars ninety cents total
Checkout shows the same $45.90 and $8.10 saving. No order or payment was submitted.

Discount the Second or Third Position

For “second item 30%, third item 50%,” create both position rules instead. In Quantity and Sorting, High to Low sorts by unit price, not the extended line total. Cart Order follows cart order. The per-line quantity cap limits discounted units on a line.

For three different eligible units at $30, $20 and $10, those two rules with High to Low give $6 off the $20 unit and $5 off the $10 unit: $49 total. This is illustrative arithmetic, not the Cobalt quantity campaign. Test repeated units and split lines separately.

Unsaved price-based Rewards example with Tier 2 at thirty percent and Tier 3 at fifty percent
Price positions use Tier 2 and Tier 3, not minimum-quantity tiers. This is an unsaved setup example; it does not change the demo's active quantity offer.

Repeated products: do not infer the result from the number of visible rows. Shopify may group identical units or split them by properties. Check the trigger family, each tier's target and the per-line cap together. Use Quantity Breaks when every unit on a qualifying line should receive the same highest-matching rate; use position rules when the second and third rewards must remain separate.

5. Products, Variants, Collections and Tags

Select qualifying items in Conditions and reward targets in Rewards. Selecting a notebook as a trigger does not also select it as a gift.

  1. Choose the trigger and open its picker.
  2. Select a whole product to include its current and future variants. On eligible paid plans, expand products and choose exact variants for particular SKUs, sizes or colors.
  3. Confirm the picker and check the selection summary in the form.
  4. Save inactive, reopen and confirm it persisted. Test an unselected product.
Shopify product picker with the Sun notebook selected
This example selects a whole product. Its returned summary says All variants included. Products with several variants can be expanded for an exact SKU choice.

A qualifying-item list uses one target kind at a time; gift pools can mix whole products and exact variants. An empty optional product filter means no product restriction, not an empty eligible catalog. For collection offers, check both the trigger collection and any required collection inside each tier. Product-tag rules use product tags; customer tags belong to audience targeting.

Choose the scope that matches your promise
SelectionIncludesCheck before launch
Whole productIts current and future variants.A newly added size or color may qualify too.
Exact variantsOnly the selected variant IDs.Reopen and confirm the SKU/variant summary, not only the product name.
CollectionProducts belonging to the configured collection.Check the trigger and every required tier collection; saving one does not select the other.
Product tagsProducts with matching configured tags.Test an untagged product and do not substitute customer tags.
Exclude filterEligible items except the chosen products or variants.A theme bar must exclude the same merchandise from its promise.

After changing a selection, wait for the returned summary before moving on. Reopen after saving to confirm persistence. Removing a selected resource from an optional filter can broaden the offer; removing a required gift target can make the tier incomplete.

6. Buy X Get Y and Full Sets

Watch tutorial: Buy X Get Y (1:48, English)

Video unavailable. Follow the illustrated steps below.

Watch tutorial: Full sets (1:50, English)

Video unavailable. Follow the illustrated steps below.

Buy X Get Y unlocks configured free targets when selected buy items qualify. A product/collection tiered campaign with Require complete set instead waits for all required set positions. Neither is the same as a quantity break.

  1. Choose the Buy X Get Y recipe.
  2. Select the buy items in Conditions and gift targets in Rewards, using compatible target levels.
  3. Review gift quantity and automatic/code behavior.
  4. If automatic addition is enabled for the offer, enable Gift Auto-Add on the tested theme.
  5. Save inactive, then test the qualifying purchase and a cart missing the buy item.

For full sets, define every required product or collection, check whether the trigger itself receives a discount, and verify every position. Do not advertise all set items discounted unless the trigger setting and rewards actually express that.

Buy X Get Y Rewards screen with Sun notebook selected as the free product
Buy X Get Y: Coral is the buy trigger; Sun is the free reward target. This unsaved example shows configuration, not a tested or retained live promotion.

Build a Full Set Instead

  1. Choose Tiered discount and a product, collection or tag condition supported by your offer.
  2. Select the trigger items, then enable Apply only when full set is in cart.
  3. In Rewards, select every required tier target and its discount. An incomplete set should receive no tier discount.
  4. If the starting items should also be discounted, enable Apply discount to trigger products and set that separate percentage or amount.
  5. Test a complete set, an incomplete set, repeated units and removal of a required item.
Product Conditions showing the full-set requirement and a separate ten percent trigger-product discount
The full-set switch controls eligibility. The trigger-product switch controls an additional reward. Neither switch selects the remaining tier targets for you.
Test two complete sets, repeated quantities, removal of one required item and a gift already present in the cart. Confirm whether one gift or a quantity multiplier is intended before combining other offers.

7. Gift Offers and Automatic Addition

Watch tutorial: Gift offers and Gift Auto-Add (3:19, English)

Video unavailable. Follow the illustrated steps below.

A Gift offer can qualify from products, collections or spend. A classic free gift uses a 100% percentage reward. It remains a real Shopify variant with its existing SKU and inventory identity.

  1. Choose Gift offer or the gift-threshold recipe.
  2. Choose the trigger; for spend-based gifts, enter the minimum on the reward tier.
  3. Select the real gift product or exact variants.
  4. Open Gift delivery, choose application and quantity, and enable Auto-add gift to cart.
  5. Enable Gift Auto-Add in the exact theme, save inactive, review and test.
Gift delivery controls for application mode, quantity, auto-add and advanced settings
Automatic insertion, discounted quantity and the reward itself are separate settings.
  • Limit discounted gifts: cap matching gift units.
  • Discount all selected gifts: discount the configured targets present in the cart.
  • Random one from selected gifts: choose one available configured variant. MTD does not substitute an unrelated product outside the pool.

Example: One Sun Notebook Over $50

The separate gift example uses a $50 minimum, one Sun notebook and auto-add. Three Coral notebooks cost $72 and unlock one Sun at $0. The real cart below also shows Cart Progress; it is not a staged pricing image.

Real cart with three Coral notebooks at seventy two dollars and one automatically added free Sun notebook
Paid merchandise is $72; the Sun gift is $0. Check variants, quantities and prices again in checkout before launching your own promotion.

Priority, Removal and Availability

Lower priority numbers win. Stop lower priority prevents eligible lower-priority gift campaigns from adding gifts. Test overlaps together. Manual removal suppresses re-add for the same qualifying cart fingerprint, including after a reload. A genuinely different qualifying paid cart can receive a new gift; emptying the cart alone is not a promise to undo the shopper's choice. Removing the qualifying purchase should remove its gift.

On cart pages with positional quantity fields, MTD preserves the theme's original row order. A gift may appear before paid items; preserving that order prevents quantities being assigned to the wrong product when the native form submits.

MTD chooses a variant, not a warehouse. Shopify inventory, market availability, fulfillment eligibility and order routing determine supply. A random pool can try another configured candidate after a stock rejection. An exact variant does not silently become a different SKU. Gift-counting settings determine whether gift lines count toward other rules; avoid self-qualifying gift loops.

Untracked stock: a zero inventory count is not automatically sold out when Shopify still permits the variant to be sold. MTD respects Shopify's sale verdict and final add result, including the merchant's continue-selling policy. This does not guarantee physical stock at a particular warehouse.

Advanced gift choices
ControlEffectSafe first setting
Gift quantityNumber of discounted gift units for single/random application.1
Quantity modeFixed quantity or multiplication by qualifying purchase quantity where supported.Fixed; check repeated quantities before using a multiplier.
Count gifts toward other rulesChanges whether marked gift lines contribute to other campaign conditions.Off unless an intentional cross-offer setup requires it.
PriorityLower numbers win when gift offers compete.Test all overlapping offers together.
Stop lower priorityBlocks eligible lower-priority gift offers.Off when gifts should coexist.

8. Cart Value, Currencies and Shipping

Watch tutorial: Cart value and currencies (1:54, English)

Video unavailable. Follow the illustrated steps below.

Enter a minimum for each cart-value reward. An optional maximum stops that tier above its upper bound. Test one cent below, exactly at and just above each boundary, including gaps between tiers.

Use the campaign's eligible merchandise subtotal, not shipping, tax or a crossed-out compare-at price. Product exclusions and gift-counting settings affect which items count. Storefront gift checks use final line amounts when Shopify supplies them, falling back to the available line amount. A grand total after order codes is not a substitute for checking that subtotal. Checkout mystery also has stricter final-eligibility checks; test the actual code you intend to support.

Set Currency Thresholds Explicitly

Amounts are not automatically converted. A EUR 90 base with a USD 100 override does not qualify a USD 95 cart. An unconfigured non-base currency does not qualify in the synchronized configuration. Keep the theme bar and campaign amounts aligned; changing a theme label does not change the actual discount.

On Pro and Plus, open Currency-specific thresholds beside the tier. Enter supported minimums and any maximums. The campaign-wide Minimum cart amount has its own overrides. A currency and a customer's country are different settings.

  1. Enter the shop-currency minimum on the tier.
  2. Add each supported currency and enter its minimum; enter a maximum too if the tier has an upper bound.
  3. Repeat for other tiers and any campaign-wide minimum. One override does not configure all other tiers.
  4. Switch the storefront market and test below, at and above the threshold in its actual cart currency.
Unsaved cart-value tier with USD fifty minimum and a separate Canadian dollar seventy minimum override
USD 50 and CAD 70 are independently entered amounts, not automatic currency conversion. This example was not saved.

Add a Shipping Benefit

  1. On Starter or higher, enable Add shipping discount to this tier.
  2. Use 100 for free shipping, or a smaller percentage for partial savings.
  3. Check the qualifying tier and combinations.
  4. Test checkout after Shopify has an address and available delivery rates.
Rewards tier with a one hundred percent shipping discount configured
This shows the configuration field, not proof that a shipping service or rate exists.

Free shipping does not create shipping rates or replace shipping profiles. An empty checkout saying Enter shipping address is not itself a failed free-shipping calculation.

9. Put Widgets Where Customers Need Them

Watch tutorial: Quantity Tiers widget installation (3:42, English)

Video unavailable. Follow the illustrated steps below.

Watch tutorial: Cart Progress (2:27, English)

Video unavailable. Follow the illustrated steps below.

WidgetPlacementPurpose
Quantity TiersProduct formChoose and add a quantity-break tier.
Bundle Tiers / Discount BadgeRelevant product pageExplain a product offer.
Cart ProgressCart page or supported drawerProgress toward cart-value rewards.
Cross-Sell Cards / Cross-Sell TriggerRelated product/cart areaItems or conditions needed to complete an offer.
Collection UpsellRelated product/collection contextGuide shoppers to qualifying collection items.
Gift Auto-AddTheme App embedsHidden runtime for automatic gift insertion and cleanup.
  1. Open the intended theme in Shopify's theme editor. Draft and published themes are separate.
  2. Choose the product or cart template; add the MTD block in a supported section near the related purchase controls.
  3. For gifts, enable Gift Auto-Add under App embeds too. Quantity Tiers alone does not enable gifts.
  4. Save the theme and test matching and non-matching products, desktop/mobile, cart and checkout.

Customize Without Changing Eligibility

Start with the block's default text and colors. Then adjust its heading, layout, spacing, button labels, visibility and supported campaign filtering. For product-specific blocks, verify variant changes. For cart widgets, verify both drawer and cart page. Use the campaign's real threshold and audience in your copy; changing a heading, a color or a template label never changes Shopify pricing.

Discount Badge and collection/product guidance can be hidden correctly when no matching campaign is active. Dynamic campaign values should remain dynamic rather than being hard-coded into theme text. Reset one override at a time when diagnosing a mismatch. Do not add a visible block merely to enable hidden Gift Auto-Add.

Quantity Tiers needs a relevant quantity campaign. Cart Progress needs a compatible active cart-value campaign. A block can correctly be absent when no campaign matches. A progress message must not promise a gift to customers excluded by country, tags or discount combinations.

See the real Quantity Tiers and Cart Progress plus gift examples. These use an unpublished demo theme, not a modified customer theme.

Draft Shopify theme editor with Quantity Tiers selected, its text and color controls and the Cobalt product preview
Select the block in the intended template. This is the unpublished demo's existing Quantity Tiers block; settings were viewed, not saved. Open the image at full size to inspect the controls.
Cart Progress below the fifty dollar threshold with one Coral notebook costing twenty four dollars
Below threshold: $24 of qualifying merchandise. Compare this with the $72 unlocked state above. The temporary gift campaign was removed after capture; the retained quantity-only demo does not show this progress bar.

10. Save, Schedule and Activate Deliberately

Save as inactive draft stores the setup without making it eligible. Activate when saved enables it subject to its schedule and all other conditions. Saved does not necessarily mean active.

  1. Review every summary group and use Change for corrections.
  2. Check start/end dates in the displayed shop timezone, which may differ from your browser.
  3. Review combinations, quantity caps, sorting, cart minimums, maximum discounts, usage limits, presentation and audience.
  4. Use Preview to inspect presentation, not to certify Shopify pricing.
  5. Save inactive, reopen to verify persistence, then activate for the intended test or launch window.

The campaign list uses the shop timezone too. A scheduled or expired campaign does not apply merely because enabled is on. When duplicating, recheck the selections, name, code, schedule and status; do not assume a duplicate is automatically a safe draft.

Advanced Settings Reference

ControlWhat it changesDo not confuse it with
Maximum discounted quantity per productDiscounted units per cart line; 0 = unlimited.A purchase limit or cart-wide number of discounted products.
Sort OrderHigh-to-Low or Low-to-High unit-price ranking, or Cart Order.Extended line totals or storefront row placement.
Apply minimum cart conditionAn extra spend condition on top of the main trigger; has its own currency overrides.The reward tier's independent minimum.
Limit discount amountAn upper bound on the configured discount benefit.A maximum cart value or a quantity cap.
Usage limitAvailable for code execution; limits uses of that discount code.An automatic-campaign stock limit or a guarantee of one use per customer.
Customer-facing presentationOffer title where supported and discount-code messaging.A change to the real product title, SKU or entitlement.

Messages and Preview

In Rewards, open Custom Discount Message. The common template can be replaced by per-tier messages. Use the visible variable buttons: {tier} for the tier label, {per} for percentage followed by %, and {perd} for % followed by percentage. Check a real applied discount label after editing, especially with a fixed amount. An empty custom message uses the app's fallback text.

Preview helps review presentation and supported example calculations; it is not a substitute for Shopify cart/checkout or a live market test. Correct a summary with Change, then return to Review & launch before saving.

Live edits affect shoppers. Test a fresh cart and one opened before a gift or threshold change. Prefer a separate inactive test campaign where appropriate.

11. Combinations and Discount Codes

Watch tutorial: Combinations, schedules and limits (1:58, English)

Video unavailable. Follow the illustrated steps below.

In Review & launch, open Combination Settings. Product, order and shipping discounts are separate categories. Shopify also checks compatibility on the other discount; enabling a category in MTD does not make every unrelated code combinable.

  1. Test the campaign alone first.
  2. Apply eligible product and order codes separately; check paid items, gifts and totals.
  3. Test a shipping code after delivery rates are available.
  4. Remove codes and confirm the original result returns.
  5. Test an incompatible code for unexpected paid gifts or duplicate additions.

Automatic offers need no code. Code campaigns need the correct valid code. Settings > Gift offer automation controls whether eligible gift codes may be auto-applied. It does not replace campaign auto-add or the theme embed. A discount conflict can block or clean up an auto-added gift. Checkout mystery supports either no combinations or all three categories, not every partial mix.

Review and launch with separate product, order and shipping combination checkboxes, sorting and optional limits
These independent categories remain visible in Advanced settings. The photographed demo values were inspected, not changed or saved.

Create a Code-Based Offer

  1. In Offer, select Discount Code and enter the intended code.
  2. Keep the same qualifying conditions and rewards you would test for an automatic offer.
  3. In Review & launch, set a usage limit if needed and review both sides of each combination.
  4. Save inactive first; when testing an active offer, enter the exact code in checkout and confirm it is accepted, not just typed into the field.
  5. Test removal and reapplication. Never infer that a 100% test code behaves like a normal percentage code.

12. Audience and Country Targeting

Watch tutorial: Product and audience targeting (2:02, English)

Video unavailable. Follow the illustrated steps below.

Open Audience Targeting in Review & launch. Product tags describe products; customer tags restrict the audience. Cart currency does not prove the shopper's country or tag membership.

  • Customer tags: test matching, non-matching and signed-out customers. Storefront tagged-customer gift auto-add needs the signed-in tag context.
  • Countries: check Include versus Exclude. Excluding US and Canada is not the same as including only a short list of European countries.
  • Currencies: enter each advertised threshold explicitly even where several countries qualify.
  • Checkout delivery: test the final country; it may differ from the initial storefront market.

Test an allowed country, an excluded country and every advertised currency. Also test after a market switch. Total stock across all warehouses does not guarantee that a gift is sellable to that customer. Match public widget copy to the restrictions rather than disabling stock or checkout safeguards to hide a mismatch.

Expanded Audience Targeting with customer tags, country include and exclude modes and the country selector
Empty targeting applies to everyone. Tags and countries narrow that scope; a currency override does not select a country. This unsaved example changes no existing audience.

13. Theme Integration Without Guesswork

Start with defaults. Open Settings > Theme integration > Advanced cart integration only when a custom drawer or cart page needs help. Per-theme embed values override global app settings.

Enabled Gift Auto-Add app embed with cart integration fields in the unpublished demo theme editor
The hidden embed is enabled in this exact draft theme. Its empty selector overrides and Use app setting refresh mode inherit global defaults; no setting was changed for this capture.
Expanded Advanced cart integration with container, line and section fields
Grey example selectors are guidance, not confirmation that they match every theme.
  1. Open the exact theme preview and add a test product.
  2. Inspect the cart wrapper using browser developer tools. Choose a stable ID, custom element or data attribute.
  3. Identify the repeating cart-item row separately.
  4. Enter one verified selector per line. Examples include cart-drawer, #CartDrawer, .cart-item and [data-cart-item].
  5. For shopify-section-cart-drawer, enter only cart-drawer as the section ID.
  6. Change one setting at a time, save and repeat the whole cart cycle.
ModeWhen to use it
Use app settingThe embed inherits the global mode.
AutoThe default integration; start here.
Replace sectionsThe theme safely supports replacing configured Shopify cart sections.
Theme events onlyThe theme owns refresh and responds to the cart events.

Avoid generated classes, product titles and animation-only selectors. Test add, remove, add again, remove again and checkout, including exact quantities and variant identities. Do not publish an integration whose checkout action changes quantities.

14. Mystery Gifts and Shopify Plus

Watch tutorial: Mystery Gift (4:13, English)

Video unavailable. Follow the illustrated steps below.

Mystery presentation hides the gift's customer-facing identity on supported surfaces while preserving the original variant, SKU, inventory and fulfillment identity. Do not copy SKUs or substitute a dummy non-physical product.

Pro and Plus support eligible storefront-cart mystery presentation for automatic, auto-added 100% gift offers. Checkout mystery additionally requires Shopify Plus, MTD Plus, granted permissions and a supported configuration. A green permissions badge alone does not make every offer compatible.

  1. Open Gift delivery and Advanced gift settings in Rewards.
  2. Enable Keep the selected gift a mystery and enter a neutral title.
  3. Select the presentation surface. If checkout is locked, review the requirements rather than repeatedly saving.
  4. For checkout, use one cart-value 100% rule, exact gift variants, fixed quantity 1, no extra customer-tag/minimum/maximum/usage limits, and either no combinations or all three. Country targeting and currency overrides must pass the form's compatibility checks.
  5. Confirm exactly one genuinely free gift and the expected title/image on each selected surface.

MTD verifies current eligibility before masking the marked free line. Older carts, edited campaigns, changed markets and conflicting codes can need cleanup or recovery. Never remove verification simply to silence a checkout error. Staff and fulfillment still receive the real item.

Private technical properties can appear in third-party packing templates. Filter private properties in the template rather than deleting the app's verification data from Shopify.
Mystery Notebook title and surface controls with checkout permission granted but incompatible whole-product selection
This unsaved example selects a whole product, so checkout remains unavailable even though permissions are granted. Select exact gift variants and meet the other requirements before using the checkout surface. No permission or activation was changed.
Verified demo checkout with one free Mystery QA Notebook, one free Sun notebook and five Coral notebooks totaling one hundred twenty US dollars
Real Plus demo checkout after the regression fixes: 5 Coral at $120, 1 Sun FREE and 1 Mystery FREE. No order or payment was submitted. Temporary gift campaigns and checkout resources were removed after testing.

This recorded example used the legacy supported claim path on the exact owned Plus demo. It is not evidence that every fast-path rollout, currency, shipping route or payment method was tested. Current instructions preserve the original variant and SKU; the demo's retained quantity offer is separate from these temporary gift tests.

15. Settings and Analytics

Watch tutorial: Analytics and plans (2:05, English)

Video unavailable. Follow the illustrated steps below.

Global Settings

Safety checks require creator confirmation for discounts at or above a configured percentage between 0 and 100. This is an editing safeguard, not the rate charged to customers. An invalid value shows an explanation and prevents saving.

Gift offer automation controls eligible code auto-application. Theme integration holds advanced cart overrides. Interface Language follows Shopify or a selected language. Closing an advanced section preserves its existing custom values when another setting is saved.

Current Settings page with safety checks, gift-code automation, theme integration and language
Technical selectors are not needed for every first campaign.

Read Analytics After Orders Are Processed

Analytics summarizes recorded uses, discount amounts, affected orders and campaign performance. Adding items to cart or opening checkout does not create an order-use record. Orders before app installation are not included.

Real demo analytics with no processed orders and two demonstration campaigns
No data yet is intentional: no test order was submitted. A dash is missing reported data, not estimated revenue.

Campaign-use counts are not conversion attribution or staff session replay. For a disputed order, compare the saved configuration, order timeline, applied discounts and actual lines.

16. Test the Whole Purchase Path

Watch tutorial: Widgets and cart troubleshooting (2:07, English)

Video unavailable. Follow the illustrated steps below.

Write expected quantities, prices, discounts and totals before testing. Start with a fresh cart and one campaign, then add combinations and targeting.

CaseCheck
Below / at / above thresholdThe intended boundary and highest matching tier.
Unselected productNo unrelated discount or misleading widget.
Add, remove, add again, remove againNo duplicates, stale totals, refresh loops or stuck loaders.
Manual gift removalNo immediate forced re-add for the same qualifying cart.
Repeated units / split linesThe trigger and per-line cap match the offer.
Codes / countries / currenciesEvery advertised combination and audience restriction.
CheckoutSame variants and quantities, expected $0 gift, correct totals and no blocking warning.
MobileThe drawer and cart actions still work.
The gift is missing
Check status and dates, the exact theme's embed, campaign auto-add, paid items, currency amounts, country/tags, combinations and stock. Test a fresh cart too: a shopper may have removed the gift manually.
I removed Mystery Gift and started a new purchase
The unchanged qualifying cart stays suppressed after manual removal. A different qualifying paid-cart fingerprint can receive a new gift. Write down which products, quantities, currency and market changed; an empty cart or a page reload alone does not prove a new eligibility state.
The gift is visible but not free
Insertion and discounting are separate. Check the actual final price, target, 100% reward, quantity cap and combinations in cart and checkout. A gift label is not proof of a zero price. Stop the test if an unexpected paid gift remains.
Cart and checkout disagree
Compare variant identities and quantities first, then codes, currency and totals. Some themes submit positional cart updates on checkout. If quantities change, record both states and contact support; do not publish the affected flow.
The widget or drawer is stale
Check the block, template, active/draft theme and matching campaign before changing selectors. Missing presentation does not by itself prove Shopify pricing failed.

Send a Useful Bug Report

Include campaign name, time/timezone, country/currency, product variants, quantities, codes, expected outcome and redacted cart/checkout images. Gift diagnostics can be enabled with ?mtdGiftDebug=1 and disabled with ?mtdGiftDebug=0. Do not share tokens, customer addresses or payment information.

17. Frequently Asked Questions

Does a whole-product selection include future variants?
Yes. Choose exact variant rows when only particular SKUs should qualify. Reopen the picker and read the returned summary to distinguish the levels.
Can gifts run without a visible widget?
Yes. Gift Auto-Add is hidden. The campaign and embed handle insertion; visible widgets explain the offer. The exact storefront theme still needs its embed enabled.
Does a free product also mean free shipping?
No. Configure the separate shipping reward, then verify delivery rates and combinations. Free shipping and free merchandise are independent benefits.
Why did a gift disappear after a cart change?
The threshold, market, stock, priority or discount state may no longer qualify. Manual removal can suppress the same gift for an unchanged cart. Reproduce the exact state before changing the campaign.
Does MTD choose the fulfillment warehouse?
No. The original variant stays on the line. Shopify's inventory, location eligibility, shipping profiles and order-routing settings decide fulfillment.
Is Preview enough to approve an offer?
No. Preview checks presentation. Real cart and checkout boundary, removal, code and market tests are separate.
Can a non-Plus Shopify store use checkout mystery?
Not this checkout feature. Shopify Plus and MTD Plus are both required. Storefront-only mystery presentation is a different option with its own requirements.
Why does a packing slip contain long technical text?
Some templates print private line properties. Ask the template provider to filter them from the printed document without deleting the verification data or changing the SKU.

Return to your first offer, gift setup or the test checklist.

Quick Glossary

Trigger
The purchase condition that qualifies an offer.
Target
The item or benefit receiving a reward.
Tier
One position, quantity or spend rule; its meaning depends on the selected trigger.
Variant
The actual Shopify SKU/size/color choice, distinct from its parent product.
Automatic / code
How Shopify applies the offer, not whether the app adds a product.
App block / app embed
A visible theme component / a theme-level runtime such as Gift Auto-Add.
Market / currency
Storefront country context / the cart's money unit; one does not configure the other.
MTD Plus / Shopify Plus
The app subscription / Shopify's platform subscription; checkout mystery needs both.