Percentage Change Calculator: Show Which Number Is the Starting Point

A guide grows from 20 pages to 25 pages: a 25% increase. Reverse the comparison, from 25 pages to 20, and it becomes a 20% decrease.

The five-page difference did not change in size. The denominator did.

That is the first thing a percentage change calculator should make clear. Label the original value and the new value, show the signed difference, and keep the original denominator beside the result. A number without those details can hide a reversed comparison or an undefined calculation.

The guide in this article is a fictional example. Its page counts illustrate the calculation; they say nothing about an actual publication or whether a longer guide is better.

Percentage change
Percentage change
Open the full example ↗

Declare what is being compared

Before entering values, write a comparison record:

Field Original worked example
Quantity Page count of the same fictional guide
Original value 20 pages
New value 25 pages
Common basis Same definition of a counted page in both versions
Intended question How large is the change relative to the original page count?
Interpretation limit No conclusion about quality, completeness, or usefulness

Use the same unit and counting rule on both sides. If one number includes cover pages and the other excludes them, resolve that mismatch before reporting a change. For other comparisons, record the metric definition, group or cohort, and relevant period. A calculator cannot infer that two supplied numbers are comparable.

With a positive original value, the signed formula is:

Percentage change = 100 × (new − original) / original.

OpenStax describes percent increase and decrease as changes measured against the original amount. This worked record uses one signed expression to retain direction. OpenStax, Solve General Applications of Percent.

For the guide, new minus original is 25 − 20 = +5 pages. Divide by 20 pages to obtain 0.25, then multiply by 100: +25%. The complete statement is “The page count increased by 25% relative to the original 20 pages.”

Reverse the values, then recalculate

Reversing a comparison changes the starting point. It does not just negate the percentage already displayed.

Original → new Signed page difference Original denominator Relative change
20 → 25 +5 20 +25%
25 → 20 −5 25 −20%
20 → 20 0 20 0%
20 → 0 −20 20 −100%

The reverse calculation is 100 × (20 − 25) / 25 = −20%. Use Reverse to swap the actual input values and recalculate using the new original denominator. A control that merely changes +25% to −25% gives the wrong answer.

Keep the signed difference too. It answers “how many pages changed?” while the percentage answers “how large was that change relative to the starting count?” Neither replaces the other.

Keep a zero baseline visible without inventing a percentage

Zero is a valid page count, but it cannot serve as the denominator of this relative-change formula.

Original → new Signed page difference Relative change
0 → 5 pages +5 pages Undefined: original is zero
0 → 0 pages 0 pages Undefined: original is zero

For 0 → 5, you can report that five pages were added. You cannot calculate this percentage change by dividing by zero. For 0 → 0, the signed page difference is zero, but the relative expression still contains division by zero. Do not replace it with 0%.

Make this a distinct result state: “Relative change undefined because the original value is zero,” with the valid signed difference retained. A blank field is different: there is no supplied value to compare, so it is an input error and should produce no calculated result.

Separate percentage points from relative percentage change

Suppose two fictional rate values are 50% and 60%, using a declared common metric basis. The direct gap is +10 percentage points: 60 − 50.

The relative change is +20%: 100 × (60 − 50) / 50. It measures the ten-point gap against the original rate of 50%. It is not a twenty-percentage-point increase.

A rate comparison record should therefore show both labels:

  • Original rate: 50%; new rate: 60%.
  • Signed gap: +10 percentage points.
  • Original denominator for relative change: 50.
  • Relative change: +20%.

When entering these examples into a tool, use percentage values consistently: 50 and 60, with a visible “percentage values” mode label. Do not enter 0.50 on one side and 60 on the other. The worked values are arithmetic examples; they do not establish the underlying populations, collection method, or an actual measured outcome.

Require valid entries and clear old answers

This example accepts nonnegative finite inputs no greater than 1000000, with up to six digits after a US decimal point. Negative baselines are outside its chosen scope. Blank fields, negative entries, nonfinite values, commas, scientific notation, and excess fractional digits should show specific input errors.

These limits describe the tool design, not universal mathematical restrictions. A valid original value of zero enters the undefined-relative-change state; an invalid entry enters the error state.

Clear the previous result when an input or mode changes. For example, after displaying +25% for 20 → 25, clearing the original field must remove that answer. Show a new result only after validating the new entries. Keep the entered values and full derivation available, and label shortened displays as rounded when needed. Calculate from the supplied values, not from a previous rounded answer.

Copy this prompt for a local comparison tool

Create an original self-contained offline HTML percentage change
calculator in US English, with all necessary local code in one file.
No network requests, storage, accounts, imports, exports, grading,
financial/medical guidance, or claims that an increase is improvement.

Inputs: original value, new value, common unit/metric description,
and comparison-basis note. Label original and new explicitly.
Provide quantity mode and percentage-values mode. In percentage
mode, enter 50 for 50%, not 0.50; display this instruction clearly.
Do not infer comparability or real-world meaning from the numbers.

Accept finite nonnegative US dot-decimal values <= 1000000 with
up to six fractional digits. Reject blank, negative, nonfinite,
comma-formatted, scientific-notation and excess-digit entries.
These are original tool-scope choices. Parse supplied decimal text
exactly for calculation, using integer/rational arithmetic.

For validated inputs show:
- Original and new values, unit, and basis note.
- Signed difference new minus original, preserving direction.
- Explicit original denominator.
- Relative change 100 * (new - original) / original when original > 0.
- Plain-text derivation and exact or rounded display labels.

If original is zero, retain the valid signed difference and show
relative change as undefined, never zero or infinity. This is a
distinct state from invalid input. On input/mode changes clear the
old result. Errors produce no stale or partial calculated result.
Round displays to at most six fractional places when necessary,
with ties away from zero; label approximate, trim trailing zeros,
and prevent negative zero. Keep source entries and formula visible.

In percentage-values mode label the signed direct gap as percentage
points and the relative result as percent. Do not confuse them.
Add Reverse: swap the actual original/new inputs and recalculate
with the new original denominator, rather than negating the result.
Use labeled controls, keyboard operation, visible focus, accessible
error/state messages and readable narrow-screen layout.

Worked checks, using fictional page counts unless marked rates:
20 -> 25: +5 pages / 20 => +25%.
25 -> 20: -5 pages / 25 => -20%.
20 -> 20: 0 pages => 0%.
20 -> 0: -20 pages => -100%.
0 -> 5: +5 pages, relative change undefined.
0 -> 0: 0 pages, relative change undefined.
Rates 50% -> 60%: +10 percentage points and +20% relative change.
Blank, negative and nonfinite entries: errors, no old result.

Return the complete file and manual checks for reversal, zero
baseline, input clearing, boundaries and rate-label distinction.
Do not claim it was tested unless actually run. Include a plain-text
worked comparison record readers can retain in their chosen format.

After generating a tool, test the reverse and zero-baseline cases before relying on its displayed answer. In your written comparison, retain the original value, new value, signed difference, denominator, and common basis. That record makes the percentage reproducible rather than merely plausible.

Show the denominator beside the answer in NOS

NOS can save and render prepared HTML. A comparison companion can put the two inputs, original denominator, signed difference, and derivation together. That arrangement helps another reader see why reversing 20 and 25 changes the answer.

Check any generated local controls against the worked cases, and keep the original source values and plain-text comparison record available. Explore NOS.

Keep reading