Discount Calculator

Work out the price after a discount, the percentage between two prices, and what stacked discounts really add up to.

How to use

  1. Pick the calculation: a price with X% off, the discount between two prices, or two stacked discounts.
  2. Type the values using commas for decimals — R$ 1.234,56 is read exactly as you would write it.
  3. Read the final price or percentage, with the amount you save and the arithmetic shown underneath.

About this tool

Three questions cover almost every discount you will ever meet. "How much is R$ 150 with 20% off?" multiplies the price by 0.8 and gives R$ 120, saving R$ 30. "This was R$ 150 and now costs R$ 120, what is the discount?" divides the R$ 30 saved by the original R$ 150 and gives 20%. And "the store takes 20% off and my coupon takes another 10%, is that 30%?" — the answer is no, and that is the calculation worth understanding.

Stacked discounts multiply instead of adding. A 20% discount leaves 80% of the price; a further 10% leaves 90% of what was left. Together they leave 0.8 × 0.9 = 0.72, which is a single discount of 28%, not 30%. The two percentage points that vanish are the 10% that was never charged on the part already discounted, and the gap widens as the percentages grow: 50% plus 50% is 75%, not 100% free. This tool shows the equivalent single discount next to the naive sum, and, if you type the price, the final amount as well.

Reading the percentage between two prices also works in reverse. If the second price is higher than the first, the tool says so explicitly and reports the increase instead of quietly returning a negative discount — handy when checking whether a "promotion" actually lowered anything against last month's price. Values are parsed in Brazilian format, with the comma as the decimal separator and the dot as the thousands separator, and everything is computed in your browser: no price, product or coupon you type is sent to any server.

The formula

Final price = P × (1 − d ÷ 100). Discount between two prices = ((P − F) ÷ P) × 100. Two stacked discounts: equivalent = (1 − (1 − a ÷ 100) × (1 − b ÷ 100)) × 100 — always less than a + b.

Frequently asked questions

Is 20% plus 10% the same as 30% off?

No — it is 28%. The second discount applies to the already discounted price, so the two percentages multiply rather than add: 0.8 × 0.9 = 0.72, meaning 28% off the original price.

How do I calculate the discount percentage between two prices?

Subtract the price paid from the original price, divide by the original price and multiply by 100. From R$ 150 to R$ 120 that is (30 ÷ 150) × 100 = 20%.

Does the order of two discounts matter?

No. Multiplication is commutative, so 20% then 10% gives exactly the same final price as 10% then 20%. What changes the result is whether a discount is applied to the original price or to an already reduced one.

Can I type prices with R$ and commas?

Yes. The currency symbol, spaces and thousands dots are ignored, and the comma is read as the decimal separator, so "R$ 1.234,56" works exactly as written.

Do the prices I type leave my browser?

No. Every calculation runs locally in JavaScript. Nothing is transmitted or stored.

Related tools

Long links? Shorten them for free

Vai.la turns any URL into a short link with click statistics, QR Code and your own biolink.

Vai.la is not responsible for how the tools are used or for decisions made based on their results.