Skip to content
FinToolSuite
Updated 2026-08-24 · Investing · Educational use only ·
Privacy

IRR Calculator

Annualised rate that balances a cash flow stream.

Solves for the annual rate at which an outlay, a level cash flow and a terminal value net to zero, with the multiple and the undiscounted payback.

What this tool does

This calculator solves for the internal rate of return: the annual rate at which an initial outlay, a level annual cash flow and a terminal value net to zero in present value terms. Alongside the rate it reports the total cash returned, the multiple on invested capital, the undiscounted payback in years from the annual flow alone, and how much of the total return comes from the terminal value rather than the flows. The rate depends only on the ratios between the three amounts and the term, so it is unchanged by scale and by currency. The model covers one outflow, equal annual receipts and a single exit value; uneven flows, mid-year timing, further outflows, fees and taxes are outside it. Results are for educational illustration.

Quick answer: with the default values, the result is 15.00% (Internal Rate of Return). Adjust the values below for your own figures.


Enter Values

People also use

Formula Used
Initial investment, paid at time zero
Annual cash flow, received at the end of each year
Project length in years, as entered
Terminal value, received at the end of year n
Year index, running from 1 to n
The rate that solves the equation: the figure this calculator returns

Disclaimer

Results are estimates for educational purposes only. They do not constitute financial advice. Consult a qualified professional before making financial decisions.

What the rate represents

The internal rate of return is the discount rate at which a cash flow stream's net present value comes to zero: the single annual rate that makes what comes back exactly balance what went out, once the timing of each amount is accounted for. It is a property of the flows themselves rather than a comparison against anything, which is why it can be quoted without naming a hurdle. Comparing it against one is a separate step: a rate above the required return corresponds to a positive net present value at that return, and a rate below it to a negative one. That correspondence holds for a stream shaped like this one (a single outflow followed by inflows) and stops being reliable where the flows change sign more than once, since several rates can then satisfy the same equation.

The identity behind the default figures

Where the terminal value equals the initial outlay, the rate is simply the annual cash flow as a share of that outlay, whatever the term. The capital comes back whole at the end, so the annual flow is pure yield on an unchanged principal, the same arithmetic as a bond held to redemption at par. That is why the defaults on this page return exactly the cash flow divided by the outlay, and why changing the number of years moves the result by nothing at all: verified at one, three, ten, twenty-five and forty years, all identical. It also explains why the What-If block shows no card for the term.

Away from that configuration the term matters a great deal, because the capital has to be recovered out of the flows themselves. With the same outlay and cash flow but no terminal value, the rate runs from below zero at five years to 8.14% at ten and 13.89% at twenty: the same annual receipt, three very different answers, decided entirely by how long it keeps arriving.

What moves the number most

Measured at the default ratios (an annual flow of 15% of the outlay and a terminal value equal to it), the ordering is clear and holds at any scale or currency, since the rate depends only on those ratios and the term. The initial outlay is the largest lever and an asymmetric one: 10% less lifts the rate by 2.16 points while 10% more cuts it by 1.85. The cash flow is exactly linear at these settings, moving the rate by 1.5 points in either direction for a 10% change, which follows directly from the identity above. The terminal value is the smallest, at 0.50 down and 0.48 up. The term behaves differently from the other three. It does not move the result at all while the terminal value equals the outlay, and its pull grows the further the terminal value sits from that point, as a gradient rather than a switch. It also changes direction there: below that point, more years raise the rate, because the flows are what has to recover the capital the exit does not return; above it, more years lower the rate, because the gain waiting at the end is spread across a longer holding. Holding the outlay and the cash flow at their defaults, an extra year is worth +1.29 points with no terminal value, +0.49 at half the outlay, nothing at all when the two match, and −0.36 at one-and-a-half times it. On the same 10% test, the term only overtakes the terminal value as the larger of the two levers once the terminal value has fallen to somewhere between 61% and 66% of the outlay, a band rather than a point, because nudging the two inputs up gives a different answer from nudging them down. That band belongs to this particular shape, not to the measure: it is where the crossing sits for a 15% annual flow over ten years, and it moves with the size of the flow, sitting nearer 48–52% of the outlay when the flow is 5% and nearer 74–81% when it is 40%. It is unchanged by scale and by currency, since only the ratios matter.

When more than one rate solves the equation

A cash flow stream can have as many candidate rates as it has changes of sign, which is the standard caution attached to this measure. It does not arise in what this calculator models: a single outflow followed by inflows changes sign once, so the equation has one solution and the solver converges on it. Streams that alternate (a project needing further capital part-way through, or one with a clean-up cost at the end) can produce several, and there the rate stops being a single number and needs either a modified variant or a direct comparison of present values instead.

The reinvestment question

The measure is commonly described as assuming intermediate cash flows are reinvested at the rate itself, which would be an optimistic assumption for a high figure. That description is disputed: the rate is a discount rate that solves an equation, and nothing in the arithmetic instructs anything to be reinvested anywhere. What is agreed is that comparing two projects on this measure alone says nothing about what happens to money as it comes back, and that a modified variant exists precisely because the reinvestment assumption is the point at issue for some users.

What this and net present value each measure

One returns a rate, the other an amount, and the difference matters because amounts add across a portfolio and rates do not. A large project at a modest rate can create more total value than a small one at a high rate, so the two measures rank differently whenever size differs, and the rate carries no information about how much capital is earning it. They also part company on the reinvestment question above, and where cash flows change sign more than once. A rate is also easier to quote and compare in conversation than an amount tied to one particular size of project.

Reading a rate in context

A rate on its own carries no scale: what counts as high depends on the risk taken, the illiquidity accepted, and the period over which it was earned. The conventional comparisons are against a low-risk alternative, against a benchmark for the same asset class over the same period, and against the return required to justify the risk. Published expectations for any asset class differ by source, by market and by era, so a threshold taken from one context does not carry to another. This calculator produces the rate; the comparison is not something it can supply.

What this calculator models

One outflow at the start, an equal cash flow at the end of each year, and a terminal value added to the final year. That shape covers a holding bought once, yielding steadily and sold at the end, and nothing else. Uneven or lumpy flows, a gap year, mid-year timing, a second outflow part-way through, fees, taxes and inflation are all outside it. Flows that give back less than the outlay are still solvable and return a rate below zero; only where nothing comes back at all does the calculator report that no rate solves the equation, rather than returning the edge of its search range.

Example Scenario

An outlay of $100,000 returning $15,000 a year for 10 years plus $100,000 at the end gives an internal rate of return of 15.00%.

Inputs

Initial Investment:$100,000
Annual Cash Flow:$15,000
Project Length:10 years
Terminal Value:$100,000
Expected Result15.00%
Expected Result breakdown
Total Cash In$250,000.00
Multiple on Invested Capital (MOIC)2.50x
Undiscounted Payback (Years)6.67
Terminal Value as Share of Total Cash In40.00%

This example uses sample figures for illustration. Adjust the inputs above to match a specific situation and see how the result changes.

Sources & Methodology

Methodology

The calculator builds a cash flow series (the initial investment as an outflow at time zero, the annual cash flow at the end of each year, and the terminal value added to the final year), then solves for the discount rate at which the present value of that series is zero. The solve is a bisection. The lower bound is just above minus one hundred per cent, and the upper bound starts at 1,000% and widens by a factor of four until the present value at that bound turns negative, so a very high rate resolves to its own value rather than to the edge of the search. Three hundred halvings follow, which converges far beyond the two decimals displayed. Negative rates are inside the range and are returned as such: a project that returns less than it cost has a rate below zero. A rate landing within half a basis point of zero is reported as zero rather than as a signed value marginally below it, so a stream that hands back exactly what it cost reads as 0.00% and not as a negative figure that rounds to the same digits. One case has no solution and returns a message rather than a figure: where nothing at all comes back, meaning a zero cash flow with no terminal value, no rate solves the equation, because no rate makes nothing repay something. Any positive inflow, however small, solves somewhere above minus one hundred per cent; a terminal value one hundred-thousandth the size of the outlay still solves, at −68.38%. The calculator also carries an upper guard, for a present value still positive at the widest bound searched, but that is a backstop rather than a case this input shape produces: the present value always turns negative as the rate rises, so the widening bound always brackets the root. One outflow followed by inflows changes sign once, so the equation has a single solution; the caution about multiple rates applies to streams that alternate, which this input shape cannot produce. The model assumes equal annual flows at end-of-year timing and a constant rate, and excludes fees, taxes, inflation, uneven or mid-year flows, and any outflow after the first. Where the initial investment or the term is zero or below, or the terminal value is negative, the calculator returns a validation message.

Frequently Asked Questions

How does this differ from a simple total return?
A total return ignores when the money arrived, so it treats a doubling over two years and a doubling over twenty as the same result. This measure prices the timing: a holding that doubles over ten years is a 100% total return but 7.18% a year. The gap widens with the term, which is why a total quoted without its period cannot be compared against an annual rate.
Why does the term make no difference at the default figures?
Because the terminal value equals the initial outlay there. The capital returns whole at the end, so the annual flow is yield on a principal that never changes, and the rate is just that flow as a share of the outlay however long it runs. Move the terminal value away from the outlay and the term starts to bite, but gradually rather than all at once: five per cent either side of the match leaves an extra year worth about four hundredths of a point, an order of magnitude below the smallest of the other three levers. How far the terminal value sits from the match is what decides how much the term matters, on either side of it; where the term actually takes the lead is a separate question, and on the downside that is only once the terminal value has fallen well below the outlay. With no terminal value at all, the same outlay and flow give a negative rate at five years and 13.89% at twenty.
Can the result be negative?
Yes, and it is returned rather than suppressed. A stream that gives back less than it cost solves at a rate below zero — a holding returning 5% of its cost each year for ten years, with no exit value, is −10.96%. The search floor sits just above −100%, which is the arithmetic limit of the measure rather than a result the page ever returns — at exactly −100% the discounting has nothing left to divide by. Where nothing comes back at all, no rate solves the equation and the calculator says so instead of returning the edge of its search.
What are the known limitations of this measure?
It says nothing about size, so a high rate on a small amount and a modest rate on a large one look incomparable until an absolute figure is put beside them. It is commonly described as assuming intermediate flows are reinvested at the rate itself, a description that is disputed but worth knowing about. And where a stream changes sign more than once, several rates can solve the same equation — not a case this calculator's input shape can produce, but one that arises with further outflows part-way through.
What does the payback row measure?
The outlay divided by the annual cash flow, in years, with no discounting and no credit for the terminal value. At the default figures that is 6.67 years against a ten-year term, so the flows alone recover the outlay before the exit. Where the annual flow is zero the row says the outlay is never recovered from cash flow alone, which is accurate even where the terminal value more than covers it.
Comparing the rate against a benchmark
On the same period and the same basis. A rate covering ten years and a benchmark quoted annually are already comparable, since both are annual; a total return and a rate are not. Beyond that, published expectations for any asset class vary by source, market and era, so a threshold carried from one context to another is a weaker comparison than it looks. The rate this page produces is an input to that comparison rather than a verdict on it.

Related Calculators

More Investing Calculators

Explore Other Financial Tools

Spotted something off?

Calculations or display — let us know.