How to Calculate Compounded Annual Growth Rate

CAGR Calculator (Compounded Annual Growth Rate)

Compounded Annual Growth Rate

What is CAGR and How to Calculate It?

The Compound Annual Growth Rate (CAGR) is one of the most accurate ways to determine returns for anything that can rise or fall in value over time. Unlike a simple average growth rate, CAGR accounts for the effect of compounding, providing a "smoothed" annual rate of return.

The CAGR Formula

CAGR = [(Ending Value / Beginning Value)^(1 / Number of Years)] – 1

Why Use CAGR Instead of Average Growth?

Investments rarely grow at a steady rate. A stock might go up 20% one year, down 10% the next, and up 5% the following. If you simply average these, you get 5%. However, that doesn't account for the fact that the 10% loss happened on a larger base than the initial investment. CAGR tells you what the steady annual growth rate would have been if the investment had grown at the same rate every year.

Practical Example

Suppose you invested 10,000 in a portfolio and after 5 years, the portfolio is worth 16,105.

  • Step 1: Divide Ending Value by Beginning Value: 16,105 / 10,000 = 1.6105
  • Step 2: Raise that to the power of 1/n (1 / 5 years = 0.2): 1.6105^0.2 ≈ 1.10
  • Step 3: Subtract 1: 1.10 – 1 = 0.10
  • Result: 10% CAGR

Limitations of CAGR

While CAGR is an excellent tool for comparing different investments, it has limitations:

  • Ignores Volatility: It doesn't tell you how "bumpy" the ride was, only the start and end points.
  • No Cash Inflows/Outflows: It assumes no money was added or withdrawn during the period. For that, you would need to calculate Internal Rate of Return (IRR).
function calculateCAGR() { var bv = parseFloat(document.getElementById('beginningValue').value); var ev = parseFloat(document.getElementById('endingValue').value); var n = parseFloat(document.getElementById('numYears').value); var resultDiv = document.getElementById('cagrResult'); var valueDiv = document.getElementById('cagrValue'); var summaryDiv = document.getElementById('cagrSummary'); if (isNaN(bv) || isNaN(ev) || isNaN(n) || bv <= 0 || n <= 0) { alert("Please enter valid positive numbers. Beginning value and years must be greater than zero."); return; } if (ev < 0) { alert("Ending value cannot be negative for CAGR calculation."); return; } // CAGR Formula: [(Ending Value / Beginning Value) ^ (1 / Number of Years)] – 1 var cagrRaw = Math.pow((ev / bv), (1 / n)) – 1; var cagrPercentage = (cagrRaw * 100).toFixed(2); var totalGrowth = (((ev / bv) – 1) * 100).toFixed(2); resultDiv.style.display = "block"; resultDiv.style.backgroundColor = "#e8f6ed"; resultDiv.style.border = "1px solid #27ae60"; valueDiv.innerHTML = cagrPercentage + "%"; summaryDiv.innerHTML = "An investment that grew from " + bv.toLocaleString() + " to " + ev.toLocaleString() + " over " + n + " years has a total growth of " + totalGrowth + "%."; }

Leave a Comment