---
title: "Why Shopify's Buy X get Y doesn't add the free item to the cart"
description: "Shopify's Buy X get Y never adds the free item to the cart. Why, what customers must do, and how to add a gift automatically with SMART Bundles."
url: "https://smart-bundles.io/guides/buy-x-get-y-free-item-not-added"
updated: "2026-11-02"
product: "SMART Bundles App & Upsells"
section: "Guides"
---


# Why Shopify's Buy X get Y doesn't add the free item to the cart

That's how Shopify built it: a Buy X get Y discount only prices items already in the cart, and Shopify says the free or discounted "get" item is never added automatically, so customers add it themselves. To put a gift in the cart for them, you need an app that adds the line. In SMART Bundles that's the **Free gift** type or a gift on a bundle offer; the app's own **Buy X get Y** type works like Shopify's and doesn't add it.

## What Shopify's Buy X get Y does

- **Customer buys:** a minimum quantity of items or a minimum purchase amount, from products or collections you pick.
- **Customer gets:** a quantity of items at a **Percentage**, an **Amount off each**, or **Free**.
- **Customers add every item themselves**, the "buy" items and the "get" items. With a code they then enter it at checkout; an automatic discount applies once everything is in the cart ([Buy X get Y discounts](https://help.shopify.com/en/manual/discounts/discount-types/buy-x-get-y)).
- When the same product or collection is on both sides, the lower-priced item the customer chooses is the one that gets the discount.
- Items count toward a minimum purchase amount at full price, before other discounts; shipping and taxes never count.
- Outside Shopify Plus, items in a Buy X get Y discount can't receive another product discount ([Combining discounts](https://help.shopify.com/en/manual/discounts/discount-combinations)).

## Why the item isn't added

A Shopify discount, built-in or from an app, changes the price of lines that are in the cart. Shopify's discount Functions apply discounts to cart lines, the order subtotal and shipping rates ([Discounts on shopify.dev](https://shopify.dev/docs/apps/build/discounts)), and its automatic discount page says customers must add all eligible items, including the promotional ones ([Automatic discounts](https://help.shopify.com/en/manual/discounts/discount-methods/automatic-discounts)). Adding a product is a separate job: something on the storefront has to put the line in the cart before checkout.

So if a customer reads "Buy 1, get 1 free" and adds one item, they see no discount. The discount isn't broken; the second item is missing.

## Your options

| Option | Adds the item? | Good to know |
| --- | --- | --- |
| Shopify Buy X get Y, automatic | No | Tell shoppers to add the free item, on the product page and in the cart |
| Shopify Buy X get Y, code | No | Customers add the items, then enter the code at checkout |
| An app that adds a gift line | Yes | Works in your Online Store theme, before checkout |
| A bundle offer that adds the whole set | Yes | The shopper picks the offer on the product page; one click adds every unit |

## How SMART Bundles handles gifts

| SMART Bundles feature | Adds the item? | Trigger | Where |
| --- | --- | --- | --- |
| **Free gift** type | Yes, by itself | Cart value or items in the cart, or while its code is on the cart | Every page of the store |
| Gift on a bundle offer (**Add gift** on an offer) | Yes | While that offer applies to the cart | Product page widget |
| **Progressive gifts** (bundle **Extras** tab) | Yes, as each step unlocks | **Offer #N and higher**, **Offer #N only** or **Spend at least...** | Product page widget |
| Bundle **Buy X, get Y** offer | Adds the buy and get units in one click | The shopper picks the offer card | Product page widget, same product |
| **Buy X get Y** discount type | No | **Customer buys** / **Customer gets** | Cart and checkout only |

The app's **Buy X get Y** editor says it plainly: "Customers add the Y items to the cart themselves. To add a gift for them automatically, use Free gift." It only discounts Y items that are already in the cart, up to the **Free quantity**.

### Set up a Free gift that adds itself

1. In Shopify admin, open **SMART Discounts** and click **Create new discount**. Under **Free gifts**, pick **Free gift**. The app checks that its app embed is on first.
2. In the **Discount name** card, choose the **Application method**: **Automatic** or **Code**. You can't change it after the discount is created.
3. **Trigger:** **Cart value** or **Items in cart**, with an optional **Maximum cart value** or **Maximum items**.
4. **Counts toward the tier:** **All products** or **Specific products**, optionally with **Require all of these products**.
5. **Gift tiers:** pick the **Gift product** and variant, the **Free quantity** (1 to 10) and the **Gift price**: **Free**, **Percentage off** or **Fixed price**. Add up to 5 tiers (a code discount has one). **Higher tier replaces lower** is on by default.
6. **Eligibility:** customer tags, **New customers only** (guests count as new) and **Markets**. Then **Combinations** and **Active dates**.
7. Click **Create**; it goes live on its start date (now, by default). Make sure the SMART Discounts app embed, listed as **Deal widget** under **App embeds**, is on in your published theme.

### What happens in the store

- The gift line is added on any page once the cart qualifies, and removed when it stops qualifying.
- A gift the shopper removed isn't added again while the tier stays reached.
- The discount makes the line free only while it's earned. A gift added by hand to a cart that doesn't qualify keeps its full price.
- The theme's cart drawer refreshes without popping open.
- With a code, the gift is added while the code is on the cart: entered in the cart or through a /discount/CODE link.

### Where an auto-added gift can't work

- **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 there.
- Headless or Hydrogen storefronts, and checkouts that replace Shopify's.
- A gift product that's Draft, Archived, or not on the Online Store sales channel. The editor warns you about this.

If the gift still doesn't appear, work through [Free gift not added to the cart](https://smart-bundles.io/help/free-gifts/free-gift-not-added-to-cart).

### When the Buy X get Y type is still the right pick

Free gift gives one gift variant per tier and counts specific products, not collections. The **Buy X get Y** type covers what it doesn't: a choice between several "get" products, collections or variants as the "buy" side, customer segments, and several tiers on a code. The customer adds the item they want, and checkout discounts it. See [Buy X get Y discounts](https://smart-bundles.io/help/cart-discounts/buy-x-get-y-discounts).

For BOGO on the same product, read [How to run BOGO and "buy 2 get 1 free" on Shopify](https://smart-bundles.io/guides/bogo-on-shopify). For spend-based gift tiers, read [Free gift with purchase on Shopify](https://smart-bundles.io/guides/free-gift-with-purchase-on-shopify).

**Gifts that add themselves to the cart** Install SMART Bundles App & Upsells and create a Free gift: pick a tier and a gift product, and the app adds it when the cart qualifies. The app is free. [Install SMART Bundles App & Upsells on the Shopify App Store](https://apps.shopify.com/smart-automatic-discounts).

## Frequently asked questions

### Can customers choose their free gift?

Not with Free gift: each tier gives one gift variant. Use the Buy X get Y type with several products under Customer gets; the customer adds the one they want and checkout discounts it.

### Is the gift removed if the cart drops below the tier?

Yes. The app removes the gift line when the cart stops qualifying, on any store page.

### Does the free gift work with Buy it now?

No. Buy it now goes straight to checkout and skips the cart, so the gift is never added.
