ROI Calculator — Return & Annualised Return
Return on investment from what you put in and what you got back — the net gain, the ROI percentage, and the annualised rate so different holding periods are comparable.
Return on investment
Annualised return (CAGR)
Final value from a target ROI
What ROI measures
Return on investment answers a single, blunt question: for every pound (or dollar, or euro) you put in, how much did you get back? It is the great equaliser of business decisions, because it lets you compare a £200 advertising test with a £200,000 piece of equipment on the same scale. The formula is simply the net gain divided by the amount invested, as a percentage.
The three calculations
| Question | Method | Example |
|---|---|---|
| ROI | (final − initial) ÷ initial × 100 | (1300 − 1000) ÷ 1000 = 30% |
| Annualised (CAGR) | (final ÷ initial)^(1 ÷ years) − 1 | (1.3)^(1/5) − 1 = 5.39% |
| Final from a target ROI | initial × (1 + ROI ÷ 100) | 1000 × 1.30 = £1,300 |
Why annualised return matters
Simple ROI has one blind spot: time. A 30% return looks impressive until you learn it took eight years to earn, at which point it is a mediocre 3.35% a year — less than a savings account. The annualised figure spreads the return evenly across the holding period and is the number to use whenever you compare investments of different lengths, which is almost always.
What ROI does not capture
ROI is a ratio, not a risk measure. A 40% return that had a real chance of losing everything is not automatically better than a 15% return that was near-certain. ROI also ignores cash-flow timing within the period and any costs beyond the initial outlay — for those, a discounted cash-flow or net-present-value calculation is the right tool. Use ROI for a quick, comparable read on profitability, not as the whole decision.
A worked comparison
| Invested | Final value | Held | Total ROI | Annualised |
|---|---|---|---|---|
| 1,000 | 1,300 | 1 year | +30.00% | +30.00% |
| 1,000 | 1,300 | 3 years | +30.00% | +9.14% |
| 1,000 | 1,300 | 5 years | +30.00% | +5.39% |
| 1,000 | 1,300 | 8 years | +30.00% | +3.33% |
| 1,000 | 800 | 2 years | −20.00% | −10.56% |
| 1,000 | 2,000 | 7 years | +100.00% | +10.41% |
Every figure is the output of the same functions this page runs; the eight-year row is the one that usually changes a decision — a 30% gain sounds strong until it is spread over nearly a decade.
What goes into the two boxes
ROI is only as honest as its inputs, and the two inputs are not always the obvious numbers. The amount invested is the full cost basis: the price paid plus any commission, platform fee, stamp duty or transaction tax. Money spent upgrading the asset counts too, because it is capital that had to be committed to earn the return. The final value is what you would actually receive if you exited at that moment — net of selling fees and taxes, not a quoted price that assumes a free sale.
Keeping the convention identical across the investments you compare matters more than which convention you choose. An ROI that includes fees compared with one that ignores them is not a comparison; it is two different questions. Write the convention down once and apply it to every option in the table.
ROI, CAGR and IRR are not interchangeable
ROI is total gain over total cost, with no time dimension. CAGR (the annualised figure on this page) takes that total and spreads it into a constant yearly rate — the rate at which the money would have had to grow every year to reach the same endpoint. It still assumes no money was added or removed along the way. IRR is the general case: it works from a dated series of cash flows and solves for the rate that makes their net present value zero, so it can handle contributions, withdrawals and dividends.
The practical ranking is: use ROI for a first look, CAGR to compare holding periods, and IRR/XIRR whenever money moved during the period. Presenting CAGR as if it were IRR is a common way to make a fund with steady contributions look better than it was, because the extra money did not have the full period to compound.
Mistakes that change the answer
- Comparing a total ROI with an annualised one. “30% versus 9%” is not a comparison if one is over eight years and one is per year.
- Leaving out the costs of entering and exiting. Fees on both sides can turn a small nominal gain into a loss, especially on short holding periods.
- Using the peak value instead of the exit value. ROI is realised at the price you can actually sell at; a paper high is not a return until it is banked.
- Annualising over the wrong period. The exponent is years, not months. A six-month holding period is 0.5 years; entering 6 understates the annual rate badly — a 30% half-year gain is about 69% annualised, not 4.5%.
- Treating a negative annualised rate as impossible. It is simply the constant yearly rate of decline; see the loss row above.
Frequently asked questions
What is ROI?
Return on investment is the profit an investment makes, expressed as a percentage of what you put in: (final value − initial cost) ÷ initial cost × 100. Spend £1,000 and end with £1,300 and the ROI is (1300 − 1000) ÷ 1000 × 100 = 30%.
What is the difference between ROI and annualised ROI?
Simple ROI ignores how long the money was tied up, so a 30% return over one year and a 30% return over five years look identical. Annualised ROI (also called CAGR) converts the total return into a constant yearly rate, which is the only fair way to compare investments held for different periods. A 30% total return over five years is about 5.39% a year, not 30%.
How do I calculate annualised return?
Raise the growth factor to the power of 1 ÷ years and subtract 1: (final ÷ initial)^(1÷years) − 1, then multiply by 100. For £1,000 growing to £1,300 over five years: (1.3)^(1/5) − 1 = 5.39% a year.
Can ROI be negative?
Yes. If the final value is below the initial cost the ROI is negative — an investment of £1,000 that ends at £800 has an ROI of −20%. The calculator shows the sign, so a loss reads as a loss.
Is ROI the same as profit?
No. Profit is the absolute money made (final − initial); ROI expresses that profit as a percentage of the amount invested, which makes projects of different sizes comparable. The calculator shows both.
Should ROI include fees, taxes and inflation?
It should include every cost of making the investment and every cost of getting out of it. Put the full cost basis into “amount invested” — purchase price plus fees, commission and taxes — and the net proceeds into “final value”, after selling costs and taxes. Inflation is a separate question: a 30% nominal return over eight years is roughly 3.3% a year before inflation, and less than that in real terms.
Can I annualise a negative ROI?
Yes. The formula works as long as the final value is positive: £1,000 falling to £800 over two years is −20% in total and about −10.56% a year, because 0.8^(1/2) − 1 = −0.1056. The annualised figure is the honest way to describe a loss that took time to happen — −20% over one month and −20% over five years are very different outcomes.
How is ROI different from IRR?
ROI uses two numbers — what went in and what came out — and ignores when the money moved. IRR (internal rate of return) solves for the rate that makes the present value of all cash flows zero, so it accounts for money added or withdrawn partway through. If an investment has intermediate cash flows, ROI can be misleading; use XIRR or a cash-flow model instead.
What counts as a “good” ROI?
There is no universal number. A reasonable comparison is the return you could get on a similarly risky alternative, plus the cost of the risk you are taking. A 10% return that is nearly certain can be better than a 30% return that might lose the principal. Compare the annualised figure, not the total, and state the period and the risk alongside it.
What if I add money during the investment?
Two-number ROI cannot represent it: the extra contribution changes both the denominator and the timing. Split the investment into periods, or use IRR/XIRR, which is designed for a series of dated cash flows. Reporting a single ROI on a position that changed size in the middle overstates or understates the result depending on when the money arrived.
Is anything sent to a server?
No. Every calculation runs in your browser and nothing is uploaded.
Go deeper
Longer explanations of the problems this tool solves:
Everything runs in your browser — nothing you type is uploaded.