Updates automatically as you type.
Calculated in your browser; your inputs are not sent to us. Privacy
Calculation details
Planning estimate only, not financial, tax, or legal advice. Verify assumptions and current rules before making decisions.
This tool runs in your browser. Your calculator inputs and results are never transmitted to us or to ad/affiliate partners. Ads and sponsored links may set third-party cookies to serve and measure them, but they never receive your calculation values. If you explicitly save a scenario, its permitted fields stay in local browser storage until you clear them. See our Privacy Policy.
Use this result
Share the current inputs or ask ChatGPT to explain the calculation in context.
More options
What does this calculator estimate?
Percent difference compares two independent measurements on a symmetric scale: |A − B| ÷ average × 100. Two readings of 180 and 220 differ by 20.00% — the same 20% whichever value you list first.
- Percent difference is directionless by design — it cannot tell you which value is larger, only how far apart they are.
- Percent change (before → after) and percent error (measured vs known-true value) are different questions with different formulas.
- The tool is undefined when both inputs are zero — there is no meaningful average to divide by.
Percent difference vs percent change vs percent error
The three measures are constantly confused because they all produce a percentage from two numbers. Percent difference treats both values as equal partners — two independent measurements of the same quantity — and divides by their average. Percent change has a direction: it divides the difference by the ORIGINAL value, so 180 → 220 is +22.2% while 220 → 180 is −18.2%. Percent error divides by the accepted or true value when one measurement is known to be the reference.
Pick by question: 'how far apart are these two instruments?' → percent difference. 'how much did it grow?' → percent change. 'how far off is my measurement from the standard?' → percent error.
Why the average denominator
Dividing by A alone would make the answer depend on which value you call A: 40/180 = 22.2% one way, 40/220 = 18.2% the other. Averaging gives one agreed answer for a pair of values with no natural 'first' value — that is what makes the measure fair for comparing two instruments, two labs, or two estimates.
The trade-off is asymmetry blindness: a 20% difference between a hand-measured 180 and a caliper-measured 220 tells you nothing about which one is off. When one value is a trusted reference, switch to percent error instead.
Boundary behavior
- Both inputs zero: undefined — the average is zero, and the tool reports an explicit 'Both zero' message rather than dividing by it.
- One input zero: defined. e.g. A = 0, B = 100 gives |0−100| ÷ 50 × 100 = 200%.
- Opposite signs: the average can be small or zero even with large values (−100 and 100 average to 0), producing an extreme or undefined result — a sign the symmetric measure is the wrong tool for those numbers.
- Negative values: the absolute-value difference is fine, but interpret with care; percent difference on signed quantities is rarely meaningful.
How this calculator works
Formula
Percent difference = |A − B| ÷ ((A + B) ÷ 2) × 100. The denominator is the average of the two values, which makes the measure symmetric — swapping A and B changes nothing.
Worked example
Two labs measure the same part as 180 mm and 220 mm. Difference is 40, average is 200, so percent difference = 40 ÷ 200 × 100 = 20.00%.
Assumptions to verify
- Both values are measurements of the same quantity with no known 'true' reference among them.
- The symmetric (average-denominator) convention is used, matching most statistics references.
- Both-zero input is reported as undefined rather than approximated.
Frequently asked questions
What is the percent difference formula?
Absolute difference divided by the average of the two values, times 100: |A − B| ÷ ((A + B)/2) × 100. Both values get equal weight.
How is it different from percent change?
Percent change divides by the starting value and carries a sign (growth or decline). Percent difference divides by the average and has no direction — 180 vs 220 is 20.0% either way, while the change from 180 to 220 is +22.2%.
When should I use percent error instead?
When one of the two numbers is a known or accepted value. Percent error = |measured − true| ÷ true × 100 — the denominator is the reference, not the average.
Why is my result over 100%?
That is normal for values far apart. For nonnegative inputs that are not both zero the result has a ceiling of 200%, so anything above 100% just means the two values differ by more than their average. A = 0, B = 100 gives 200%, the maximum rather than a value that keeps growing. Outside that range the ceiling breaks: A = 5 and B = -1 gives 300%, two unequal negative values come out negative, and equal nonzero values of either sign give 0%. Exact opposites such as A = 1 and B = -1 put zero in the average, so the result is undefined instead of large.
Does the order of inputs matter?
No. |A − B| and the average are both symmetric, so swapping the two values gives the identical result.
Why do both zeros give an error?
The denominator is the average, which is zero — division is undefined. The calculator shows an explicit message instead of a fake number.
Can I use it with negative numbers?
The math runs, but interpretation gets shaky — opposite-sign pairs can average near zero and explode the result. For signed quantities, percent change is usually the right measure.
Cite this tool
BoringToolsKit. “Percent Difference Calculator.” boringtoolskit.com/percent-difference-calculator/ (reviewed 2026-09-20). Free to reference in articles, syllabi, and answer posts with a link.
Privacy: Inputs and results stay in this browser. Any future sponsored recommendation or advertisement will be clearly labeled and kept separate from the calculation.
Worked example: two thermometers reading the same room
Two laboratory scales weigh the same 1 kg reference mass and read 0.990 kg and 1.010 kg. The absolute gap is |0.990 - 1.010| = 0.02 kg. The average is (0.990 + 1.010) / 2 = 1.000 kg, so the percent difference is 0.02 / 1.000 x 100 = 2.00%. That figure means something because mass is a ratio scale: zero mass is zero mass, so a ratio between two readings is a statement about the instruments rather than about a scale someone chose.
Compare the same two readings as percent change instead: from 0.990 up to 1.010 the change is (1.010 - 0.990) / 0.990 x 100 = +2.02%. The percent change is larger because it divides by the smaller starting value, and it carries a direction the difference does not. Running both on the same pair is the fastest way to see which framing your report needs.
The zero of the scale decides whether a percentage is meaningful at all. Celsius is an interval scale: 0 degrees C is a point on a scale, not an absence of temperature, so a percentage of a Celsius reading depends on a zero somebody chose. Two sensors reading 21.6 degrees C and 22.4 degrees C give 3.64% here but 0.27% once converted to Kelvin (294.75 K and 295.55 K). Same physical discrepancy, two percentages that differ by more than an order of magnitude, and neither one is a property of the instruments. Report the absolute gap in degrees, or move to an absolute scale first. Percent difference earns its keep on ratio scales such as mass, length, time, force, and resistance, where zero means zero.
The 180 vs 220 example, both ways
Two measures of the same quantity come back 180 and 220. Percent difference: |180 - 220| / ((180 + 220) / 2) x 100 = 40 / 200 x 100 = 20%. Percent change from the first reading to the second: (220 - 180) / 180 x 100 = +22.2%. The 2.2-point gap between the two framings has no deep meaning - it is purely which denominator the comparison uses.
The symmetric version has a hard ceiling rather than no ceiling. For two nonnegative values that are not both zero, 2|A - B| / (A + B) never exceeds 200%, and A = 0, B = 100 reaches that ceiling exactly: 200% is the maximum, not a value running away. The ceiling and the sign guarantee are properties of that range. Outside it they break: A = 5 and B = -1 gives 300%, past the ceiling, while A = -1 and B = -2 comes out at -66.7%, negative because those two values are unequal. Exact opposites are the case where the formula fails outright: A = 1 and B = -1 put zero in the average, so the result is undefined rather than large. Stay with nonnegative values that are not both zero and two properties hold, which is why this is the convention for side-by-side measurement comparisons: the result never goes negative, and it never depends on which value you entered first. That second property is not confined to nonnegative values. The expression is symmetric wherever the denominator is nonzero, so swapping A and B returns the same figure in any domain where the formula is defined at all. Trend statements still want percent change, which is directional.