10% Off or $5 Off? The Discount Framing Math That Changes What Buyers Actually Perceive
The same discount can feel generous or forgettable depending on whether you show it as a percentage or a flat amount — and your price point decides which one wins.
Here's a number game most creators never play: a $10 discount and a 10% discount on a $100 product are mathematically identical, but they don't feel identical to someone staring at your checkout page. One makes the buyer pause and think "that's real money." The other barely registers. The difference isn't the discount — it's the frame around it. Know the math behind that frame, and setting up a discount code stops being a guess and starts being a decision you can defend.
Why the exact same discount can feel like two different offers
Buyers don't run a calculator before deciding whether a discount is worth acting on. They glance at the number attached to the offer and make a snap judgment about how big it is. That judgment tends to latch onto whichever figure is numerically bigger, regardless of what it represents. Show someone "20% off" and "$8 off" on the same $40 item, and most will feel the 20 is the more generous offer, even though both save the exact same $8. Flip the price to $250 and offer "20% off" against "$50 off," and now the 50 wins the same snap judgment, even though 20% of $250 is also $50. Nothing about the discount changed — only which digit showed up first.
This matters because discount codes are one of the few levers you can pull without touching your actual price. A well-framed code can lift conversion on a launch week without giving away a cent more than a poorly-framed one would have — same cost to you, different perceived value to them.
The crossover math, laid out by price tier
The rule of thumb that marketers have leaned on for years is simple: below about $100, the percentage number tends to be the bigger digit, so percent-off framing wins. At or above about $100, the dollar number tends to be the bigger digit, so flat-dollar framing wins. You don't need to memorize a formula — you just need to glance at which number would actually be larger at your specific price point. Here's what a flat 10% discount looks like translated across common price tiers, so you can see the crossover happen in real numbers.
| Product Price | 10% Off Equals | Flat-$ Equivalent | Which Digit Looks Bigger | Best Framing to Show |
|---|---|---|---|---|
| $50 | $5 off | $5 off | 10 beats 5 | Percentage off |
| $99 | $9.90 off | $9.90 off | 10 beats 9.9 | Percentage off, but test |
| $100 | $10 off | $10 off | Tie — 10 equals 10 | Either; pick by tone |
| $150 | $15 off | $15 off | 15 beats 10 | Flat dollar off |
| $300 | $30 off | $30 off | 30 beats 10 | Flat dollar off |
Where this shows up across a real store
A $19 template, a $79 mini-course, a $249 cohort program, and a $600 coaching package aren't four versions of the same pricing problem — they need four different discount frames. Run "15% off" on the $19 template and the buyer sees a bold 15 against a tiny $2.85 saving that never needs spelling out. Run "$25 off" on the $600 package and the buyer sees a concrete, bankable $25 rather than an abstract 4%. Both choices lean into the number that reads as bigger, and both cost you exactly what you intended to give up — nothing changes except which framing gets attached to the code.
This is easy to get backwards on instinct alone, because percentage-off just feels like the more "generous" format — it's what big brands use on huge sitewide sales. But those sales run on higher-ticket goods where the dollar figure would win anyway if shown; the retailer just isn't showing it. On a $30 digital download, you want the opposite instinct: hide the small dollar amount, lead with the percent.
A simple threshold checklist before you launch a code
Run through this before you set up a discount code
0/6Setting it up without overthinking it
None of this requires a spreadsheet. Inside your dashboard's discount codes tool, you can create a percentage-based code or a flat-dollar code in a few clicks, attach it to a single product or your whole store, and set an expiration so it doesn't quietly become your permanent price. Not sure which framing lands better for a launch? Create both, run each for a short window on similar traffic, and let the numbers decide. If you want to see how pricing and promotions come together on one real page, a live example store is worth a look before you build your own.
A discount doesn't have to be bigger to feel bigger. It just has to show the number that already looks bigger.— store.fan team
The edge cases worth knowing
Round numbers matter more than the rule itself in a few spots. At exactly $100, both frames tie mathematically, so lean on tone instead: percentage-off reads more energetic for a flash sale, dollar-off reads calmer and suits an evergreen or loyalty code. For memberships, apply the rule to the first billing amount a new member sees at checkout, not a lifetime-value estimate — buyers react to what's in front of them. And for a bundle with a deliberately high anchor price, a flat-dollar code often still wins even under $100, since a concrete figure reinforces that already-substantial framing.
One more thing worth saying plainly: none of this works without somewhere for the code to live — a discount is only useful attached to a real checkout an actual buyer can reach from your one link. If you're still deciding on your setup, more guides on the blog cover pricing and launches; framing is a multiplier on a foundation, not a substitute for one.
No — it's a rule of thumb, not a law. At your price, would the percent number or the dollar number be bigger written out? Whichever wins, lead with that format. Prices near $90-$110 are close enough that either framing performs similarly, so don't stress over the exact line.
Yes. Your discount codes are set up per product or storewide, so it's completely normal to run a percentage-off code on a low-ticket template while running a flat-dollar code on a higher-ticket course or coaching package, at the same time.
Both. The underlying discount cost is identical either way, but framing changes conversion — more people acting on an offer that reads as bigger means more completed checkouts at the same cost to you, which is a real revenue difference even though each sale's math hasn't changed.
Only if a price crosses the rough $100 line. A product moving from $65 to $85 doesn't need a new frame; one moving from $85 to $120 does. Check the FAQ for more on how discount codes behave across price changes, or reach out to contact support if you want a second opinion on a specific setup.
It can work for high-consideration purchases where you want to reassure a buyer the number is real — "20% off ($40 savings)" on a $200 course, for example. Just make sure the number you want noticed first is the one written first; buyers read left to right and anchor on whatever they see initially.
The bigger point underneath all of this: a discount code is a tiny piece of copy sitting between a follower and a completed sale, and small wording decisions at that exact moment compound across every checkout you'll ever run. Getting the framing right costs nothing extra — it's the same discount, dressed correctly for the price it's sitting on. If you haven't set up a store to put these codes to work yet, it takes minutes to create your store and start testing this on real traffic instead of in theory.
Stop guessing which discount frame converts better — set up your store free and start testing percentage-off against dollar-off on your own products today.
Start freeAnd if you're weighing a paid plan before running promotions seriously, compare plans — 0% platform fees on paid tiers mean every dollar a well-framed code brings in stays in your account, not split with the platform that hosted the sale.
Turn your knowledge into income
Launch your Store.Fan in minutes — sell digital products, courses, and calls straight from your bio. Free to start.



