Shopify Checkout Discount Not Applying? The Full Fix List

A discount that doesn't apply at checkout is rarely random. Here's the systematic checklist, in the order that actually finds the cause fastest.
A customer enters a code you spent weeks marketing, and checkout shows "discount code isn't valid." Or worse, a discount that was working fine yesterday just silently doesn't show up today. Neither is usually a random glitch. Shopify's discount engine follows a strict, predictable set of rules, and once you know the checklist, the cause is usually minutes away, not a support ticket.
A Shopify checkout discount that isn't applying is almost always traceable to one of a small number of causes: expired or inactive status, an unmet eligibility condition, a combination conflict with another active discount, a currency/market mismatch, or a code entry error. Working through them in order of likelihood resolves the large majority of cases without contacting support.
What's the first thing to check when a discount won't apply?
Confirm the discount's status and dates in Shopify admin before checking anything else, since an expired, not-yet-started, or manually deactivated discount is by far the most common cause and takes ten seconds to rule out. One troubleshooting guide puts this first for good reason: it's the fastest check and the most frequent culprit. Go to Discounts, open the code, and confirm it's Active with correct start and end dates before investigating anything more complex.
Why does a valid discount code sometimes get rejected?
Beyond status, the next most common causes are unmet minimum-purchase or quantity conditions, customer eligibility restrictions (first-time buyers, specific segments, tagged groups), or usage limits that have already been hit. A breakdown of the most common discount-code failure points lists these as the standard checklist: cart doesn't meet the minimum value or item count, the shopper isn't in the eligible customer segment, or the code has hit its total-use or one-per-customer cap.
Typos matter too, but less than people assume. A detailed breakdown of code entry issues notes Shopify codes aren't case-sensitive, but a trailing space, a copy-pasted invisible character, or visually similar characters (a capital O next to a zero) can still cause a mismatch that looks identical on screen but fails on submit.
Why does a discount disappear specifically at checkout, but work in the cart?
This usually points to a combination conflict: an active automatic discount silently blocking a manual code, since Shopify applies only one discount per eligible item unless both discounts are explicitly configured to combine. A Shopify Community thread documents the mirror image of this exact issue: a merchant found an unexpected discount applying with no code entered, traced to an automatic discount active on a specific collection that nobody remembered turning on. Once found and disabled, the issue resolved immediately.
Another Community thread reports the reverse symptom: a discount showing correctly in the cart but vanishing at checkout, which the troubleshooting steps trace to a conflict between the discount system and a theme update, a third-party app (upsell or bundle apps are common culprits), or a checkout configuration change. Disabling apps one at a time and retesting is the practical path to isolating which one is interfering.
Does market or currency affect whether a discount applies?
Yes — if a minimum spend or fixed amount is set in your store's default currency and a customer is shopping in a different market currency, the converted threshold can land off by a small margin from what the merchant expects, and country-restricted discounts will simply fail eligibility outside their configured region. A breakdown of currency-related discount failures flags this specifically for stores running fixed regional pricing alongside a discount configured in the home currency. If you sell internationally through Shopify Markets, checking whether the discount is restricted to a specific country or market is worth doing early, not as a last resort.
Does building discounts through Shopify Functions reduce these failure modes?
Some of them, specifically. A Functions-based discount syncs directly onto a single native Shopify discount object rather than depending on a separate theme widget or app-injected price display, which removes the class of failure where a discount shows in the cart but doesn't carry through to checkout. That specific failure mode, a displayed price that doesn't match the charged price, is common with widget-based apps that inject pricing into the storefront rather than through Shopify's own discount engine, and it's structurally impossible for a rule that's synced directly onto the native discount object from the start.
It doesn't eliminate every cause on this list. Eligibility misconfigurations, combination settings, and currency mismatches are properties of the discount rule itself, not the mechanism building it, so a Functions-based discount can still be set up wrong in the same ways a native one can. Flowly: Discount Functions does validate a flow before letting it save, which at least rules out one specific failure class: an incomplete or contradictory rule reaching a live cart in the first place.
The troubleshooting checklist, in order
Status and dates — is the discount Active, and are you inside its start/end window?
Eligibility conditions — minimum purchase, minimum quantity, customer segment or tag restrictions.
Usage limits — has the code hit its total-use or one-per-customer cap?
Combination conflicts — is another automatic discount or code already active, and are both configured to combine?
Currency and market — is the discount restricted to a specific country, and does a fixed-amount threshold convert as expected in the shopper's currency?
Entry errors — a trailing space, a copy-pasted character, or a lookalike character in a manually typed code.
Theme or app interference — a recent theme update or a third-party app (upsell, bundle, custom checkout) modifying checkout behavior.
FAQ
Why does my Shopify discount code say "not available to you right now"?
This message typically points to an unmet eligibility condition, an expired date window, a country restriction, or a minimum purchase requirement that the current cart doesn't satisfy. Shopify staff guidance on this exact error points to checking date/time windows, customer eligibility, minimum purchase, country availability, and product applicability in that order.
Can two discount codes be used on the same order?
Generally no, unless both discounts are explicitly configured to combine in their Combinations settings. Shopify applies the single best eligible discount by default when two codes conflict.
Why does a discount show in my cart but disappear at checkout?
Most often a conflict with a theme update, a third-party app modifying checkout behavior, or a combination setting blocking the discount once a second discount becomes active. Disabling apps one at a time and retesting isolates the cause.
Does using a Functions-based discount app prevent these issues?
It removes one specific failure mode, a displayed price that doesn't match the charged price, since the rule syncs directly onto Shopify's native discount object. Eligibility, combination, and currency issues can still occur regardless of how the discount was built.
What's the fastest way to rule out the most common cause?
Check the discount's status and active dates in Shopify admin first. This single check resolves the largest share of "discount not applying" cases before any deeper troubleshooting is needed.
If you're rebuilding your discount logic after chasing down one of these failures, it's worth checking whether the underlying rule is synced to Shopify's native discount object or running through a separate widget layer. Download Flowly directly from the Shopify App Store to build discount logic that syncs directly to Shopify's checkout, or book a call with Subscribfy's team if a recurring discount issue is costing you real revenue.

Book a meeting with our sales team now!
Create predictable revenue from the customers you already have.