Blog /

Shopify bundle discounts explained with worked examples

Shopify bundle discounts by item count or order total, four calculation types with real arithmetic, why checkout discounts beat codes, common mistakes.

Shopify bundle discounts come down to two decisions: what triggers a tier, and how the money off is calculated. Get those two right and the rest is arithmetic, which this guide does for you with real numbers.

The examples use Elite Bundle Builder, where discounts are configured in the Offer tab and applied at checkout by a Shopify Function, so the shopper never types a code. The maths is the same whichever tool you use, and the mistakes at the end are the ones we see most often in support chat. If you have not set up a bundle yet, the build your own bundle tutorial gets you to the Offer tab.

Tiers are triggered by item count or by order total

A tier is a threshold plus a reward. The trigger decides what the threshold measures:

  • Number of items: the tier starts when the shopper has picked that many items. "3 items for 10% off" is the classic pick-and-mix ladder. Use it when your products cost roughly the same.
  • Order total value: the tier starts when the bundle's undiscounted total reaches an amount. "$100 for $15 off" makes sense when products range widely in price, because it rewards spend rather than count.

You choose one trigger per bundle. Pick the one your shopper thinks in. Someone building a snack box counts snacks; someone assembling a skincare routine with a $60 serum and a $12 lip balm is better served by a total-based ladder.

The four calculation types, with the arithmetic

Every example below uses the same bundle: three items at $20 each, so an undiscounted total of $60, and a tier that starts at 3 items.

Percentage off

The discount is a percentage of the bundle total. At 10% off, the shopper pays $60 minus $6, so $54. Three items at $30 each would give $90 minus $9, so $81, with the same tier. Percentage off scales with what the shopper picks, which is why it is the safest default when prices vary.

Fixed amount off

A flat sum comes off the bundle total. With $5 off, the shopper pays $55. The saving is the same whether they picked three $20 items or three $40 items, so it works well for order-total tiers ("$50 for $5 off, $100 for $15 off") and as a small, easy first tier.

Fixed target price

The bundle costs a set amount regardless of what is inside. With a target of $50, the shopper pays $50 and saves $10. Three $25 items ($75 undiscounted) would still cost $50, a $25 saving. Because the saving grows with the shopper's choices, use this type only when everything in the bundle sits in a narrow price band, or when the step rules cap what can go in. Check your most expensive qualifying combination before you publish.

Amount off per item

A flat sum comes off each item. With $2 off per item and three items, the discount is $6 and the shopper pays $54. A fourth $20 item makes it $8 off $80, so $72. Per-item discounts are easy to state on the page ("save $2 on every item when you pick 3 or more") and grow predictably with the bundle.

The highest tier the shopper reaches is the one that applies

Tiers do not stack. With a ladder of 3 items for 5%, 5 items for 10% and 8 items for 15%, a shopper with six items gets 10%, not 5% plus 10%. If the shopper has not reached the first tier, no bundle discount applies at all.

The same is true for order totals. A ladder of $50 for $5 off, $100 for $15 off and $150 for $30 off gives a $120 bundle a $15 discount. The set up discounts docs cover both examples.

Why checkout-time discounts beat discount codes

Most bundle discounts in Shopify are set up one of two ways: a discount code the shopper has to enter, or a discount applied automatically at checkout by a Shopify Function. Functions are Shopify's supported way for an app to run its own discount logic inside checkout. Elite Bundle Builder uses the second approach, and here is why it matters.

Nothing to type, nothing to forget. The shopper builds the bundle, adds it to cart and the discount is already there at checkout. A code they saw on the product page and then cannot remember is a support ticket.

Nothing to leak. A code can be copied to a coupon site and used by people who never built a bundle. A Function looks at the bundle line the shopper actually assembled and applies the tier it has reached, so the discount cannot be separated from the bundle.

No conflict with your other promotions. Shopify decides at checkout which discounts can combine, following its rules for combining discounts, and the bundle discount takes part in that like any other automatic discount.

One line in the cart, correct stock. The picked items are grouped into a single bundle line by a cart transform, inventory stays on the real products, and the discount is calculated from that one line.

The honest trade-off: a code is something you can put in an email or on a flyer. A checkout-time bundle discount is tied to the bundle page. If you want a marketing hook, put the offer itself in the email ("pick any 5 for 15% off") and link to the bundle.

Common mistakes and how to avoid them

Tier gaps that leave shoppers stranded

A ladder of 3 items for 5% and 8 items for 15% has a long flat stretch between them. A shopper with six items is on the 5% tier with no reason to add a seventh, and a big jump to reach the next reward. Either add a middle tier at 5 items or bring the top tier down to 6. Keep the first tier easy to reach and the steps between tiers roughly even.

Order-total tiers on a catalogue of cheap items

If your products cost $4 and the first tier is $50, a shopper needs thirteen items before anything happens, and the progress bar will barely move for the first five. Order-total tiers suit catalogues where a few items reach the threshold. For low-priced products, tier by item count instead.

Capping at the top tier without meaning to

Config, Rules has a whole-bundle option called Stop at the top discount tier. Once the shopper hits the highest quantity tier, every add button locks. That is exactly right for a fixed box ("choose your 6") and for the box style of discount display, where the shopper picks a box size up front. It is wrong for an open pick-and-mix, where you want the shopper to keep adding at the top rate. The option is ignored when tiers are by order total.

Too many tiers

Five or six tiers look thorough in the editor and unreadable on the page. Two to four is enough for the progress bar and the "add 2 more to save 10%" hint to make sense.

A fixed bundle price that is too low for some combinations

With a fixed target price, the saving depends on what the shopper picks. If the target is $50 and a shopper can qualify with three $30 items, you are giving away $40. Narrow the products in each step, cap step maximums, or use percentage off instead.

Not testing at checkout

The discount is applied at checkout, not on the product page. Build a qualifying bundle, add it to cart, go through to checkout and look for the discount line. Then test the top tier and a selection that does not qualify. If the discount is missing, check that the bundle was added from the bundle page rather than as loose products, then check the app settings page for a discount service issue.

Removing the last tier turns the discount off for that bundle. To pause a promotion, switch Enable discounts off instead and keep the ladder for later.

Multi-option bundles get one discount, not a ladder

A multi-option bundle is a fixed kit where the shopper picks a variant for each slot, so there is no item count to climb. Its Offer tab has a single switch and one value: percentage off or a fixed amount off the bundle total, applied whenever the bundle is added to cart. Everything above about tiers applies to build your own bundles.

Frequently asked questions

Can I run a bundle discount and a sitewide sale at the same time?

Yes. The bundle discount is applied automatically at checkout, and Shopify's combining rules decide how it sits alongside other automatic discounts and codes. Test the exact combination you plan to run before you announce it, because the result depends on which discount classes you allow to combine in your Shopify discount settings.

Do shoppers see the discount before checkout?

They see the offer on the bundle page: a progress bar, segmented bar or box buttons showing the tiers, a savings hint as they add items, and the amount saved in the bundle cart when Show savings is on. The actual price reduction is applied at checkout.

Is there a minimum bundle size for the discount?

Only the one you set. The first tier's threshold is the minimum for a discount, and it is separate from the step and whole-bundle minimums in Config, Rules. A shopper can add a bundle to cart below the first tier and simply pay full price for it.

Want the two settings and four calculation types in one place? Read the Shopify bundle discount overview or install Elite Bundle Builder free and try a ladder in the Offer tab.