How to set up a Buy X Get Y (BOGO) offer
A Buy X Get Y (BOGO) offer rewards shoppers with free units when they reach a quantity you set, for example "Buy 2, Get 1 free." In Bundlex Bundles you build it as one offer inside a bundle deal, then the app applies the free-unit discount at checkout. This guide demonstrates one-time purchases without a selling plan.
Before you start
A BOGO offer lives inside a bundle deal, the same place you set up quantity tiers. Open an existing deal or create one with Start from scratch. Under Show widget on, select the products that should show the offer. Keep the full-price Single option if shoppers should also be able to buy one item.
Targeting several products does not combine them into one qualifying pool. In this example, face creams qualify separately from cosmetic bags. To sell different products together as one set, use a product bundle.
Set up the offer
- In the Offers tab, click Buy X, get Y.
- Three quantity fields appear: Buy, Get, and Total.
- Set the Buy quantity, the number of units the shopper pays for to qualify.
- Set the Get quantity, the number of free units they receive.
- Total fills in automatically and is read-only. It is simply Buy plus Get, the number of units that must be in the cart for the offer to apply.
For a classic "Buy 2, Get 1 free," set Buy to 2 and Get to 1, and Total shows 3. For "Buy 1, Get 1 free," set both to 1 and Total shows 2.
How the free units are chosen
For the one-time purchases demonstrated here, Bundlex Bundles makes the cheapest qualifying units in the group free. When the cart qualifies, the app sorts the matching units from cheapest to most expensive and applies a 100% discount to the free ones. If your variants are priced differently, the lowest-priced units are the ones that come off. Do not assume that the last variant picker row is always the free item.
The offer repeats as the quantity grows. With "Buy 2, Get 1 free" (Total 3), a cart of 3 gets 1 free unit, a cart of 6 gets 2 free units, and so on. Quantities between full sets do not unlock an extra free unit until the next Total is reached, so 4 or 5 units still give 1 free unit, and the 6th unlocks the second.
For example, an Ivory Small cosmetic bag costs $24 USD, while Ivory Large and Blush Large cost $30 each. Their normal total is $84. With Buy 2, Get 1, the $24 Small bag is free, so the three bags cost $60 before shipping.
Write the offer text
You can reference the quantities in your offer title, label, subtitle, and badge so the copy always matches the numbers you set. Two template variables are made for BOGO:
{{buy_quantity}}resolves to your Buy quantity (Total minus Get).{{get_quantity}}resolves to your Get quantity.
For example, an offer title of Buy {{buy_quantity}}, get {{get_quantity}} free reads as "Buy 2, get 1 free" once the variables are filled in, and it carries through to the checkout label. Using the variables instead of typing the numbers means the text updates automatically if you change the quantities later. Update any manually typed numbers in your subtitle or badge as well.
Variant choices and quantity selector
For products with colors or sizes, enable Variant selector in Add-ons. Shoppers can choose each unit separately. Confirm that every selected variant is available for sale.
The Bundlex Bundles Quantity selector is unavailable when the discount contains a BOGO offer. Use the offer's fixed Buy and Get quantities, then test quantity changes in your theme's cart.
Publish and test
Save the deal, activate it, then open an eligible product on the actual storefront. Select the BOGO offer and use Add to cart. Verify product quantities, selected variants and the discount in checkout. The editor preview alone does not verify the theme or checkout.
In our USD example, three face creams at $28 each cost $56: two paid units and one free unit. Shipping is calculated separately.
Changing quantities in the cart
BOGO-tagged items are kept separate from ordinary volume-tier groups when cart quantities are combined. This does not lock the offer against every later quantity change.
If the quantity falls below the selected offer's threshold, another eligible tier can apply. At a higher quantity, Bundlex Bundles can use a qualifying tier with better main-product savings. Test quantity changes if you mix BOGO and quantity breaks in one discount.
With only Single and Buy 2, Get 1 in this demo, four creams cost $84, five cost $112, and six also cost $112 because the second free unit unlocks. Two creams are below the threshold and cost $56 at full price.
How it appears at checkout (attribution)
For attribution, Shopify attaches the discount allocation to the free unit. That is the line that receives the 100%-off amount, so when you review an order the BOGO saving shows up against the free unit rather than spread across the items the customer paid for. This is expected and does not change what the customer pays.
Tip: the checkout label that shoppers see comes from your offer title, with any
{{buy_quantity}}and{{get_quantity}}variables resolved. If you fill in All lines under Customize cart & checkout labels in the Advanced tab, that label overrides the per-offer title for every line in the discount.
Important limits and related offers
Limit discount to offer quantity does not cap BOGO to one application. BOGO rewards continue to scale with complete qualifying groups.
To include a different gift product, such as a lip balm earned by buying cream, use a free gift attached to an offer. That setup differs from making some units of the qualifying product free.
Selling-plan purchases have additional rules for paid and free units. The examples here are one-time purchases; test subscription configurations separately. Very large carts above 50 lines are outside the cart Function's supported limit.
Quick checklist
- The offer was created with Buy X, get Y.
- Buy and Get are filled in, and Total computed the value you expected.
- Offer text uses
{{buy_quantity}}and{{get_quantity}}so the copy matches the numbers. - The bundle is published and applies to the product the shopper is viewing.
- The exact threshold, one extra unit, a second complete group and a below-threshold cart have been checked.
- The selected variants, cheapest free unit and final checkout subtotal match your intended offer.
Was this article helpful?
Your feedback helps us improve our docs.