How to Multiply Percentages and Divide Them
How to multiply percentages: convert each percent to a decimal, multiply, and write the product back as a percent. It also shows how to divide percentages, how to multiply by a percentage and how to divide a number by a percentage.
Example values are filled in. Replace them with your own.
Result
10
Working
- 50 × 20 ÷ 100 = 10
A shop takes 20% off and then a further 10% off the new price. That is not 30% off. Multiply 0.8 by 0.9 and you get 0.72, so you pay 72% of the original price, which is 28% off.
To learn how to multiply percentages and divide them, convert each percent to a decimal first, then multiply or divide. The four cases below look alike but the answer means something different in each, and that is where most mistakes start.
How to multiply and divide percentages
Quick answer: divide each percent by 100, multiply or divide the decimals, and turn the result back into a percent only when it is a percentage. 50% × 20% = 0.5 × 0.2 = 0.1 = 10%.
| Case | Rule | The answer is |
|---|---|---|
| Percent × percent | a × b ÷ 100, as a percent | A smaller percent |
| Number × percent | n × p ÷ 100 | A part of the number |
| Percent ÷ percent | a ÷ b | A plain ratio, no percent sign |
| Number ÷ percent | n × 100 ÷ p | The whole the number is a part of |
How to multiply percentages
To multiply percentages, convert both to decimals, multiply, and write the product as a percent. A percent of a percent is always smaller than either one when both are below 100%: 50% of 20% is 10%, and 10% × 10% is 1%.
Do not multiply the raw numbers. 50 × 20 = 1,000 would be 1,000%, which is the most common wrong answer. The shortcut is a × b ÷ 100, so 50 × 20 ÷ 100 = 10%.
To multiply a number by a percentage, divide the percentage by 100 and multiply. 15% of 240 is 240 × 0.15 = 36. This is the same calculation as finding a percent of a number on the home page.
How to divide percentages
Dividing one percentage by another gives a plain ratio, because the percent signs cancel. 20% ÷ 50% is 20 ÷ 50 = 0.4. You can read that as "20% is 40% of 50%", and only then does the answer take a percent sign.
Some guides multiply the quotient by 100 and write 20% ÷ 50% = 40% without saying what the 40% refers to. The value is 0.4. Percent signs on a quotient describe a share, not the quotient itself.
How to divide a number by a percentage
Dividing a number by a percentage means finding the whole that the number is a part of. Divide the percentage by 100 and divide the number by the result, which is the same as n × 100 ÷ p. 200 ÷ 90% = 200 ÷ 0.9 = 222.22.
The answer is larger than the number you started with. 200 is 90% of something, so that something must be bigger than 200. This is the reverse percentage calculation, and the reverse percentage calculator does it directly.
Multiplying and dividing percentages in Excel
Excel stores 15% as 0.15, so a formula works on the real value. With 240 in A2 and 15% in B2, =A2*B2 returns 36. To multiply two percent cells, =A2*B2 with 50% and 20% returns 0.1, which shows as 10% in a percent-formatted cell.
To divide, =A2/B2 with 20% and 50% returns 0.4. Excel often carries the percent format across, so the cell may display 40%. The stored value is still 0.4, so check the format before reading the result. The Excel guide covers formatting, fill-down and absolute references.
Multiply and divide percentages examples
Example 1: 50% of 20%
Given
Step 1
Convert to decimals: 0.5 × 0.2 = 0.1, which is 10%.
Answer
Example 2: 30% of customers click and 40% of those buy
Given
Step 1
Click rate 30% and purchase rate 40% of clickers: 0.3 × 0.4 = 0.12
Answer
Example 3: 240 × 15%
Given
Step 1
0.15 × 240 = 36.
Answer
Example 4: two discounts, 20% then 10%
Given
Step 1
The prices multiply: 0.8 × 0.9 = 0.72.
Answer
Example 5: 20% ÷ 50%
Given
Step 1
20 ÷ 50 = 0.4.
Answer
Example 6: 200 ÷ 90%
Given
Step 1
200 ÷ 0.9 = 222.22
Answer
Example 7: a 30% share split four ways
Given
Step 1
30% ÷ 4 = 7.5% each.
Answer
Multiply and divide percentages code
Both versions return every result above. They parse the percent with the same rules as the calculators on this site, round to two decimal places by default and reject text, NaN, Infinity and a 0% divisor.
JavaScript
export function parsePercent(raw) { let s = String(raw).trim().replace(/%$/, "").trim(); if (/^[+-]?[1-9]\d{0,2}(,\d{3})+(\.\d+)?$/.test(s)) s = s.replace(/,/g, ""); else if (/^[+-]?\d*,\d+$/.test(s)) s = s.replace(",", "."); if (!/^[+-]?(\d+\.?\d*|\.\d+)$/.test(s)) throw new TypeError("percent must be a number"); return Number(s);}function fmt(x, places = 2) { const [m, e = "0"] = Number(Math.abs(x).toPrecision(15)).toExponential().split("e"); const r = Math.round(Number(`${m}e${Number(e) + places}`)); return String(Math.sign(x) * Number(`${r}e${-places}`) || 0);}export const multiplyPercents = (a, b, places) => fmt((parsePercent(a) * parsePercent(b)) / 100, places);export const multiplyByPercent = (n, p, places) => fmt((parsePercent(n) * parsePercent(p)) / 100, places);export function dividePercents(a, b, places) { const pb = parsePercent(b); if (pb === 0) throw new RangeError("cannot divide by 0%"); return fmt(parsePercent(a) / pb, places);}export function divideByPercent(n, p, places) { const pp = parsePercent(p); if (pp === 0) throw new RangeError("cannot divide by 0%"); return fmt((parsePercent(n) * 100) / pp, places);}Python
import refrom decimal import Decimal, ROUND_HALF_UPdef parse_percent(raw): s = re.sub(r"%$", "", str(raw).strip()).strip() if re.fullmatch(r"[+-]?[1-9]\d{0,2}(,\d{3})+(\.\d+)?", s): s = s.replace(",", "") elif re.fullmatch(r"[+-]?\d*,\d+", s): s = s.replace(",", ".") if not re.fullmatch(r"[+-]?(\d+\.?\d*|\.\d+)", s): raise ValueError("percent must be a number") return Decimal(s)def fmt(d, places=2): q = format(d.quantize(Decimal(1).scaleb(-places), rounding=ROUND_HALF_UP), "f") return q.rstrip("0").rstrip(".") if "." in q else qdef multiply_percents(a, b, places=2): return fmt(parse_percent(a) * parse_percent(b) / 100, places)def multiply_by_percent(n, p, places=2): return fmt(parse_percent(n) * parse_percent(p) / 100, places)def divide_percents(a, b, places=2): pb = parse_percent(b) if pb == 0: raise ZeroDivisionError("cannot divide by 0%") return fmt(parse_percent(a) / pb, places)def divide_by_percent(n, p, places=2): pp = parse_percent(p) if pp == 0: raise ZeroDivisionError("cannot divide by 0%") return fmt(parse_percent(n) * 100 / pp, places)multiplyPercents("50%", "20%") returns "10" and divideByPercent(200, "90%") returns "222.22". The JavaScript version trims floating-point noise to 15 significant digits before it rounds half away from zero, so it matches Python's Decimal on ties such as 1 × 1.5%, which is 0.015 and rounds to 0.02.
Privacy and input safety
Values are calculated in your browser. Nothing you enter is sent to a server or stored.
The fields accept numbers with an optional trailing % sign and a leading minus. Text, empty fields, NaN and Infinity are rejected with a message, and nothing you type is ever evaluated as code. A divisor of 0% is rejected because the result is undefined.
- A comma followed by exactly three digits is read as a thousands separator, so 1,200 is 1200. Any other comma is a decimal point, so 12,50 is 12.50, and a number starting with 0, such as 0,500, is read as a decimal. Mixed formats such as 1.234,5 and ambiguous entries such as 1,2,3 are refused instead of guessed. Spaces, including no-break spaces, between digit groups are ignored.
Common multiplying and dividing percentages mistakes
| Mistake | What goes wrong | What the calculator does |
|---|---|---|
| Multiplying the raw numbers | 50% × 20% as 50 × 20 gives 1,000% | Divides by 100 and returns 10% |
| Adding successive percentages | 20% off then 10% off is not 30% off | Multiplies 0.8 × 0.9 and shows 28% |
| Reading a quotient as a percent | 20% ÷ 50% is 0.4, not 0.4% or 40 | Returns 0.4 and says 20% is 40% of 50% |
| Multiplying when you should divide | 200 ÷ 90% as 200 × 90% gives 180 | Divides, giving 222.22 |
| Dividing by 0% | The result is undefined | Rejects the input with a message |
| Expecting a bigger percent | 10% × 10% is 1%, smaller than both | Shows the product and the decimal working |
Multiply vs divide vs percent of vs reverse percentage
| Operation | Formula | Example | Where to calculate it |
|---|---|---|---|
| Percent of a number | n × p ÷ 100 | 15% of 240 = 36 | Percentage calculator |
| Percent of a percent | a × b ÷ 100, as a percent | 50% of 20% = 10% | This guide |
| Number divided by a percent | n × 100 ÷ p | 200 ÷ 90% = 222.22 | Reverse percentage calculator |
| Percent divided by a percent | a ÷ b | 20% ÷ 50% = 0.4 | This guide |
| Successive changes | multiply the (1 ± p) factors | −20% then −10% = −28% | Percentage change calculator |
Multiplying by a percentage and finding a percent of a number are the same operation. Dividing by a percentage is the reverse of it, which is why it appears as reverse percentage elsewhere on the site.