CAGR — compound annual growth rate — is the single yearly rate that would take an investment from its starting value to its ending value if it grew steadily every year. It is the standard, like-for-like way to compare funds, stocks, crypto, property or a business metric such as revenue across different time spans, because it strips out the noise of lumpy year-to-year returns and reports one clean number.
This calculator turns three inputs — a beginning value, an ending value and a number of years — into the CAGR, and goes further than a bare percentage. It also shows the total return over the whole period, the growth multiple (how many times your money grew), the years-to-double at that rate, and an optional contribution-adjusted rate for when you also drip-fed money in. The full working is printed step by step, and a chart draws the idealised smooth-growth curve so you can see what steady compounding at your rate looks like. Pick from several currencies or choose a neutral no-symbol mode — every input is a number you type, so there are no live market or exchange-rate lookups anywhere.
How it works
The calculator applies the CAGR formula, where the growth multiple is the ending value divided by the beginning value:
CAGR = (Ending ÷ Beginning)^(1 ÷ years) − 1
That result is shown as a percentage per year. Total return is the simpler ratio
(Ending ÷ Beginning − 1) × 100, and years-to-double comes from
ln(2) ÷ ln(1 + CAGR). CAGR is always lower than a naive average of yearly returns
whenever those returns swing around, because it bakes in compounding and the order
of gains and losses.
When you fill in the optional added-per-year field, the tool can no longer use a closed-form formula, so it solves numerically: it finds — by bisection — the annual rate that grows your starting balance plus each year-end deposit up to exactly the ending value. That contribution-adjusted figure is a money-weighted estimate and is usually a fairer measure of how your own choices performed than the plain CAGR.
Worked example
Suppose a portfolio grew from 10,000 to 26,000 over 7 years with no money added or removed:
- Growth multiple =
26,000 ÷ 10,000 = 2.6 - CAGR =
2.6^(1 ÷ 7) − 1 = 2.6^0.142857 − 1 ≈ 0.1459 - CAGR ≈ +14.59% per year
- Total return = +160%, and it would double about every 5.1 years
Now suppose you also added 2,000 each year over those 7 years. That extra cash helped reach 26,000, so the rate your original picks actually earned is lower — the contribution-adjusted CAGR drops to roughly 8%, a far more honest read on performance.
| Beginning | Ending | Years | CAGR |
|---|---|---|---|
| 10,000 | 20,000 | 10 | 7.18% |
| 10,000 | 26,000 | 7 | 14.59% |
| 10,000 | 18,000 | 5 | 12.47% |
| 5,000 | 4,000 | 3 | −7.17% |
Formula note: raising a ratio to a fractional power is only defined for a positive beginning value and a non-zero number of years, which is why the tool asks for valid inputs before it computes. Plain CAGR deliberately ignores interim deposits and withdrawals — for cash flows in and out over time, use the contribution-adjusted mode here or a full internal rate of return (IRR).
Every figure is calculated in your browser, so your numbers stay completely private.