How to Calculate Percentage Increase in Excel (Complete Guide)
Working out percentage increase is one of the most common jobs in any spreadsheet: last month against this month, budget against actual, last year's headcount against today's. Tracking sales growth, measuring how a price moved across two months, or comparing two figures from different quarters all come down to the same calculation. Excel handles it with one short formula, and calculating percentage change takes about ten seconds once the pattern is familiar. For any company that reports on movement over time, understanding this formula is vital.
The Fastest Method: One Formula and One Shortcut
To calculate percentage increase, use the formula to compare the original value with the new value, subtract the original value from the new value, then divide the difference by the original value.
Assume the original number sits in B2 and the new value sits in C2. Click an empty cell, type the following, and press Enter:
=(C2-B2)/B2
Excel returns a decimal such as 0.25. To convert that answer into a percentage, keep the cell selected and press Ctrl + Shift + %, the Percent Style shortcut. The cell immediately displays 25%, which means the value grew by 25 percent. Note the parentheses around the subtraction: they force Excel to work out the difference before it divides, and removing them produces the wrong result.
That is the whole calculation. Everything below covers the alternative routes, the variations for specific situations, and the common errors that appear along the way.
Percentage work rarely arrives on its own. Most reports that measure growth also involve subtracting dates in Excel to build the comparison periods, and many analysts reach for the percentage change formula when the figure can move in either direction. Once the percentage values are in place, sorting the data surfaces the biggest movers at the beginning of the sheet.
Presentation matters as much as the math. A growth column reads far more clearly when the header row stays visible, which is where freezing panes helps, and when the summary line stands apart from the raw figures using cell borders or a merged and centered title.

Method 2: Apply Percentage Formatting From the Ribbon
The keyboard shortcut and the ribbon button do the same thing, so use whichever fits the process better. This step-by-step guide covers the ribbon route:
- Select the cell or range holding the decimal result.
- Open the Home tab.
- In the Number group, click the % icon, known as the Percent Style button.
- Click Increase Decimal once or twice for figures such as 25.4% or 25.38%.
The Number Format dropdown in the same group lists Percentage as a menu entry, which applies two decimal places by default.

Method 3: Right-Click and Use Format Cells
The right-click route gives the most control over how the percentage is expressed.
- Right-click the cell or range.
- Choose Format Cells, or press Ctrl + 1.
- Select Percentage in the Category list.
- Set Decimal places to the required precision.
- Click OK.
For a report where a percentage decrease needs to stand out, choose Custom instead and enter a format string such as 0.0%;[Red]-0.0%. A positive result then appears in black while a negative result appears in red automatically.

Method 4: The Ratio Version of the Percent Change Formula
A second formula produces an identical answer with less typing:
=C2/B2-1
Dividing the new value by the original value gives the growth factor, and subtracting 1 strips out the original 100 percent. Both versions calculate percent change identically, and finance teams often prefer this one because it mirrors how growth factors appear in their models.
Method 5: Percentage Decrease Uses the Same Formula
The same formula handles movement in both directions. Where the new value is smaller than the original, =(C2-B2)/B2 returns a negative number, and Excel displays it with a minus sign such as -12.5%. Sales that fall from 400 to 350 calculate as a 12.5 percent decrease.
Reporting a decrease as a plain positive figure calls for the ABS function:
=ABS((C2-B2)/B2)
The same procedure applies to every row in the column, so a single formula covers both increases and decreases across a full data set.
Method 6: Applying a Known Percentage Increase to a Value
Sometimes the percentage is already fixed, and the target figure is what needs working out. To raise the value in B2 by 15 percent:
=B2*1.15
Or, with the percentage stored in its own cell such as C2:
=B2*(1+C2)
The second form is the better habit, because the increase becomes a single editable input rather than a number buried inside dozens of formulas. Storing rates in one place also pairs well with a validated input cell, which is why many templates use a dropdown list for the rate.
Method 7: Copy the Formula Down a Whole Column
Growth calculations almost always run down a list rather than sitting in one cell.
- Fill handle: select the first result cell, then drag the small square at its bottom-right corner down the column.
- Double-click: double-click that same square and Excel fills to the bottom of the adjacent data automatically.
- Keyboard: select the range starting at the formula cell and press Ctrl + D.
Excel adjusts the cell references relative to each row as it fills. Where every row compares against one fixed baseline, lock those cell references with dollar signs so they stay put:
=(C2-$B$2)/$B$2
Pressing F4 while the cursor sits on a reference in the formula bar cycles through the absolute and mixed variants.
Method 8: Structured References in an Excel Table
Converting the range into a table with Ctrl + T replaces cell letters with column names:
=([@[This Year]]-[@[Last Year]])/[@[Last Year]]
Tables carry two practical advantages. The formula copies itself into any new row added at the bottom, and the column names survive insertions and reordering. On a long comparison sheet, tables pair naturally with grouped columns so quarterly detail can collapse behind a summary.
Method 9: Paste Special to Increase Existing Numbers
To raise a block of existing figures by a fixed percentage without adding a formula column:
- Type the multiplier into a blank cell, for example 1.10 for a 10 percent increase.
- Copy that cell with Ctrl + C.
- Select the range to update.
- Press Ctrl + Alt + V to open Paste Special.
- Choose Multiply under Operation, then click OK.
- Delete the helper cell.
Excel will multiply every selected value in place and overwrite the originals, so run this on a copy of the Excel sheet if the source numbers still matter.
Method 10: A VBA Macro for Repeat Reports
Teams that rebuild the same report every week can push the calculation into a macro. Press Alt + F11, insert a module, and paste the following:
Sub PercentIncrease()
Dim lastRow As Long, i As Long
lastRow = Cells(Rows.Count, "B").End(xlUp).Row
For i = 2 To lastRow
If IsNumeric(Cells(i, 2).Value) And Cells(i, 2).Value <> 0 Then
Cells(i, 4).Value = (Cells(i, 3).Value - Cells(i, 2).Value) / Cells(i, 2).Value
Cells(i, 4).NumberFormat = "0.0%"
End If
Next i
End Sub
Column B holds the original, the new value is in column C, and column D receives the formatted result. Run the macro with Alt + F8. Files containing macros must be saved as .XLSM.
Percentage Increase Compared With Percentage Difference
Percentage increase and percentage difference answer separate questions, and mixing them up is one of the quieter mistakes in reporting. Percentage increase treats the first figure as the baseline. Percentage difference compares two numbers where neither one came first, such as two survey results or two branch totals:
=ABS(B2-C2)/AVERAGE(B2,C2)
Because the denominator is the average of the two figures rather than the original number, the answer differs from a percentage increase on the same pair of values. Use increase for anything measured over time, and difference for side-by-side comparisons.
Common Errors and Troubleshooting
The result reads 2500% instead of 25%. The cell already held a percentage value before the format was applied, or the formula ended in 100 and Percent Style multiplied it a second time. Remove the 100 and let the number format handle the conversion.
#DIV/0! appears. The original value is zero or blank, and a percentage increase from zero is mathematically undefined. Wrap the formula to keep the sheet readable:
=IF(B2=0,"n/a",(C2-B2)/B2)
Results look wrong where the original number is negative: Growth from a negative baseline produces figures that reverse sign in confusing ways. A loss of 100 moving to a profit of 50 calculates as negative 150 percent, which describes the direction poorly. Report the absolute change in those rows, or flag them separately.
The cell shows 0.25 and refuses to change: The cell is formatted as Text. Set it back to General through Format Cells, then re-enter the formula.
The formula displays as text instead of a result - A leading space or apostrophe before the equals sign prevents evaluation. Delete it and press Enter again.
Imported numbers refuse to calculate - Values stored as text align to the left by default. Select the column, open Data > Text to Columns, and click Finish to convert the whole range at once.
Rounded percentages fail to sum correctly. The displayed figure is rounded while the underlying value keeps its full precision. Use =ROUND((C2-B2)/B2,3) where the stored value itself has to match the report.
Averaging monthly increases gives the wrong annual growth. Percentages compound rather than add. The RRI function returns the correct compound rate:
=RRI(12,B2,C2)
Calculating Percentage Increase Programmatically
Manual formulas work well for one report. Where the same calculation has to run across hundreds of files, or inside a scheduled job that nobody sits and watches, the work belongs in code. IronXL writes and formats Excel files from C# with no Microsoft Office installation required.
using IronXL;
WorkBook workbook = WorkBook.Load("sales.xlsx");
WorkSheet sheet = workbook.DefaultWorkSheet;
for (int row = 2; row <= 100; row++)
{
decimal oldValue = sheet[$"B{row}"].DecimalValue;
decimal newValue = sheet[$"C{row}"].DecimalValue;
if (oldValue != 0)
{
sheet[$"D{row}"].Value = (newValue - oldValue) / oldValue;
sheet[$"D{row}"].FormatString = "0.0%";
}
}
workbook.SaveAs("sales-with-growth.xlsx");
using IronXL;
WorkBook workbook = WorkBook.Load("sales.xlsx");
WorkSheet sheet = workbook.DefaultWorkSheet;
for (int row = 2; row <= 100; row++)
{
decimal oldValue = sheet[$"B{row}"].DecimalValue;
decimal newValue = sheet[$"C{row}"].DecimalValue;
if (oldValue != 0)
{
sheet[$"D{row}"].Value = (newValue - oldValue) / oldValue;
sheet[$"D{row}"].FormatString = "0.0%";
}
}
workbook.SaveAs("sales-with-growth.xlsx");
Imports IronXL
Dim workbook As WorkBook = WorkBook.Load("sales.xlsx")
Dim sheet As WorkSheet = workbook.DefaultWorkSheet
For row As Integer = 2 To 100
Dim oldValue As Decimal = sheet($"B{row}").DecimalValue
Dim newValue As Decimal = sheet($"C{row}").DecimalValue
If oldValue <> 0 Then
sheet($"D{row}").Value = (newValue - oldValue) / oldValue
sheet($"D{row}").FormatString = "0.0%"
End If
Next
workbook.SaveAs("sales-with-growth.xlsx")
The same library reads existing workbooks, applies formulas, and saves to XLSX, XLS, CSV, or JSON, which covers most reporting pipelines that currently depend on someone opening a file by hand.
Conclusion
The knowledge needed here is compact. To calculate the percentage change in Excel, use =(C2-B2)/B2 and apply percentage formatting through the Ctrl + Shift + % key combination, the Home tab, or the Format Cells dialog. As the first example showed, the same formula covers both an increase and a decrease, and the variations suit specific situations: =B2*(1+C2) where the rate is known, Paste Special Multiply where existing values need updating in place, structured references where the data lives in a table, and RRI where growth compounds. A little practice with zero and negative baselines is worth the time, since those two cases produce most of the errors that reach a finished report.
For sheets that grow into full reports, the finishing touches matter: freeze the header row so labels stay in view while scrolling, add a scatter plot to display the trend visually, and set printing gridlines before the file heads into a meeting. Where the whole process needs to repeat on a schedule, IronXL offers a free trial for automating it end to end.




