Skip to main content
SEO and acquisition apps

Shopify Discounts Only Stack Six Ways — And Two of Them Require You to Have Left checkout.liquid Behind

Shopify sorts every discount into product, order, or shipping classes, and only six combinations exist. Two are limited to eligible merchants — eligibility means no checkout.liquid customizations and not running one specific named app. One is Plus-only. Add the hard caps: 25 active automatic discounts, 5 product/order codes plus 1 shipping code per order. Plus how two leading discount apps meter on completely different units. Researched September 1, 2026.

AIEC App Lab AI Editorial TeamPublished Updated Read 15 min#SEO and traffic#App comparisons#For beginners

What you will learn

On this pageContentsCloseOpen

You want a coupon to stack with a sale. Or a VIP discount to sit on top of a seasonal one. In the Shopify admin you land on a setting called Combinations — and that's where it stops making sense.

Not because the UI is hard. Because Shopify supports exactly six discount combinations, and three of them are conditional. The conditions aren't only about your plan, either. One of them is about whether your checkout still has legacy Liquid customizations, and another names a specific app.

Below: the exact combination matrix, the hard numeric caps, the calculation order that trips up promo math, and the pricing axis that decides which discount app is actually cheaper for you. Research date: September 1, 2026.

The short version

Order + shipping, product + shipping, and product + product on separate items work for every merchant. Free.

Product + order, and order + order work only for eligible merchants — and eligibility is about your checkout implementation, not your plan.

Multiple product discounts on the same line item is Shopify Plus only.

Shipping + shipping never combines on any plan. That one is architectural.

Running Buy X Get Y? On every plan except Plus, BXGY products are ineligible for further product discounts — and entering a code removes the BXGY discount.

Want strikethrough sale pricing on product pages? Shopify says outright you need a third-party app or a Partner build.

Three classes govern everything

Every discount you create — code or automatic — falls into one class:

  • Product discounts — apply to specific items or collections
  • Order discounts — apply to the cart subtotal
  • Shipping discounts — modify shipping costs

The Combinations setting asks which classes a given discount may combine with.

And nothing combines by default. From the Help Center FAQ: "No, discounts don't automatically combine. You must manually configure each discount's combination settings." Both discounts have to permit the other's class. Configuring one side does nothing.

The six combinations and their gates

CombinationWho can use it
Order + shippingAll merchants
Product + shippingAll merchants
Product + product (different items)All merchants
Product + orderEligible merchants only
Order + orderEligible merchants only
Product + product (same item)Shopify Plus only
Shipping + shippingNot supported

Shipping + shipping has a stated reason: Shopify shipping discounts apply to the entire shipping rate, and stacking multiple discounts on one rate isn't supported.

What "eligible merchants" means

Two requirements, both stated plainly:

  • Your store must not use any checkout.liquid customizations or features
  • You're not using the Licensify app

The first is really asking whether you've migrated to Checkout Extensibility. The troubleshooting section is explicit: to combine product with order discounts, or order with order, "your store must use Checkout Extensibility and not have any checkout.liquid customizations."

The second is unusual. Shopify's Help Center naming a specific third-party app as an eligibility blocker is rare enough to be worth noticing.

The practical implication: if you can't combine product and order discounts, that is probably not a missing feature you need to buy an app for. It's a migration you haven't finished, or an app you're running. Check your checkout settings before you check the App Store.

The hard caps: 25, and 5 + 1

Even where combining is allowed, there are ceilings:

  • A maximum of 25 active automatic discounts. This total includes app-based discounts. Which means at most 25 automatic discounts can apply to one order
  • Customers can use a maximum of 5 product or order discount codes and 1 shipping discount code on the same order

The "includes app-based discounts" clause is the one that bites. You may have created ten automatic discounts yourself while an installed app quietly maintains fifteen more. Shopify's own troubleshooting for "automatic discount not applying with discount code" lists hitting the 25 cap as a cause.

Where combinations simply don't work

Combinations apply only to orders placed through the Online Store, the Storefront API, and Shopify POS.

And one exclusion is spelled out:

Discount combinations aren't available for checkouts on Facebook, Instagram, Google, or other external checkout platforms.

If social commerce is a meaningful share of your volume, stacked promotions don't exist there. Design single-discount offers for those channels.

Related: you cannot restrict discount codes by sales channel. Per the Help Center, customers can redeem codes on all sales channels you've set up, and restricting them to specific channels isn't possible.

For POS specifically, automatic discounts can only be activated for POS Pro locations.

Two discount types ignore your combination settings entirely

This is where accidental double-discounting comes from. The following always apply to an order regardless of any combination settings:

  • Custom discounts manually applied to an order — a manual discount on a POS cart, or a custom discount on a draft order
  • Discounts added using the Scripts API

If you set two discounts as non-combinable and a customer still got both, one of these is the likely path. Stores where in-store staff apply manual POS discounts are effectively running two different discount rulebooks.

Calculation order, and the percentage trap

When multiple discounts apply, the order is fixed:

  1. Product discounts apply first, to individual items
  2. Order discounts apply to the revised subtotal, after product discounts
  3. Shipping discounts apply last

Now the part that surprises people.

Two percentage order discounts are both calculated on the original subtotal.

Shopify's example: a $350 USD subtotal with a 10% and a 15% order discount produces $262.50 USD. Not $350 → $315 → $267.75. Both percentages hit the original: $35 + $52.50 = $87.50 off, a flat 25%.

But a percentage plus a fixed amount behaves differently. The percentage applies first, then the fixed amount applies to the new subtotal. A $350 subtotal with 10% off and $20 off gives $315, then $295.

Which means: two campaigns that both look like "30% total off" can land on different final prices depending on whether you built them from percentages or a percentage plus a fixed amount. Run test orders before you commit to the margin math.

Buy X Get Y splits by plan

On every plan except Shopify Plus, all products that are part of a Buy X Get Y discount are ineligible for further product discounts. If a customer enters a code that applies to a BXGY product, the best overall discount wins — and per the troubleshooting section, the BXGY discount is removed and only the code applies.

On Shopify Plus, the customer-gets product in a BXGY discount is eligible for same-line-item product discount combining.

Shopify's suggested workarounds: keep BXGY and other product discounts on different products or collections, tell customers which products are in the BXGY promotion, and consider using order discounts instead of product discounts — order discounts can combine with BXGY on eligible stores.

Same-line stacking (Plus) needs reciprocal tags

On Plus, combining multiple product discounts on one line item is tag-driven. You tag discounts (loyalty, seasonal), set Combinations → Product discounts, switch One per product to Multiple per product, and select which tags may combine.

The setup must be reciprocal. Shopify's example: Discount A tagged promo, combining with clearance; Discount B tagged clearance, combining with promo. Only then do they stack on the same cart line. Configuring one direction does nothing.

Note also: free shipping discounts can carry tags, but can't be combined on the same shipping line.

The rest of the fine print

Constraints from primary documentation that change how you design:

  • Discount type and method can't be changed after creation. Delete and recreate
  • $0 USD or 0% discounts may not work correctly at checkout. Use at least $0.01 or 1%
  • Whether third-party app discounts combine depends on whether the developer adopted the discount combinations API. If they haven't, those discounts won't combine
  • Admin-created discounts aren't compatible with the post-purchase page at checkout
  • Checkouts from draft order invoices or links don't let customers apply codes themselves by default
  • Shop Pay customers must sign in before the discount code field appears
  • Discounts apply to the subtotal before taxes; tax is calculated afterward
  • A submitted order holds the code against its usage limit until payment completes or fails. An unfinished checkout keeps the hold, producing "already been used." Deactivating, reactivating, or renaming a code does not reset its usage history

Strikethrough pricing is not a native feature

This may be the single biggest reason merchants install a discount app.

From the discount codes FAQ:

To display discount savings with crossed-out (strikethrough) prices on product pages and collection pages, you need to use a third-party discount app, or hire a Shopify Partner to build a custom solution for you.

Shopify discounts are reductions applied in the cart and at checkout. They are not sale prices on a product page. To show a lower price before add-to-cart, you either edit compare-at prices directly or you install something.

So a large share of what a discount app sells you is not the discount logic — it's showing the discount before checkout.

The apps meter on completely different units

As of September 1, 2026, the Shopify App Store's Discounts category lists 1,023 apps. Feature lists won't separate them. Billing units will.

Discounty: Bulk Discount SalesRegios Automatic Discounts
DeveloperDiscounty (Richmond, BC, CA)Regios Technologies, Inc. (Mountain View, CA, US)
Rating4.9 (1,210)4.9 (176)
Built for ShopifyYesYes
Listed languagesEnglish, French, Dutch, German, Portuguese (BR), Spanish, ItalianEnglish
Billing unitLive discounted variants + campaign countMonthly orders a discount applied to
Free planYes (10 variants, 3 campaigns)No
Entry paid tier$9.90/mo ($0.99 first month) — 150 variants, 10 campaigns$34.99/mo — up to 500 orders/mo
Higher tiers$29.90/mo (1,000 variants) / $49.90/mo (10,000 variants)$59.99 (1,500) / $119.99 (5,000) / $249.99 (unlimited)
Free trial3 days7 days
LaunchedOctober 19, 2022July 12, 2023

What the table says

Different billing units mean the cheaper app flips depending on your store shape.

Discounty charges on live discounted variants. A large catalog running a storewide sale hits the top tier on catalog size alone — 10,000+ variants puts you at $49.90/month regardless of how few orders you take.

Regios charges on monthly orders that received a discount. A 100,000-SKU catalog costs $34.99 if fewer than 500 discounted orders land in a month. Invert it — small catalog, high order volume — and Regios climbs the tiers while Discounty stays flat.

Big catalog + low orders favors Regios. Small catalog + high orders favors Discounty. You cannot know which without counting both numbers for your own store.

Discounty's headline prices are promotional. Each tier reads "Start for $0.99 in your first month, then $9.9/month or $99/year. Limited-time Pre-BFCM offer." The eye-catching $0.99 / $1.99 / $2.99 figures are first-month only; months two onward are $9.90, $29.90, and $49.90 respectively.

The free tiers are narrow. Discounty's free plan covers 10 live discounted variants and 3 campaigns — testing territory. Regios has no free plan at all.

Discounty: Bulk Discount Sales

Best for — applying price rules across large catalogs and showing the result: sale badges, tier tables, countdown timers, progress bars.

The listing describes bulk price edits, automatic or code discounts, product discounts, volume and quantity tiered pricing, Buy X Get Y, BOGO, free gifts, cart discounts, flash sales, and free shipping, plus codes covering product, order, and shipping classes. Targeting by customer segment and channel (Online/POS), stacking on one line, compare-at price editing, and pre-checkout savings display are all listed.

Watch out for — a one-star review dated August 27, 2026 describes creating a storewide 25% bulk price edit campaign that the admin reported as Active across 207 discounted variants, while storefront prices never changed. Support's diagnosis: market fixed prices are hardcoded in Shopify and override discounts.

That's less an app bug than a Shopify Markets fixed-price precedence issue. If you run fixed prices per market, verify during the trial that prices actually change in the market you sell to.

Overall: 4.9 across 1,210 reviews, roughly 1.1K five-star (95%) and 28 one-star (2%). A July 26, 2026 review notes switching a live campaign from a quantity discount to Buy X Get Y took minutes, and that exclusions, scheduling, and combination settings were where you'd expect them.

Pricing (September 1, 2026) — Starter free: 10 live discounted variants, 3 campaigns. Lite: $0.99 first month, then $9.90/mo or $99/yr — 150 variants, 10 campaigns. Essential: $1.99 first month, then $29.90/mo or $299/yr — 1,000 variants, 30 campaigns. Discounty: $2.99 first month, then $49.90/mo or $499/yr — 10,000 variants, 100 campaigns. Paid plans include a 3-day trial.

Regios Automatic Discounts

Best for — complex nested discount logic you need to validate before it goes live.

The listing describes a flowchart logic builder running natively on Shopify Functions, handling nested rules across cart contents, customer tags, and quantity. Volume, BXGY, gift, threshold, fixed-price, tiered, and bulk-code discounts are covered, with display on product, collection, and search pages before checkout.

Two features stand out: a Logic Analyzer that flags setup errors with one-click fixes before launch, and automatic discount backups that protect rules from accidental deletion or uninstall. Stacking multiple classes in a single rule — "10% off plus free shipping together" — is listed.

Reviews — 4.9 across 176. Five stars 164 (93%), one star 2 (1%). An August 4, 2026 review notes variant-level promotions being "a limitation with native Shopify discounts." A July 15, 2026 review describes building fixed-price discounts with per-item multipliers that native Shopify doesn't allow.

Watch out for — English only. No free plan. Requested data access includes sensitive customer data (name, email, phone, address), geolocation and IP, Shopify Functions cart transforms, and theme editing. Worth reviewing before install — how to audit what an app can see is covered separately.

Pricing (September 1, 2026) — Starter $34.99/mo ($349.99/yr, 17% off), 500 orders/mo. Business $59.99/mo ($599.99/yr), 1,500 orders/mo. Enterprise $119.99/mo ($1,199.99/yr), 5,000 orders/mo. Scale $249.99/mo ($2,499.99/yr), unlimited. All tiers: 7-day trial, live chat support.

Picking by situation

You just want a coupon to stack with free shipping

Native does this. Order + shipping works for everyone. Enable the other class on both discounts.

The product + order combination option isn't showing up

Check your checkout, not the App Store. Legacy checkout.liquid customizations or the Licensify app are the documented blockers. Meeting the requirements makes it a native feature. If it still doesn't appear, Shopify Support is the documented next step.

You want a member discount and a sale discount on the same product

That's Shopify Plus. No app changes the plan requirement. But if you can restructure it as product + order rather than product + product, eligible stores get it natively.

You need strikethrough pricing on product pages

You need an app. Shopify states this outright. Both apps above list pre-checkout price display.

Large catalog, frequent storewide sales

Run the numbers on both units. 10,000 variants and 300 discounted orders a month: Discounty $49.90, Regios $34.99. Change either number and the answer changes.

Deeply nested logic you need to validate first

Regios. Logic Analyzer plus automatic backups are the listed differentiators. English-only operation.

Facebook, Instagram, or Google checkout is a major channel

Stacked promotions aren't available there. Design single-discount offers for those surfaces.

Pre-install checklist

  • Which of the six combinations do you actually need, and do you qualify?
  • Any checkout.liquid customizations left?
  • How close are you to 25 active automatic discounts, counting app-created ones?
  • Are you asking customers to use more than 5 codes (plus 1 shipping)?
  • If you run Buy X Get Y, are those products isolated from other product discounts?
  • Have you test-ordered percentage-vs-fixed stacking to confirm the final price?
  • Are POS manual discounts or Scripts API discounts bypassing your combination rules?
  • If you use Shopify Markets fixed prices, do app discounts actually change the displayed price?
  • Have you counted both your variant count and your discounted-order count?
  • Is the price you're looking at a first-month promotional rate?

Bottom line

Four steps:

  1. Identify which of the six combinations you need. Three are free for everyone
  2. If it's blocked, separate "plan" from "implementation." Only same-line product stacking is a Plus requirement — the rest is checkout.liquid and one named app
  3. Articulate whether you need an app for logic or for display. Strikethrough pricing is not native
  4. Map the billing unit onto your own numbers. Variant-metered and order-metered apps swap places depending on your catalog shape

App Store pricing and features change frequently. Every figure here reflects listings as of September 1, 2026 — and Discounty's "Pre-BFCM" rates are explicitly time-limited, so confirm before installing.

Primary sources

RelatedShopify Upsells Do Not Always Require Plus | Nine Conditions That Block Post-Purchase Offers

Shopify Plus is required only for upsells in the Information, Shipping, and Payment steps. Post-purchase upsells work from Basic upward, but nine conditions—including Apple Pay, Google Pay, Amazon Pay, installment plans, and multi-currency orders—can prevent offers from appearing. This article maps those limits and compares three apps. Researched September 1, 2026.