Inflation is the rate at which the general level of prices for goods and services is rising, and, subsequently, purchasing power is falling. Central banks attempt to limit inflation, and avoid deflation, in order to keep the economy running smoothly.
How This Calculator Works
This inflation calculator uses the geometric growth formula to determine how much a specific amount of money from a past year would be worth in a future year based on a consistent annual inflation rate. The formula used is:
FV = PV × (1 + r)n
FV: Future Value (Purchasing power in the target year)
PV: Present Value (The starting amount of money)
r: Annual Inflation Rate (decimal format)
n: Number of years between the start and target year
Real-World Inflation Example
Suppose you want to know what $1,000 in 1990 would be worth in 2020, assuming an average annual inflation rate of 2.5%.
Starting Amount: $1,000
Time Span: 30 years (2020 – 1990)
Rate: 0.025 (2.5%)
Calculation: $1,000 × (1 + 0.025)30 ≈ $2,097.57
In this scenario, you would need $2,097.57 in 2020 to have the same "buying power" that $1,000 gave you in 1990.
Why Track Inflation?
Tracking inflation is vital for long-term financial planning, particularly for retirement. If your savings are not growing at a rate higher than inflation, your actual wealth is decreasing even if the nominal balance remains the same. Most economists consider a 2% annual inflation rate to be a sign of a healthy, growing economy.
function calculateInflationResult() {
var pv = parseFloat(document.getElementById('initialAmount').value);
var startYear = parseInt(document.getElementById('startYear').value);
var endYear = parseInt(document.getElementById('endYear').value);
var rate = parseFloat(document.getElementById('avgRate').value);
var resultBox = document.getElementById('inflationResultBox');
var finalValueDisplay = document.getElementById('finalValue');
var displayEndYear = document.getElementById('displayEndYear');
var summary = document.getElementById('inflationSummary');
if (isNaN(pv) || isNaN(startYear) || isNaN(endYear) || isNaN(rate)) {
alert("Please enter valid numbers in all fields.");
return;
}
var n = endYear – startYear;
if (n < 0) {
alert("Target year must be greater than or equal to the start year.");
return;
}
var r = rate / 100;
var fv = pv * Math.pow((1 + r), n);
var totalIncreasePercent = ((fv – pv) / pv) * 100;
displayEndYear.innerText = endYear;
finalValueDisplay.innerText = "$" + fv.toLocaleString(undefined, {minimumFractionDigits: 2, maximumFractionDigits: 2});
summary.innerHTML = "Over " + n + " years, a " + rate + "% annual inflation rate results in a total price increase of " + totalIncreasePercent.toLocaleString(undefined, {maximumFractionDigits: 2}) + "%. This means $1.00 in " + startYear + " has the equivalent buying power of $" + (fv/pv).toFixed(2) + " in " + endYear + ".";
resultBox.style.display = "block";
}