Cellwise Start free

Excel guide · 5 min read

How to calculate percent difference in Excel

Quick answerDivide the gap between the two values by their average: =ABS(B2-C2)/AVERAGE(B2,C2), then format the cell as Percent. Quotes of 240 and 260 are 8% apart, whichever one you list first. If one value is the "before" or the reference, use percent change instead: =(C2-B2)/B2.

Sample data

Every result on this page was calculated from this sheet by the same spreadsheet engine the Cellwise app uses.

ABCDEF
1ItemSupplier ASupplier BTolerance0.05
2Steel brackets (100)240260
3Hinges (50)8279.5
4Paint, 5 L6189
5Shipping045
6Install kit00
7Fasteners (1000)118118
8Rebate-5030

Download this sheet as an Excel practice file (.xlsx)

The percent difference formula

The sheet compares two suppliers' quotes for the same items. Neither quote is the starting point, so you want a single number for how far apart they are. Percent difference takes the gap, ignores its sign with ABS, and divides by the average of the two values.

Format the result as Percent (Home > Number > %) and add a decimal place if you need one. Writing the average out as (B2+C2)/2 gives the same result.

=ABS(B2-C2)/AVERAGE(B2,C2)

Result: 0.08 shows as 8.0% with Percent format

0.08, the 20 gap divided by the 250 average.

Percent difference vs percent change: which one you need

Percent change measures from a base: =(C2-B2)/B2 says Supplier B is 8.3% more expensive than Supplier A. Turn it around, =(B2-C2)/C2, and Supplier A is 7.7% cheaper than Supplier B. Both are correct; they answer different questions, because the base changes.

Percent difference has no base, so swapping the two values gives the same 8%. Use it for two values on equal footing: two quotes, two lab readings, two stores or two people measuring the same thing. Use percent change when one value is clearly first or is the reference: last year vs this year, budget vs actual, list price vs sale price.

The gap between the two grows with the size of the difference. For the paint, the quotes are 61 and 89: B is 45.9% more than A, A is 31.5% less than B, and the percent difference is 37.3%. If your manager asks "what's the percent difference?" but means "how much more did we pay?", they want percent change.

=(C4-B4)/B4

Result: 0.45901639344 shows as 45.9% with Percent format

0.459: Supplier B's paint is 45.9% more than Supplier A's. The percent difference for the same pair is 0.373.

Flag pairs that are too far apart

A common use is checking that two numbers agree within a tolerance, such as two counts of the same stock or two quotes before you approve one. Put the tolerance in a cell, here 5% in F1, and compare against it with a $-locked reference so you can fill the formula down.

Set the tolerance yourself based on what matters for your data; a 5% gap on fasteners and on a large equipment order are very different amounts of money. For large values, consider checking the absolute gap, C2-B2, as well.

=IF(ABS(B4-C4)/AVERAGE(B4,C4)>$F$1,"Check","OK")

Result: Check

Check, because the paint quotes are 37% apart. On the hinges row the same formula returns OK (3.1%).

Zeros: 200% and #DIV/0!

If one value is 0 and the other is not, percent difference is always 200%, however big the other value is. Shipping is 0 from Supplier A and 45 from Supplier B, and the result is 2, which shows as 200%. That is the correct math, but it carries no information about size, so report the absolute gap for those rows instead.

If both values are 0, the average is 0 and the formula returns #DIV/0!. Two zeros are identical, so 0% is the honest answer. Test for it explicitly rather than wrapping the formula in IFERROR, which would also hide text or other mistakes in the cells.

=IF(AND(B6=0,C6=0),0,ABS(B6-C6)/AVERAGE(B6,C6))

Result: 0

0 for the install kit, which both suppliers include free. Without the IF the result is #DIV/0!.

Negative values: the result stops making sense

When the two values have opposite signs, their average can be tiny, zero or negative. The rebate row compares a 50 credit (-50) with a 30 charge. The average is -10, so the formula returns -8, which would show as -800%. A negative percent difference is meaningless, and a slightly different pair could divide by zero.

For data that can be negative, such as profit, temperature or net cash, do not use percent difference. Report the absolute difference instead (here 80), or use percent change from a positive base if one value is the reference. You will find a variant online that divides by the average of the absolute values, AVERAGE(ABS(B8),ABS(C8)); it avoids the negative result, but it is not a standard definition, so label it clearly if you use it.

=ABS(B8-C8)/AVERAGE(B8,C8)

Result: -8

-8, which would show as -800%. This is why percent difference is only used for positive values.

The whole column at once

In Excel 365 and 2021 you can write the formula once for all rows. It spills down: 0.08, 0.031, 0.373, 2 (the zero row), #DIV/0! (both zeros) and 0 (identical quotes). In older versions, write the row 2 formula and fill it down; the references are relative, so each row compares its own pair.

=ABS(B2:B7-C2:C7)/((B2:B7+C2:C7)/2)

Result: spills 6 rows × 1 column

0.08
0.030959752322
0.37333333333
2
#DIV/0!
0

A column of six results starting with 0.08 (8.0%). Use the AND test from the zeros section if you need the both-zero row to show 0.

Common mistakes

Using percent difference when one value is the baseline

For before/after, budget/actual or old/new, use percent change, =(new-old)/old. It tells the reader the direction and the size relative to the base.

Forgetting ABS

Without it the sign depends on which value you list first, and a negative percent difference is confusing. Wrap the subtraction in ABS.

Dividing by one value instead of the average

=ABS(B2-C2)/B2 is a percent change in disguise and gives a different answer if you swap the columns. Divide by AVERAGE(B2,C2).

Hiding #DIV/0! with IFERROR

It also hides text in the cells and other errors. Test for both values being 0 with IF(AND(...)) instead.

FAQ

What is the formula for percent difference in Excel?

=ABS(A2-B2)/AVERAGE(A2,B2), formatted as Percent. It is the gap between the values divided by their average, so the order of the two values does not matter.

What is the difference between percent difference and percent change?

Percent change measures from a starting value and has a direction, so swapping the values changes the answer. Percent difference compares two equal values without a base and is always positive.

Why does my percent difference show 200%?

One of the two values is 0. With one zero, the formula always gives exactly 200%, so for those rows the absolute difference is more useful.

How do I calculate the percentage difference between two percentages?

For two rates such as 4% and 5%, the plain subtraction (1 percentage point) is usually what people want. Percent change from 4% to 5% is 25%, and percent difference is about 22%; say which one you are reporting.

Functions used

Related guides

Updated