The internal rate of return (IRR) is the standard performance measure for private funds. Where a multiple says how much money was made, IRR says how fast. It does this by finding the single annual discount rate at which the present value of everything the LP received equals the present value of everything it paid. Because the GP, not the LP, decides when capital is called and when it is returned, a return measure that weighs each dollar by how long it was actually at work is the natural fit.
IRR is also the most misunderstood number in private markets. It cannot be solved with a formula, only by iteration. Its value depends on exact dates, so the spreadsheet function used matters. For a fund still holding assets, it depends on the GP's valuation of those assets. It can have more than one answer. And because it rewards speed, a small, fast gain can show a higher IRR than a large, slow one.
This topic works through each of these points with numbers, every IRR solved numerically to the precision shown. The goal is that an allocator can reproduce any IRR on a fund report and knows exactly what question it does and does not answer.
Key takeaways
- IRR is the discount rate that makes the net present value of a dated series of cash flows equal to zero, and it must be found by iteration.
- XIRR uses actual dates and an actual/365 day count, and it can differ sharply from an IRR computed on evenly spaced periods when cash flows are irregular.
- A since-inception IRR for a fund still holding assets treats residual NAV as a final inflow on the report date, so part of the IRR rests on the GP's marks.
- When the sign of the cash flows changes more than once, a series can have several IRRs, and none of them is a reliable summary.
- Reading IRR as the growth rate of the LP's wealth implicitly assumes interim distributions were reinvested at the IRR; modified IRR replaces that with explicit finance and reinvestment rates.
- IRR rewards speed, so a quick small gain can beat a slow large one on IRR while producing far fewer dollars; always read IRR alongside a multiple.
The definition
Take every cash flow between the LP and the fund, with its date. Contributions (capital calls) are negative, because cash leaves the LP. Distributions are positive. The net present value (NPV) of that series at a discount rate r is the sum of each cash flow divided by (1 + r) raised to the time, in years, from the first cash flow. The IRR is the value of r at which that NPV equals exactly zero.
Put differently, the IRR is the constant annual rate of return that, if earned on the capital outstanding at every moment, would exactly produce the distributions the LP received. It is a money-weighted return: periods when more of the LP's capital is in the fund count for more, because more dollars are exposed to whatever return was earned then. A later topic in this section contrasts this with time-weighted returns.
Two features follow from the definition. First, the IRR depends only on the amounts and dates of the cash flows, not on anything that happened inside the fund between them. Second, there is no algebraic formula for r once there are more than a few cash flows, so it has to be found numerically.
- CF_i
- The i-th cash flow from the LP perspective: negative for contributions, positive for distributions
- t_i
- Time of the i-th cash flow in years, measured from the first cash flow (t_0 = 0)
- r
- The annual discount rate; the IRR is the value of r that sets NPV to zero
A periodic IRR, solved and checked
Start with the simplest case: evenly spaced annual cash flows. An LP invests $100 today and receives $60 at the end of each of the next two years. The multiple is 1.20x ($120 back on $100). The IRR is the rate at which $60 in one year plus $60 in two years is worth exactly $100 today.
Solving gives an IRR of 13.1 percent. The check is to discount each inflow at that rate and confirm the present values add back to $100. They do, to within rounding, which is how any IRR on a report can be tested.
IRR of -100, +60, +60
- Year 0: -$100. Year 1: +$60. Year 2: +$60.
- 1. Set up the equation-100 + 60 / (1 + r) + 60 / (1 + r)^2 = 0Solve for r
- 2. Solve numericallyiteration (next section) converges to r = 0.130662IRR = 13.1%
- 3. PV of year 1 inflow60 / 1.130662 = 53.06653.07
- 4. PV of year 2 inflow60 / 1.130662^2 = 46.93446.93
- 5. Check53.066 + 46.934 = 100.000NPV = 0
- 6. Multiple for comparison(60 + 60) / 100 = 1.201.2x
The investment returned 13.1 percent a year on the capital outstanding, and 1.2x in total.
Solving by iteration: bisection
Spreadsheets and software solve for IRR with numerical methods. The most common are Newton's method (fast, but it can fail to converge from a poor starting guess) and bisection (slower, but guaranteed to converge when you start with one rate that gives a positive NPV and one that gives a negative NPV). Bisection is also the easiest to follow by hand, so it is the one shown here.
The method is simple. For a normal investment (outflows first, then inflows) NPV falls as the rate rises. Pick a low rate with positive NPV and a high rate with negative NPV. The IRR lies between them. Evaluate NPV at the midpoint. If it is positive, the IRR is above the midpoint, so the midpoint becomes the new low. If negative, it becomes the new high. Each step halves the interval, so after 20 steps the interval is about one millionth of its starting width.
For the -100, +60, +60 example, NPV at 0 percent is +20 (you simply add the cash flows) and NPV at 50 percent is -33.33. The table shows the first eight steps. After eight halvings the IRR is pinned between 12.9 and 13.1 percent; continuing converges on 13.0662 percent.
- low
- A rate at which NPV is positive
- high
- A rate at which NPV is negative
- tolerance
- The precision required, for example 0.000001
| Step | Low | High | Midpoint | NPV at midpoint | Action |
|---|---|---|---|---|---|
| 1 | 0.000000 | 0.500000 | 0.250000 | -13.6000 | high = mid |
| 2 | 0.000000 | 0.250000 | 0.125000 | 0.7407 | low = mid |
| 3 | 0.125000 | 0.250000 | 0.187500 | -6.9252 | high = mid |
| 4 | 0.125000 | 0.187500 | 0.156250 | -3.2286 | high = mid |
| 5 | 0.125000 | 0.156250 | 0.140625 | -1.2798 | high = mid |
| 6 | 0.125000 | 0.140625 | 0.132813 | -0.2787 | high = mid |
| 7 | 0.125000 | 0.132813 | 0.128906 | 0.2287 | low = mid |
| 8 | 0.128906 | 0.132813 | 0.130859 | -0.0256 | high = mid |
Step 2 of the bisection, in full
- Low = 0, high = 0.25 (NPV at 0.25 was -13.60).
- 1. Midpoint(0 + 0.25) / 2 = 0.12512.5%
- 2. Discount year 160 / 1.125 = 53.333353.3333
- 3. Discount year 260 / 1.125^2 = 60 / 1.265625 = 47.407447.4074
- 4. NPV-100 + 53.3333 + 47.4074 = 0.7407+0.7407
- 5. UpdateNPV > 0, so the IRR is above 12.5%low = 0.125
The IRR is now known to be between 12.5% and 25%, and the next midpoint tested is 18.75%.
XIRR: actual dates and day counts
Real fund cash flows do not arrive on anniversaries. Capital calls land whenever a deal closes, and distributions whenever an exit completes. An IRR computed as if flows were evenly spaced (the spreadsheet IRR function applied to a list of amounts) treats the gap between any two entries as one period, whatever the real gap was. That can be badly wrong.
XIRR (the name of the dated IRR function in common spreadsheet software) solves the same equation using the actual time between each cash flow and the first one, measured as the number of calendar days divided by 365. This is an actual/365 day count. It ignores leap days in the sense that a 366-day year counts as slightly more than one year, which is a convention, not an error. Fund administrators and reporting systems generally use this dated approach for since-inception IRRs.
The example below shows how much the choice matters. The cash flows are identical. Only the treatment of time differs.
- CF_i
- Cash flow on date d_i, negative for contributions and positive for distributions
- d_i - d_0
- Number of calendar days between the i-th cash flow and the first cash flow
- r
- The annualized rate that sets the sum to zero
Irregular dates: XIRR versus a naive periodic IRR
- 15 March 2020: -$100 (capital call).
- 30 September 2021: +$40 (partial exit).
- 30 June 2023: +$90 (final exit).
- 1. Days to second flow15 Mar 2020 to 30 Sep 2021 = 564 days564 / 365 = 1.5452 years
- 2. Days to third flow15 Mar 2020 to 30 Jun 2023 = 1,202 days1,202 / 365 = 3.2932 years
- 3. Equation-100 + 40 / (1 + r)^1.5452 + 90 / (1 + r)^3.2932 = 0Solve for r
- 4. Solve numericallyr = 0.101133XIRR = 10.1%
- 5. Check40 / 1.101133^1.5452 + 90 / 1.101133^3.2932 = 34.467 + 65.533 = 100.000NPV = 0
- 6. Naive IRR treating flows as years 0, 1, 2-100 + 40 / (1 + r) + 90 / (1 + r)^2 = 0 gives r = 0.16953617.0%
The correct dated return is 10.1 percent a year. Ignoring the real dates overstates it at 17.0 percent, because it pretends the money came back more than a year sooner than it did.
Since-inception IRR and the terminal NAV
A fund that has not finished liquidating still holds assets. To compute a since-inception IRR at a report date, the convention is to treat the LP's residual NAV as if it were distributed on that date. The series becomes: every contribution, every distribution, and one final positive flow equal to NAV on the report date. This is sometimes called an interim IRR.
This convention makes the IRR comparable across funds of different ages, but it imports the valuation question from the multiples topic directly into the IRR. If the NAV is optimistic, so is the IRR. And because the NAV is a large lump arriving at the last date, IRR is often more sensitive to marks than TVPI is, in percentage terms, especially for young funds.
In a completed fund the terminal NAV is zero and the IRR is fully realized. In between, it is common to show both the interim IRR and a realized IRR on exited deals only, and a careful LP reads both.
- NAV_T
- The LP's residual NAV on the report date, treated as a final inflow
- T
- Time from the first contribution to the report date, in years
Interim IRR for a four-year-old fund, and its sensitivity to NAV
- Year 0: call $40m. Year 1: call $30m. Year 2: call $20m and distribution $5m, so net -$15m. Year 3: distribution $15m. Year 4 (report date): distribution $30m and residual NAV $70m.
- Annual spacing is used here to keep the arithmetic visible; a real report would use XIRR on actual dates.
- 1. Paid-in capital40 + 30 + 20 = 90$90m
- 2. Cumulative distributions5 + 15 + 30 = 50$50m
- 3. TVPI(50 + 70) / 90 = 1.3331.33x
- 4. Cash flow series-40, -30, -15, +15, +100 (30 + 70 NAV)Years 0 to 4
- 5. Interim IRRsolve -40 - 30/(1+r) - 15/(1+r)^2 + 15/(1+r)^3 + 100/(1+r)^4 = 0; r = 0.09957610.0%
- 6. If NAV is marked 20% lower, at $56mfinal flow 30 + 56 = 86; r = 0.056145IRR 5.6%, TVPI (50 + 56) / 90 = 1.18x
- 7. If NAV were worth nothingfinal flow 30; r = -0.195614IRR -19.6%
A 20 percent cut in NAV lowers TVPI by 11.7 percent (from 1.33x to 1.18x) but lowers the IRR by 4.4 percentage points, from 10.0 to 5.6 percent, which is 44 percent of the original IRR. The realized cash alone is a deeply negative return, so most of this fund's IRR is still a valuation.
Multiple IRRs
The IRR is well behaved when the sign of the cash flows changes once: money goes out, then money comes back. NPV then falls steadily as the rate rises and crosses zero exactly once. But when signs change more than once (out, in, out), the NPV curve can cross zero more than once, and the series has more than one IRR. By Descartes' rule of signs, the number of IRRs above -100 percent is at most the number of sign changes.
Private funds produce this pattern more often than people expect. A large early distribution followed by a big late capital call for a follow-on or a guarantee, or a clawback where the GP returns carry, or a GP-led continuation vehicle where an LP rolls and later contributes more, can all create a second sign change. So can an LP-level series that mixes several funds.
When there are multiple IRRs, none of them is the answer. The spreadsheet will report whichever root its starting guess happens to find. The right response is to use NPV at a stated discount rate, a modified IRR with explicit rates, or a multiple, and to say why.
A cash flow series with two IRRs
- Year 0: -$100. Year 1: +$230. Year 2: -$132.
- 1. NPV at 10%-100 + 230 / 1.10 - 132 / 1.10^2 = -100 + 209.091 - 109.091 = 0.0000
- 2. NPV at 20%-100 + 230 / 1.20 - 132 / 1.20^2 = -100 + 191.667 - 91.667 = 0.0000
- 3. NPV at 15%-100 + 200.000 - 99.811 = 0.189+0.189
Both 10 percent and 20 percent are valid IRRs. A report quoting either one alone would be accurate and misleading.
| Rate | 0% | 5% | 10% | 15% | 20% | 25% | 30% |
|---|---|---|---|---|---|---|---|
| NPV ($) | -2.000 | -0.680 | 0.000 | 0.189 | 0.000 | -0.480 | -1.183 |
The reinvestment critique and modified IRR
A common critique says IRR 'assumes' distributions are reinvested at the IRR. Stated that way it is imprecise. Computing an IRR requires no assumption at all: it is just the root of an equation. The assumption enters when a reader interprets the IRR as the annual growth rate of their wealth over the whole life of the investment. That interpretation holds only if every distribution was reinvested at the IRR until the end. For -100, +60, +60, reinvesting the first $60 at 13.0662 percent for a year gives $127.84 at year 2, and $100 compounded at 13.0662 percent for two years is also $127.84. Reinvest at a lower rate and the realized growth rate is lower.
For a fund with a high IRR and early distributions this matters. A 40 percent IRR from a deal exited in year 2 of a ten-year program does not mean the LP's money grew 40 percent a year for ten years, because the LP could not reinvest the proceeds at 40 percent.
Modified IRR (MIRR) makes the rates explicit. Outflows are discounted to time zero at a finance rate. Inflows are compounded forward to the final date at a reinvestment rate. MIRR is the single rate that grows the first into the second. It always has exactly one answer, which also solves the multiple IRR problem.
- FV of inflows
- Each positive cash flow compounded to the final date at the reinvestment rate
- PV of outflows
- Each negative cash flow (as a positive amount) discounted to time zero at the finance rate
- n
- Number of years from the first to the last cash flow
MIRR for -100, +60, +60 with an 8% reinvestment rate
- Year 0: -$100. Year 1: +$60. Year 2: +$60. Reinvestment rate 8%. The only outflow is at time zero, so the finance rate does not affect the answer.
- 1. FV of inflows at year 260 x 1.08 + 60 = 64.8 + 60 = 124.8$124.8
- 2. PV of outflows100$100.0
- 3. MIRR(124.8 / 100)^(1/2) - 1 = 0.117111.7%
With realistic reinvestment at 8 percent, the investment grows wealth at 11.7 percent a year, below its 13.1 percent IRR.
MIRR resolves the two-IRR series
- Year 0: -$100. Year 1: +$230. Year 2: -$132. Finance rate 6%, reinvestment rate 8%.
- 1. PV of outflows100 + 132 / 1.06^2 = 100 + 117.480 = 217.480$217.48
- 2. FV of inflows at year 2230 x 1.08 = 248.4$248.40
- 3. MIRR(248.40 / 217.48)^(1/2) - 1 = 0.06876.9%
At stated rates of 6 and 8 percent, the series earns a single MIRR of 6.9 percent, far below either of its IRRs.
IRR versus MOIC: why quick flips inflate IRR
IRR measures the rate of return; MOIC measures the amount. They can point in opposite directions. Because IRR annualizes, a small gain earned quickly produces a high IRR, while a large gain earned slowly produces a lower one. An LP, however, eats dollars, not rates, and its ability to redeploy early proceeds at a comparable return is limited, especially in private markets where new commitments take years to be called.
This creates an incentive. A GP compensated or marketed on IRR may prefer to sell a company early at a modest multiple rather than hold it for a larger one. It also explains why managers highlight IRR when they have a few fast exits and highlight multiples when their track record is slow but large. The disciplined LP asks for both, and asks what the early proceeds could realistically have earned afterward.
Deal X (quick flip) versus Deal Y (long hold)
- Deal X: invest $100m, receive $150m after 1 year.
- Deal Y: invest $100m, receive $300m after 6 years.
- 1. Deal X IRR150 / 100 - 1 = 0.50050.0%
- 2. Deal X MOIC and profit150 / 100 = 1.5; 150 - 100 = 501.5x, $50m
- 3. Deal Y IRR(300 / 100)^(1/6) - 1 = 0.200920.1%
- 4. Deal Y MOIC and profit300 / 100 = 3.0; 300 - 100 = 2003.0x, $200m
- 5. Deal X if proceeds are reinvested at 10% for years 2 to 6150 x 1.10^5 = 241.58$241.6m at year 6
- 6. Equivalent 6-year rate for Deal X plus reinvestment(241.58 / 100)^(1/6) - 1 = 0.158415.8%
Deal X has the higher IRR (50.0 versus 20.1 percent), but over the same six years it produces $141.6m of profit even after reinvesting at 10 percent, against $200m for Deal Y. Unless proceeds can be redeployed at above 20.1 percent, Deal Y is the better outcome for the LP.