Blog

Stacking Buy-More-Save-More With Other Shopify Discounts

Shopify discount stack: a buy-more-save-more quantity break combined with a discount code and free shipping

Short answer: Yes, a buy-more-save-more tier can stack with other Shopify discounts, but only across discount classes. Shopify files every discount as a product, order or shipping discount, and two discounts combine only when each one has the other's class ticked under Combinations. A quantity break is a product discount, so it can sit alongside an order-level code and a free-shipping discount on the same checkout. When two discounts are not allowed to combine, Shopify keeps whichever saves the customer more and drops the other.

Key Facts (Verified September 2026)

  • Shopify sorts discounts into three classes: product, order and shipping. Per Shopify's combining-discounts guide, "multiple discounts are applied to an order only when the setting on each discount allows the combination."
  • Customers can use up to 5 product or order discount codes plus 1 shipping discount code on one order. Two shipping discounts never combine, and two product discounts on the same item combine only on Shopify Plus (source).
  • When discounts cannot combine, "the best discount for the customer's cart is always applied." Shopify picks the winner; the customer does not choose (source).
  • Discounts apply in a fixed order: product discounts first, order discounts on the revised subtotal, shipping last. So a 15% tier plus a 10% order code is 23.5% off, not 25%. Two percentage order discounts are both calculated on the original subtotal (source).
  • A store can run a maximum of 25 active automatic discounts, and that total includes app-based discounts (source).

What "stacking" means inside Shopify

Every discount, whether a code, an automatic discount or one created by an app, belongs to one of three classes, and the class decides what it can share a checkout with.

ClassWhat it changesNative discount types in this classWhere buy-more-save-more lands
ProductIndividual line-item pricesAmount off products, Buy X get YHere. A quantity break is "Amount off products" with a "Minimum quantity of items" requirement
OrderThe cart subtotal after product discountsAmount off orderWelcome codes, sitewide sale codes, spend-threshold discounts
ShippingThe shipping rate onlyFree shippingFree shipping over a threshold, flat shipping credits

"Can I stack a quantity break with a coupon?" is really "can a product discount combine with an order discount?", and Shopify answers that with a checkbox. If quantity breaks themselves are new to you, start with the ultimate guide to quantity breaks.

The Shopify discount combination matrix

This is Shopify's combinations table rewritten around a quantity break. Every "Yes" assumes both discounts have the other's class ticked under Combinations; otherwise the pair falls back to best-value-wins.

CombinationAllowed?What it looks like with buy-more-save-more
Product + OrderYes15% off at 3 units, then a 10% WELCOME code on the reduced subtotal
Product + ShippingYes15% off at 3 units plus free shipping over $50
Order + ShippingYes10% WELCOME code plus free shipping
Product + Product, different itemsYes15% off at 3 mugs and 20% off any hoodie in the same cart
Product + Product, same itemShopify Plus onlyA loyalty product discount and a quantity break on the same SKU. Non-Plus stores get the better of the two
Order + OrderYesA 10% code and a 5% code, both calculated on the original subtotal rather than one on top of the other
Shipping + ShippingNeverFree shipping plus $5 off shipping. Shopify applies the better one

The "only one automatic discount" rule is stale

Older guides, and some app support docs, still say Shopify allows one automatic discount per order and that automatic discounts cannot combine with codes. That stopped being true when Shopify shipped discount combinations, announced in its Winter '23 Editions release as the ability to combine multiple discounts on a single order.

Today the rules are the matrix above, and the cap that matters is different: up to 25 active automatic discounts per store, including app-created ones. A three-tier ladder built as three automatic "Amount off products" discounts uses three slots, and once you hit the ceiling a new tier simply cannot be activated.

The other stale claim is "customers can only enter one discount code." The current limit is 5 product or order codes plus 1 shipping code per order, so use the Combinations checkboxes, not the one-code assumption, to keep codes apart.

What happens when a code and an automatic discount conflict

Say your quantity break is an automatic 15% product discount that does not allow order discounts, and a shopper types a 10% order code. Shopify does not error or ask the shopper to pick. Its rule is one sentence: "the best discount for the customer's cart is always applied." The discount that saves more on that cart wins; the other is dropped.

Two consequences follow:

  • The winner changes with the cart. On a $60 basket, 15% ($9.00) beats 10% ($6.00), so the tier stays; in a cart that misses the tier, the code wins. That is also why "my code isn't working" is usually a combination setting, not a bug.
  • Best-value-wins is a safety net, not a strategy. It only governs pairs that cannot combine; tick the boxes and both apply in full.

Exceptions, per Shopify's docs: custom discounts applied manually on draft orders and POS, and legacy Shopify Scripts discounts on Plus, always apply regardless of combination settings.

How each discount type behaves inside a stack

Four discount types do most of the work in a buy-more-save-more stack. Here is the class each one lands in and the rule that decides what it can sit next to.

Discount typeClassCombines withWhat to watch
Amount off products with "Minimum quantity of items" (the native quantity break)ProductOrder, shipping, and product discounts on other itemsTiers on one collection are "same item" product discounts, so on non-Plus stores only one tier applies, which is what you want. See the tiered pricing setup guide
Buy X get YProductOrder and shipping discountsOn non-Plus stores every product in a Buy X get Y is ineligible for further product discounts, so "buy 2 get 1 free" and "15% off at 3+" on one collection never both apply. Run BOGO and the ladder on different collections (BOGO apps roundup)
Free shipping with "Minimum purchase amount"ShippingProduct and order discounts, never another shipping discountTick "Exclude shipping rates over a certain amount" so express is not silently free. Your cost is one carrier rate per parcel, which does not grow with a fourth unit (free shipping bar guide)
Shopify Functions / app discountsWhichever classes the app declares, possibly more than oneWhatever the app's own combination settings allowNot a fourth class; checkout resolves conflicts the same way. App automatic discounts count toward the 25 cap, and if an app discount refuses to stack with your code, the fix is in the app's settings

Safe stacks vs dangerous stacks

"Safe" means the second discount has a bounded cost that does not scale with the first. "Dangerous" means two percentages compound.

StackClassesVerdictWhy
Quantity break + free shipping over a thresholdProduct + ShippingSafeShipping is a flat cost per parcel; the tier grows units, not the shipping bill
Quantity break + free gift with purchaseProduct + Product (different item)SafeThe gift costs you its landed cost once, however much the shopper buys
Quantity break + fixed-amount order code ($5 off over $50)Product + OrderUsually safeFixed dollars shrink as a share of larger baskets; cap it with a minimum purchase amount
Quantity break + percentage order code (10% off)Product + OrderDangerousCompounds on the reduced subtotal; the worked example below shows a 23.5% total giveaway
Quantity break + sitewide sale on the same itemsProduct + Product (same item)Blocked on non-Plus, dangerous on PlusNon-Plus stores get best-value-wins; Plus stores can combine both and lose the whole margin
Quantity break + Buy X get Y on the same itemsProduct + Product (same item)BlockedBuy X get Y items are ineligible for further product discounts unless you are on Plus
Two percentage order codes (10% + 5%)Order + OrderDangerousBoth apply in full on the original subtotal; 15% off on top of any tier
Quantity break + affiliate or influencer codeProduct + OrderDangerousYou pay the discount and the commission on a basket the tier already discounted

The margin math, line by line

Take a $60 basket: three units at $20, a 55% gross margin, a 15% tier at 3 units, a 10% welcome code, and free shipping over $50 with a $7.00 carrier rate you absorb. Every combination box is ticked. Here is what Shopify does, in the order it does it.

LineCalculationAmount
Subtotal3 × $20.00$60.00
Cost of goods45% of $60.00$27.00
Gross profit at full price$60.00 − $27.00$33.00 (55.0%)
Product discount: 15% tier15% × $60.00−$9.00 → $51.00
Order discount: 10% code10% × $51.00 (the revised subtotal, not $60)−$5.10 → $45.90
Total discount$14.10 ÷ $60.0023.5% (not 25%)
Gross profit after discounts$45.90 − $27.00$18.90 (41.2%)
Shipping discount: free shippingCarrier rate you now pay−$7.00 → $11.90 (25.9%)
Card processing (assume $1.65)Illustrative 2.9% + 30¢ on $45.90−$1.65 → $10.25 (22.3%)

Read the last line against the first: a single unit sold at full price, with the shopper paying shipping, earns $11.00 of gross profit before fees. The fully stacked three-unit order earns $11.90 before fees and $10.25 after. You shipped three times the stock for less money, and the shopper has learned that codes work on top of tiers.

Now untick one box. If the 15% tier does not allow order discounts, the code and the tier cannot combine, and Shopify applies the better one: 15% ($9.00) beats 10% ($6.00), so the subtotal is $51.00, gross profit $24.00, minus $7.00 shipping and about $1.80 in fees leaves $15.20 (29.8%). Same shopper, same basket, nearly 50% more profit, and the only thing that changed was a checkbox.

The general rule: a percentage order code compounds on what the tier left behind, so budget (tier %) + (code %) − (tier % × code %); at 15% and 10% that is 23.5%. For tier percentages that survive this, see quantity breaks vs regular discounts.

How to set up safe stacking in Shopify admin

These paths are taken from Shopify's discount type guides for amount off and free shipping discounts. The goal is a tier that combines with shipping and nothing else, a code that cannot reach the tier, and free shipping that combines with both.

Step 1: build the tier as an automatic product discount

  1. Shopify admin → DiscountsCreate discountAmount off products.
  2. Under Method, choose Automatic discount and title it "Buy 3, save 15%" (shoppers see the title at checkout).
  3. Set Value to a percentage of 15, and under Applies to pick the specific collections the ladder covers.
  4. Under Minimum purchase requirements, choose Minimum quantity of items and enter 3.
  5. Under Combinations, tick Shipping discounts only. Leave Product discounts and Order discounts unticked.
  6. Set Active dates and click Save. Repeat for the 5-unit and 10-unit tiers; each is a separate automatic discount and uses one of your 25 active slots.

Step 2: make the welcome code an order discount that cannot reach the tier

  1. DiscountsCreate discountAmount off orderMethod: Discount code, enter the code.
  2. Set the value (10%) and, under Minimum purchase requirements, a Minimum purchase amount if you want to keep it off tiny carts.
  3. Under Combinations, tick Shipping discounts and leave Product discounts unticked; because both discounts must allow a combination, this side blocks the stack even if step 1 is wrong.
  4. Set Eligibility, usage limits, and Save.

Step 3: add free shipping that combines with both

  1. DiscountsCreate discountFree shippingAutomatic discount.
  2. Under Minimum purchase requirements, choose Minimum purchase amount and set it just above the 3-unit tier value, so the tier and the threshold pull in the same direction.
  3. Tick Exclude shipping rates over a certain amount and enter your standard rate, so express shipping stays paid.
  4. Under Combinations, tick both Product discounts and Order discounts, then Save.

Step 4: audit and test

On the Discounts page, open every active discount and read its Combinations card; a forgotten "Order discounts" tick on last year's sale is the usual leak. Then place a test order with three tier items and the welcome code and confirm checkout shows one discount line, not two.

Where cart-drawer and discount apps fit

Apps do not get their own rules. Anything an app does that changes a price reaches checkout as a Shopify discount, either an automatic discount it registers or a code it applies for the shopper, and both obey the classes and Combinations settings above.

In Oxify Cart Drawer & Upsell, for example, quantity-break tiers, the free gift and free-shipping progress are shown inside the drawer, and the free gift is applied through a discount code the app adds automatically. That code counts toward the 5-code limit and needs "Product discounts" ticked on your native tier if the two are meant to stack; leave it unticked and best-value-wins decides, so a $9.00 tier beats a $6.00 gift. The free shipping bar is display logic that reads your threshold; the free shipping itself is still the discount from step 3. Our guides to quantity breaks in the drawer, free gift with purchase and the drawer discount-code field cover each piece.

If your logic is genuinely conditional ("15% at 3 units unless a code is present, unless the customer is tagged wholesale"), a Functions-based app such as Regios Automatic Discounts (4.9, 177 reviews, Built for Shopify, from $34.99/mo) builds it as a flowchart; its automatic discounts still count toward the 25 cap. For a straight ladder plus a gift and a shipping bar, a cart drawer is enough; our quantity breaks apps comparison covers both.

Three scenarios: if you do this, Shopify will do that

Scenario 1: automatic tier plus a welcome code, boxes unticked

You create "Buy 3, save 15%" as an automatic product discount with only Shipping ticked, and WELCOME10 as a 10% order code. A shopper adds three $20 items and enters the code. Shopify will find the pair cannot combine and apply the tier, because $9.00 beats $6.00; the code is dropped. With two items ($40) the tier is not met, so Shopify will apply WELCOME10 and take $4.00 off. Tick Order discounts on the tier and Product discounts on the code, and Shopify will apply both: the three-item cart drops to $45.90.

Scenario 2: Buy 2 get 1 free on the same collection as the tier

You add an automatic "Buy 2 get 1 free" on the collection that carries the 15% tier, and you are not on Shopify Plus. A shopper adds three $20 items. Shopify will not stack them, because Buy X get Y items are ineligible for further product discounts; it will apply the free item ($20.00 off) and ignore the tier ($9.00).

Scenario 3: two percentage order codes on one order

WELCOME10 (10%) and SAVE5 (5%) are order codes with Order discounts ticked on each. A shopper with a $50 cart and no tier enters both. Shopify will apply both, each calculated on the original subtotal: $5.00 + $2.50 = $7.50 off, a $42.50 total, not the chained $42.75. The shopper can keep going up to five product or order codes on one order, so leave Order discounts unticked on any code you do not want joining a pile.

Launch checklist

  • Rerun the worked example with your own margin and percentages; if the stacked order earns less than one full-price unit, untick a box.
  • Open every active discount and read its Combinations card, including discounts created by apps.
  • Count active automatic discounts against the 25 cap before adding tiers; app discounts count.
  • Put minimum purchase amounts and usage limits on every percentage code that is allowed to combine with anything.
  • Place a test order for each stack you allow and screenshot the checkout discount lines.
  • Write the rule in one sentence on the product page and in the cart drawer, for example "Volume pricing cannot be combined with discount codes."

Show the stack in the cart, not at checkout. Oxify Cart Drawer & Upsell shows quantity-break tiers, the free gift and free-shipping progress inside the slide-out cart, so shoppers see what they have unlocked before checkout. It is rated 4.9 (37 reviews), carries the Built for Shopify badge, starts at $9.99/mo with every feature on every plan, and has a 14-day free trial. See the listing or read how the free gift with purchase feature applies its discount.

Frequently Asked Questions

Can customers stack discount codes on Shopify?

Yes, within limits: up to 5 product or order discount codes and 1 shipping discount code per order, and a pair only combines if both codes have the other's class ticked under Combinations. Otherwise Shopify applies the code worth more and drops the other.

Can automatic and code discounts combine on Shopify?

Yes. An automatic discount and a discount code combine whenever the class rules allow and both discounts have the combination ticked. The old "one automatic discount, no codes on top" behaviour is gone; the current limit is 25 active automatic discounts per store.

Why isn't my discount combining?

Both discounts must have each other's class ticked under Combinations; one side is not enough. The pairing must also be legal: two shipping discounts never combine, and two product discounts on the same item combine only on Shopify Plus. If the pair cannot combine, Shopify silently applies the better one, so a "missing" code usually lost to a bigger automatic discount.

Does free shipping stack with percentage off?

Yes. Free shipping is a shipping discount, which combines with product and order discounts when the boxes are ticked. Shipping discounts apply last, so a percentage code never touches the shipping rate and free shipping never changes the product subtotal.

How do I stop discounts from stacking?

Open the discount under Shopify admin → Discounts, untick the classes you do not want under Combinations, and save. Because both discounts must allow a combination, unticking one side is enough; Shopify then applies whichever discount is worth more to the shopper.

Can I run BOGO and a volume discount together?

Not on the same items on a standard plan: Buy X get Y products are ineligible for further product discounts, so Shopify applies the better of the two. Run them on different collections, or use Shopify Plus, where the "customer gets" product can be made eligible to combine. Both can still combine with order and shipping discounts.

Can a quantity discount and a free gift apply together?

Yes, because they discount different items: the tier reduces the paid units and the gift is a separate line made free by a Buy X get Y or an app-applied code. Tick Product discounts on both. A code-applied gift also counts toward the 5-code limit on the order.

Does Shopify Plus change any of this?

Plus stores can combine two product discounts on the same item and can make the "customer gets" product in a Buy X get Y eligible for further product discounts. Legacy Shopify Scripts discounts on Plus always apply regardless of Combinations settings. The 25 automatic discount cap and best-value-wins are the same.
Ask AI about Oxify App