How to calculate a discount percentage

Short answer. Multiply the original price by the percent off as a decimal. That is the saving, and price minus saving is what you pay. An 80 jacket at 25% off: 80 × 0.25 = 20 saved, so 80 − 20 = 60. Faster, multiply once by what you pay: 80 × 0.75 = 60.

Shops write discounts as a percentage because a percentage sounds like a gift and a price sounds like a bill. The arithmetic underneath is one multiplication. Two, if you insist on doing it the long way.

The two-step way

Take the percent off, divide it by 100 to get a decimal, and multiply. 25% off an 80 jacket:

Percent off   25%  →  25 ÷ 100  =  0.25
Saving        80 × 0.25       =  20
Sale price    80 − 20         =  60

This is the version taught in school, and it is worth doing once because the middle line is the number you actually care about when you are deciding whether the sale is worth the trip.

The one-step way

If a quarter comes off, three quarters stay on. So work with the part you pay rather than the part you save:

You pay       100 − 25  =  75%     →  0.75
Sale price    80 × 0.75           =  60

Same answer, one operation, and nothing to round in the middle. This matters when the numbers are not tidy. On a 45.60 shirt at 30% off, the two-step route asks you to hold 13.68 in your head; the one-step route is 45.60 × 0.70 = 31.92 and you are done.

Doing it in your head

Ten percent is free: move the decimal point one place to the left. Everything else is built from that.

10% of 46.00   →  4.60          shift the decimal
 5% of 46.00   →  2.30          half of the 10%
15% of 46.00   =  4.60 + 2.30   =  6.90

You pay        46.00 − 6.90     =  39.10

Twenty percent is 10% doubled. Twenty five percent is a quarter, so halve it and halve it again. Forty percent is 10% times four. Almost every discount on a shop window is reachable in two moves from a decimal shift, which is the same trick that runs the mental method for tips, pointed the other way.

Going backwards: what percent off is this?

The tag says 90 and the little crossed-out number says 120. Divide the saving by the original price:

Saving      120 − 90        =  30
Fraction    30 ÷ 120        =  0.25
Percent     0.25 × 100      =  25% off

Dividing by the sale price instead is the classic error. 30 ÷ 90 is 0.3333, which would let the shop advertise 33% off for the same money. The denominator is always the price you would have paid.

Going backwards again: what was the original price?

You paid 51 for something marked 15% off and you want to know the list price. Do not add 15% back:

Wrong    51 × 1.15   =  58.65     15% of the wrong number
Right    51 ÷ 0.85   =  60.00     51 was 85% of it

The 15% was taken from 60, not from 51, so adding it back to 51 always undershoots. Divide by the multiplier you would have used going forwards and the original falls out.

Stacked discounts do not add

An extra 10% off an already 20% off rail is not 30% off. The second cut applies to the reduced price, so the multipliers multiply:

250 × 0.80  =  200        20% off
200 × 0.90  =  180        then 10% off that

Straight 30% off:  250 × 0.70  =  175
Combined multiplier: 0.80 × 0.90 = 0.72  →  28% off

Five pounds, dollars or euros of difference on a 250 coat, and the gap widens with the price. The order of the two discounts makes no difference, because multiplication does not care, but the total is 28% either way.

Discount and sales tax, in either order

Same reasoning, opposite direction. Suppose the 80 jacket is 25% off and tax is 8%:

Discount first   80 × 0.75  =  60      →  60 × 1.08  =  64.80
Tax first        80 × 1.08  =  86.40   →  86.40 × 0.75 =  64.80

Identical, and it has to be, since both routes are 80 × 0.75 × 1.08. Shops apply the discount first anyway, because tax is charged on what you actually pay.

Common discounts on a 64 item

Percent offYou payMultiplierSale price
10%90%× 0.9057.60
15%85%× 0.8554.40
20%80%× 0.8051.20
25%75%× 0.7548.00
30%70%× 0.7044.80
40%60%× 0.6038.40
50%50%× 0.5032.00
70%30%× 0.3019.20

Read the middle column often enough and the whole subject collapses into it. A discount is just a number slightly below one that you multiply the price by.

Where the cents go missing

Prices ending in .99 and multipliers like 0.75 are both awkward in binary, so the machine does the sum on the nearest values it can store. A 89.99 item at 25% off is exactly 67.4925, which is 67.49 at the till:

Exactly    89.99 × 0.75  =  67.4925          →  67.49
In binary  89.99 × 0.75  =  67.49249999999999

Even the multiplier drifts:  1 − 0.85  =  0.15000000000000002

One item, and the noise sits well past the cent, so nobody notices. Multiply it across a basket, a stock take, or a spreadsheet column of margins, and truncation instead of rounding starts shaving real money off the total. It is the same fault behind 0.1 + 0.2 = 0.30000000000000004. Prism computes with exact rational arithmetic, so 89.99 × 0.75 is 67.4925 and the only rounding that happens is the one you asked for.

Prism Calculator icon

Or let the discount and tax tool hold the multipliers

Prism has a discount and tax calculator that takes a price, a percent off and a tax rate and shows the saving and the final price together. No ads, no subscription. See the app.