Investment Return Calculator
What a portfolio returned each year — measured properly when contributions arrived along the way, rather than flattered by comparing the first balance to the last.
The address carries whatever you changed, so anyone opening it sees these numbers. Nothing is saved on our side.
Annual return
8.05%
Money-weighted, because contributions arrived along the way. Simply comparing the first and last balance would claim 27.3%, most of which is your own money rather than growth.
- $70,000
- $42,000
- 60%
- Over the whole period
- $21,694
- At this annual return
How much of the balance is yours
The part you paid in is not a return. Separating the two is the whole difference between a real performance figure and a flattering one.
- Money you put in63%$70,000
- Growth38%$42,000
- Value today$112,000
Why this is not (end ÷ start)
With money arriving every month, the first and last balance are not comparable — the later contributions had less time to work.
- Money-weighted return
- 8.05%
- Comparing the two balances alone
- 27.33%
- Total return over the period
- 60%
How this calculator works
Two different formulas, and the calculator picks the one that fits what you entered.
With nothing added along the way
CAGR = (end ÷ start)1/years − 1
With monthly contributions
There is no closed form, so the calculator searches for the monthly rate i that satisfies
end = P(1+i)m + C · ((1+i)m−1) ÷ i
by bisection. The balance rises strictly with the rate, so halving the bracket always converges — 200 halvings lands far past the precision of any input, and it cannot diverge the way a Newton solver can.
What is assumed
- Contributions were equal and monthly. Irregular investing needs a full cash-flow IRR, which this is a simplification of.
- Nothing was withdrawn.
- No tax and no fees beyond whatever is already reflected in the value you enter.
Why the distinction matters
$10,000 to start, $500 a month for ten years, ending at $111,651.
| Paid in | $10,000 plus $500 × 120 months |
|---|---|
| Value today | What the account is worth |
| Comparing the two balances | (111,651 ÷ 10,000) ^ (1/10) − 1 |
| Money-weighted return | The rate that fits the timing |
The naive figure is more than three times the real one. It is not a rounding difference or a technicality — nearly two thirds of that balance is money the investor deposited, and treating it as growth would turn an ordinary result into a spectacular-looking one.
Questions people ask
Because that answer ignores when the money arrived. A dollar invested twelve years ago has had twelve years to grow; a dollar invested last month has had one. Dividing the totals treats them as identical, which inflates the apparent return whenever contributions were made along the way. This calculator solves for the rate that actually reconciles the timing.
The single annual rate that, applied to every contribution from the day it arrived, produces the balance you have today. It is an internal rate of return. It answers 'what did my money earn', which is the question an investor is asking about their own account.
When judging a fund or a manager rather than your own account. A time-weighted return strips out the effect of deposits and withdrawals, because the manager did not choose when you added money. Comparing your money-weighted return to a fund's published time-weighted return is comparing two different things — the gap is usually your own timing, not the fund's performance.
Only if they stayed in the account. Enter the current value including reinvested dividends and they are counted automatically. If you took dividends out as cash, add them to the value today, otherwise the calculator will read them as a loss.
Whichever you want the answer in, as long as you are consistent. A return calculated from pre-tax values is a pre-tax return. For a taxable account, the after-tax figure is the one that reflects what you actually keep.
Growing what you save
Retirement CalculatorWhether your savings last as long as you doRelated calculators
A measure of what has already happened, not a prediction. Past return is not a guide to future return.