Checkout-safe AOV systems for Shopify — free store audit available →
Get free audit
Guide

Shopify Discount Not Applying at Checkout: Causes and Fixes

July 10, 2026

A Shopify discount won't apply at checkout? The common causes — eligibility, minimum spend, exclusions, combination rules, Markets/currency, subscriptions and app conflicts — and how to fix each.

Fixing a Shopify discount not applying at checkout

When a discount not applying at checkout trips you up, the cause is almost never mysterious. It’s one of three things, and they fail in this order of likelihood: the cart doesn’t meet an eligibility condition the discount requires, the discount can’t combine with another one already on the cart, or an app is applying or blocking a discount of its own. Work through those three in order and you’ll find it. Random codes, currency edge cases, and subscriptions are real but rarer. Start with the conditions, because that’s where roughly nine out of ten of these tickets end.

Diagnose before you change anything

Reproduce the failure first. Build the exact cart the discount is supposed to reward — the right products, the right quantities, the right subtotal — with the same customer state (logged in or guest) you’ll ship to shoppers. Then open the discount in Discounts and read its conditions line by line against that cart. Most “broken” discounts are working exactly as configured; the cart simply doesn’t qualify. Only once the qualifying cart still fails should you move on to combinations and apps.

The likely causes, in order

Go down this checklist top to bottom. Stop at the first one that matches — don’t change five things at once.

  1. Minimum requirements not met. A minimum purchase amount or minimum quantity is the single most common culprit. Shopify checks the subtotal after other line-item discounts, so a cart that looks like it clears the threshold on the product page can fall under it at checkout.
  2. Eligible products or collections. If the discount is scoped to specific products or a collection, only those items get the discount — and if none are in the cart, nothing applies. Watch for products that were removed from the collection after the discount was created.
  3. Customer eligibility. A discount limited to specific customers or customer segments won’t apply to a guest or to a shopper outside that segment. This one bites when you test as an admin but ship to logged-out traffic.
  4. Active dates and time zone. Discounts have a start (and optional end) date evaluated in your store’s time zone. A discount scheduled to start “today” may not be live yet in the shopper’s region.
  5. Usage limits. A per-code total-uses cap or a one-per-customer limit silently stops the discount once it’s hit. Reused test codes are a classic false alarm here.
  6. Combination rules. Shopify sorts discounts into three classes — product, order, and shipping — and two discounts of the same class don’t stack. A code won’t apply on top of an automatic discount unless both are explicitly marked combinable across their classes. This is covered in depth in how to run multiple discounts on Shopify.
  7. Markets and currency. Fixed-amount discounts are set in a specific currency. Under Shopify Markets, a shopper checking out in another currency may see the amount behave unexpectedly, and market-specific pricing or price adjustments can interact with the discount’s threshold.
  8. Subscriptions. Subscription line items follow their own discount handling. A discount that works on a one-time purchase may not attach to a subscription line, or may only apply to the first order versus recurring ones.
  9. App conflicts. Cart, bundle, or discount apps that rewrite line items or apply their own discount can block a native one — especially storefront-JavaScript apps whose cart-page total doesn’t survive server-side re-evaluation at checkout.

Causes and fixes at a glance

CauseWhat you’ll seeFix
Minimum spend/quantityDiscount vanishes below the thresholdRecheck the post-discount subtotal; lower or clarify the minimum
Wrong products/collectionApplies to some carts, not othersConfirm cart items are in the eligible collection; refresh stale collection membership
Customer eligibilityWorks as admin, fails for shoppersTest logged-out; widen the segment or remove the customer restriction
Inactive dates/time zoneNothing applies “yet”Verify start date and store time zone; set it live
Usage limit reachedCode stops working after a whileCheck total-uses and one-per-customer caps; issue a fresh code
Same-class combinationSecond discount never stacksEnable combinations across classes, or run one offer per class
Markets/currencyFixed amount behaves oddly abroadUse percentage discounts for multi-currency, or set per-market values
SubscriptionsApplies to one-time, not recurringConfigure the discount for subscription lines explicitly
App conflictCart total right, checkout wrongDisable the app’s discount and retest; move logic to a Function

How to isolate it fast

Once you have a qualifying cart that still fails, run three quick tests. One: temporarily disable any discount, cart, or bundle app and retry — if the native discount suddenly applies, you’ve found an app conflict. Two: if you run automatic discounts, confirm you’re not colliding with a code of the same class; the interplay is explained in how to create automatic discounts on Shopify. Three: if you sell internationally, repeat checkout in a second currency to expose a Markets or fixed-amount issue. Each test changes exactly one variable, so the result actually tells you something.

When custom logic is the right answer

Native discounts are fine for simple rules. But once your offer depends on combinations native combinations can’t express — “the best of three overlapping promotions,” tiered thresholds, per-customer logic, or a free gift that must survive cart edits — you’ll keep fighting the platform’s guardrails. That’s the point to move the logic into a Shopify Function: server-side discount code that Shopify evaluates at checkout, so the qualifying offer always applies and an unqualified one never leaks through. Unlike a storefront script that only decorates the cart page, a Function re-validates the real order at payment time. We compare the two approaches directly in Shopify Functions vs discount apps. When the rules outgrow the native UI, our Custom Apps & Shopify Functions service is built for exactly this — checkout-enforced discount logic that does what you meant, not what the settings allow.

Common mistakes

Fix the eligibility conditions first, then combinations, then apps — and you resolve the large majority of these without touching code. When the offer genuinely needs rules native discounts can’t hold, enforce it at checkout rather than hoping the cart page is right.

Discount still not applying at checkout? If the rules are more complex than native discounts allow, we build checkout-safe discount logic with Shopify Functions so the right offer always applies. See our Custom Apps & Shopify Functions service or get a free profit audit.

Share:

FAQ

Why is my Shopify discount not applying at checkout?
The most common reasons are that the cart doesn't meet the discount's conditions (minimum spend, eligible products or collections, customer eligibility, or active dates), the code conflicts with another discount because combinations aren't enabled, or a currency/Markets, subscription, or app-generated discount is interfering. Check the discount's conditions first, then combinations, then apps.
Why does a Shopify discount code work but an automatic discount doesn't (or vice versa)?
Codes and automatic discounts follow the same eligibility rules but can't always stack. If both target the same cart and combinations aren't allowed, only one applies. Also, some apps apply discounts in a way that bypasses or blocks native discounts, so an app conflict is a frequent cause.
Can an app stop a Shopify discount from applying at checkout?
Yes. Discount or cart apps that alter line items, apply their own discount, or rely on storefront scripts can conflict with native discounts, especially at checkout. Isolate by testing with the app's discount disabled, and prefer discount logic enforced by a Shopify Function so it's evaluated server-side at checkout.

Start making more on every order

Launch a checkout-safe offer yourself, or have our team set it up and dial in your store.

Lifts average order value · No checkout edits · Works on any theme

Related reading