How to offer a free gift with purchase on Shopify

Updated · SMART Bundles App & Upsells (E-TRADE PARTNER)

Shopify's built-in Buy X get Y discount can make a gift free once the cart reaches a quantity or a spend, but Shopify never adds the gift to the cart: the customer has to add it. SMART Bundles App & Upsells' Free gift adds the gift product to the cart by itself when the cart reaches a tier, or while a code is on the cart, and removes it when the cart stops qualifying.

SMART Bundles App & Upsells is a free Shopify app for bundles, quantity breaks, free gifts and upsells.

Try it free
On this page
  1. The built-in way: a Buy X get Y discount
  2. How SMART Bundles adds the gift: Free gift
  3. What shoppers see
  4. Where Free gift can't add the gift
  5. Gifts inside a bundle
  6. Which gift option to use
  7. Frequently asked questions
Bundle widget whose top tier is selected and shows a + FREE GIFT band with the gift product
Bundle with a free gift: the top tier adds a gift to the cart.

The built-in way: a Buy X get Y discount

  1. In Shopify admin, create a Buy X get Y discount, automatic or with a code.
  2. Under Customer buys, choose a minimum quantity of items or a minimum purchase amount, and the products or collections that count.
  3. Under Customer gets, add the gift product, a quantity, and set the discount to Free.
  4. Optionally set a maximum number of uses per order. Usage is unlimited by default.

All of this is on Shopify's Buy X get Y help page. For spend thresholds, the same page says the minimum counts product prices only, never shipping or taxes, at full price before other discounts. An item that another combinable product discount already discounted doesn't count toward the minimum at all.

Where the built-in way falls short

  • The gift is never added automatically. Customers must add every item, the gift included. A customer who doesn't know about the gift doesn't get it. See Buy X get Y: why the free item isn't added.
  • One step per discount. A ladder (gift A over $50, gift B over $100) needs one discount per step.
  • POS: automatic discounts apply only at locations with a POS Pro subscription (Buy X get Y).
  • Subscriptions: the "get" item must be a one-time purchase (Subscription discounts). Shopify's developer docs say pre-orders don't support Buy X get Y discounts (Pre-orders and TBYB).
  • Old gift scripts don't help. Shopify Scripts were deprecated on June 30, 2026, and even Shopify's own gift script example didn't add the gift to the cart (line item script examples). See Tiered discounts after Shopify Scripts.

Some guides still say Shopify runs only one automatic discount at a time, so a gift can't run next to a sale. Shopify allows up to 25 active automatic discounts, app discounts included (Automatic discounts), and whether two discounts apply together depends on their combination settings.

How SMART Bundles adds the gift: Free gift

In the app (it appears as SMART Discounts in your Shopify admin), Create new discount > Free gifts > Free gift. The editor has these cards:

CardWhat you set
TriggerCart value or Items in cart, with an optional Maximum cart value or Maximum items (no gift above it, for every tier)
Counts toward the tierAll products or Specific products, with Require all of these products if the gift needs each of them in the cart
Gift tiersUp to 5 tiers with Add tier (code discounts: 1). Each tier: a minimum, one gift product and variant, Free quantity (1 to 10), Gift price (Free, Percentage off or Fixed price) and a Checkout label (default "Free gift")
Higher tier replaces lowerOn by default: only the highest reached tier's gift is in the cart. Untick it to add every reached tier's gift
EligibilityCustomer tags (with any of, or without), New customers only (guests count as new), Markets
Combinations, Active datesWhich other discount classes it combines with, and the start and end

Steps

  1. Turn on the app embed: theme editor > App embeds > Deal widget from SMART Discounts > Save. The gift is added only while the embed is on, and the app checks this when you start a Free gift. See Turn on the app embed.
  2. Open Create new discount and pick Free gift.
  3. Enter a Discount name (only you see it) and choose the Application method: Automatic or Code.
  4. Set the Trigger and Counts toward the tier.
  5. Add your tiers and pick each gift's variant. A gift product must be active on the Online Store sales channel; the editor warns you if it isn't.
  6. Set eligibility, combinations and dates, then click Create. It goes live on its start date (now, by default).
  7. Test in a new browser tab: add products until the tier is reached and watch the gift appear, then remove items and watch it go.

Full walkthrough: Set up a free gift. Tier rules: Free gift tiers. Code gifts: Free gift with a discount code.

What shoppers see

  • The gift arrives as its own cart line at the tier's Free quantity, on any page of the store. The cart and drawer refresh without the drawer popping open.
  • At checkout the gift carries its checkout label. Keep the gift product's real price in Shopify: the app's discount makes it free only while it's earned.
  • A raised gift quantity is set back. Extra units added the normal way are charged.
  • If the shopper deletes the gift, it isn't added again in that tab while the tier stays reached.
  • When the cart drops below the tier, the gift is removed. The checkout button waits a moment for a running update.
  • For a code gift, the gift is added only while the code is on the cart: through the cart's discount field, if your theme has one, or a /discount/CODE link.

Where Free gift can't add the gift

  • Buy it now, express buttons on the product page and cart links that open checkout directly. They skip the cart.
  • A code typed only at checkout. The storefront can't add lines there.
  • Shopify POS. Free gift never applies in POS.
  • Headless or Hydrogen storefronts, and apps that change the cart outside your theme. Checkouts that replace Shopify's own checkout don't run the app's discounts.
  • Not built: a choice between several gift products, a "spend $X more" message, and collections as the counted products.

If a gift doesn't show up, work through Free gift not added to cart.

Gifts inside a bundle

The product page bundle widget has two more gift options, added by the widget when the shopper picks an offer:

  • A gift on an offer: in an offer, click Add gift and pick the product. The offer card shows "+ FREE GIFT 🎁" (editable). The Bundle with a free gift template starts with a gift on a tier.
  • Progressive gifts (Extras tab): a gift ladder. Each gift is a product or Free shipping, unlocked at Offer #N and higher, Offer #N only or Spend at least.... Show progress prints "Add {{n}} more" or "Spend {{amount}} more". Spend counts the bundle's target products at prices before discounts. See Progressive gifts.
  • A bundle gift is removed when its bundle leaves the cart.

Which gift option to use

Shopify Buy X get YSMART Free giftSMART bundle gifts
Adds the gift to the cartNo, the customer adds itYes, on any store pageYes, through the product page widget
TriggerMinimum quantity or purchase amountCart value or items, up to 5 tiers, or a codeAn offer, or a spend step
Discount codeYesYes (one tier)No, automatic only
Shopper picks the giftYes, from the products in Customer getsNo, one variant per tierNo, one product per gift
POSAutomatic: POS Pro locations onlyNeverNot added at POS

Put the gift in the cart for them

Install SMART Bundles App & Upsells, create a Free gift and set your tiers. Free gifts and every other feature are free.

Install free on Shopify

Frequently asked questions

›Can customers choose their free gift?

Not in Free gift: each tier adds one fixed variant. To let customers choose, use a Buy X get Y discount with all the gift options under Customer gets. Customers then add the one they want themselves.

›Why was the free gift charged at checkout?

Usually the cart stopped qualifying in a way the store page couldn't catch: quantities posted straight to checkout, an express button clicked before the cart updated, an app that changed the cart outside the theme, or a customer who signed in at checkout and failed New customers only or a tag rule.

›Does the gift line count toward my other discounts?

It can count toward other discounts' tiers (not bundles). Exclude the gift there, for example in Order goal's Products excluded from discount.

Related articles