FormulaMath
Calculate percent change between two values
Turn an old and a new value into a percent-change figure, guarded so a zero starting value shows blank instead of a #DIV/0! error.
Last updated
Fill in the blanks
Assembled in your browser — nothing you type is stored or sent anywhere.
Your formula
=IF(B2=0, "", (C2-B2)/B2)
Works in both Excel and Google Sheets unless the fine print below says otherwise.
Why it's built this way
- →The core of the formula is (new minus old) divided by old — the change expressed as a fraction of where it started, which is what "percent change" means; format the cell as a percentage rather than multiplying by 100 so negative changes still read correctly.
- →The IF check runs before the division, not after — testing old_value for zero and returning an empty string short-circuits the formula before it ever attempts to divide by zero.
The fine print
- →Without the IF guard, a zero (or blank, which Excel treats as zero here) old_value produces #DIV/0! — the guard exists specifically for that case.
- →The result is a raw decimal (0.15, -0.4); it needs percentage number formatting to display as 15% or -40% — formatting the cell as text would just show the decimal.
- →A negative old_value flips the sign in a way that reads confusingly (going from -50 to 50 computes as -200%) — worth a second look wherever the "old" figure can itself be negative.