Discount Math: Percentages, Stacking, and Reading a Sale Correctly

The only discount formula you need

Every percentage-off price follows one rule: **discount amount = original price × (percentage ÷ 100)**, and **final price = original − discount**. That is the whole machinery. A 30%-off jacket at 120: discount = 36, final = 84. The [Discount Calculator](/calculators/discount.html) does this instantly and shows both numbers, because the save-amount is what retailers want you to focus on — the final price is what actually leaves your wallet.

Inverting the question is just as common: 'this is 84 after 30% off — what was the original?' Divide instead: original = final ÷ (1 − d) = 84 ÷ 0.7 = 120. Stores use this trick in reverse to fabricate discounts — inflate the 'original' price first, then discount from it. If a perpetual '70% off' store never sells anything at the crossed-out price, the crossed-out price is fiction.

Stacked discounts multiply — and that changes everything

The single most common discount error is adding stacked percentages. A '20% off + extra 20% off' is **not** 40% off. The second 20% applies to the already-reduced price: 100 → 80 → 64. Total saving: 36%, not 40%. The general rule: multiply the remainders. Final = original × (1 − d₁) × (1 − d₂).

The same logic governs tax-free weekends, loyalty multipliers and clearance layers. And it is why the order of stacking doesn't matter — multiplication commutes — while the *comparison* to a single bigger discount does. A straight 35% off beats 20%+20% (36% remain... check: 0.8×0.8 = 0.64 vs 0.65) — the single 35% leaves 65% of the price, the stack leaves 64%, so the stack wins slightly. Run both through the calculator rather than trusting instinct.

Comparing offers the right way

Retailers exploit percentage framing, because a bigger number reads as a better deal. The defence is mechanical: **never compare percentages — compare final prices.** Shop A: 120 at 35% off = 78. Shop B: 95 at 15% off = 80.75. Shop A wins despite the bigger-looking percentage, and only by 2.75. If you had compared '35% vs 15%' the gap would look enormous.

The same discipline handles bundles ('was 200, now 150, plus 10% loyalty' → 135 — versus a rival's flat 140), 'buy one get one 50% off' (effectively 25% off *if* you wanted two, 0% off if you wanted one), and cashback (subtract only what you will actually redeem).

Where VAT and sales tax change the winner

Two stores can quote pre-tax prices in different tax regimes and switch places after tax. If you are comparing across borders — or a US pre-tax sticker against a UK VAT-inclusive one — convert to the same tax basis before comparing. A '20% off' on a VAT-inclusive price is also a bigger absolute saving than 20% off a pre-tax price of the same face value.

The percentage-change trap

Discounts interact with the [Percentage Calculator](/calculators/percent.html) modes in a way worth internalising: percent *off* is not percent *change* reversed. Returning an item bought at 25% off does not refund 25% of what you'd expect from re-adding percentages — refunds compute on the amount actually paid. And a price that rose 25% and then fell 25% is still below its start (100 → 125 → 93.75), because the two percentages operate on different bases. Percentages compound; they never symmetrise.

Quick reference

Single discount: final = price × (1 − d). Stacked: final = price × (1 − d₁) × (1 − d₂). Recover original: price = final ÷ (1 − d). Effective stack rate: 1 − (1 − d₁)(1 − d₂). BOGO 50% on two items: 25% off total. Every one of these is instant in the [Discount Calculator](/calculators/discount.html), and the [Tip Calculator](/calculators/tip.html) uses the identical percentage machinery for service charges.

Frequently asked questions

**Is 20%+20% the same as 40%?** No — it's 36%. Multiplication, not addition. **Which wins: 30% off or 20% off + 12% off?** 0.7 vs 0.8×0.88 = 0.704 — nearly identical; always compute. **Why do stores show the discount instead of the final price?** Because a big percentage frames the deal better than the real number. **Do discounts apply before or after tax?** Usually before tax is added at the till — check your jurisdiction's rule.