IRR vs XIRR: What is the difference? What should private market investors check?

Cover: IRR vs XIRR for Startup Investments: Worked Example

For startup investments, use XIRR, because it discounts each cash flow by its actual date, while IRR assumes every cash flow is exactly one period apart. Startup cash flows follow events, not periods: a first cheque, a follow-on 21 months later, a partial sale and an exit arrive on irregular dates. In the worked example below, the same four cash flows give 31.3% with IRR applied row by row and 15.5% with XIRR, enough to move a holding off a follow-on priority list.

This applies when you calculate returns from dated, actual cash flows for a deal, a fund or an LP. For projections built on equal periods, IRR is fine.

Summary

  • Use XIRR for actual startup cash flows: each flow is discounted by its own date on a 365-day year.
  • Keep IRR for models with equal periods, such as annual or quarterly projections.
  • Enter every investment as a negative value, every distribution or exit as a positive value, and today's value as a positive final flow on the report date.
  • In the worked example, IRR on the rows gives 31.3%, IRR on yearly buckets 17.2% and XIRR 15.5%, for the same 2.0x multiple.
  • Do not report an annualised return for a holding under 12 months; show the multiple instead (our suggested default).
  • Write the method (IRR or XIRR), the basis (gross or net) and the as-of date next to every return.

IRR vs XIRR at a glance

IRR assumes equal periods between cash flows, while XIRR uses each cash flow's actual date, so XIRR fits actual startup returns and IRR fits equal-period models.

CriterionIRRXIRR
Timing assumptionCash flows at regular intervals, such as monthly or annuallyEach cash flow on its actual date
InputsAmounts onlyAmounts and dates
FitsProjections, models with equal periodsActual deal, fund and LP cash flows
Common errorTreating irregular flows as if one period apartDates typed as text, or no final value
Verdict for startup investmentsUse for models onlyUse for reporting actual returns

What is the difference between IRR and XIRR?

IRR and XIRR both find the discount rate that sets the present value of a series of cash flows to zero; the difference is how they treat time. Microsoft describes Excel's IRR function as assuming cash flows occur at regular intervals, such as monthly or annually. Its XIRR function returns the internal rate of return for cash flows that are not necessarily periodic, discounting each payment on a 365-day year from the first date.

Google Sheets works the same way. Its XIRR help page describes the function as handling potentially irregularly spaced cash flows and advises using IRR when the dates fall at a regular interval.

The private equity convention points the same way. ILPA's glossary describes net IRR as a dollar-weighted return that considers the daily timing of all cash flows, which is what XIRR calculates.

What they are not

  • Not a multiple. IRR and XIRR are annual rates. They say how fast capital grew, not how much.
  • Not time-weighted returns. ILPA's glossary contrasts the two: a time-weighted return averages the percentage return in each year, while IRR compounds the actual cash flows.
  • Not a forecast. A return that includes today's valuation is only as good as that valuation.

How much does the choice change the return?

The choice between IRR and XIRR can halve a reported return on the same cash flows. The illustrative investment below is a Series A stake with a follow-on, a partial secondary sale and an exit. All figures are made up and in $M.

DateCash flow ($M)Event
15 Jan 2021−1.0Initial investment
1 Nov 2022−0.5Follow-on
20 Jun 2024+0.4Partial secondary sale
30 Sep 2026+2.6Exit proceeds

Total invested $1.5M, total returned $3.0M, a multiple of 2.0x over about 5.7 years (2,084 days).

MethodFormulaResult
IRR on the four rows=IRR(B2:B5)31.3%
IRR on yearly buckets (2021 to 2026, zeros in empty years)=IRR({-1;-0.5;0;0.4;0;2.6})17.2%
XIRR on actual dates=XIRR(B2:B5, A2:A5)15.5%

[Figure 1: Same cash flows, three returns]

IRR on the rows treats the four flows as one year apart, so it compresses 5.7 years into 3 and roughly doubles the return. Yearly buckets get closer but still move each flow to a year boundary. XIRR uses the 655, 1,252 and 2,084 days between the flows and the first investment.

Now the decision. Suppose the fund's reserve policy, for this illustration, gives follow-on priority to holdings with a gross XIRR above 20% (a suggested default, not a standard), checked at each quarterly reserve review. Calculated row by row, the return is 31.3% and the company looks like it qualifies. On XIRR, at 15.5%, it does not, and the partner who champions it has to make the case on other grounds before the next quarterly reserve review. The multiple, 2.0x, is the same either way; only the rate changed.

Checking which method sits behind each holding's return gets slow across a whole portfolio. For VC funds, family offices and LPs, Folio's portfolio metrics module is where Folio tracks fund and investment performance. Read about Folio's portfolio metrics module.

How do you set up XIRR in a spreadsheet?

Set up XIRR with two columns, dates and amounts, one row per cash flow, and a final row for today's value if the holding is not yet exited. The steps below are for Excel and Google Sheets.

StepWhat to doCheck
1. DatesEnter real dates in column A, using DATE() or a date-formatted cellMicrosoft warns that dates entered as text can cause problems
2. SignsInvestments and fees negative; distributions and exit proceeds positiveXIRR needs at least one negative and one positive value, or it returns #NUM!
3. First rowThe first investment on the earliest dateA date before the first one returns #NUM!
4. Final valueFor an unexited holding, today's fair value as a positive flow on the report dateWithout it, an unexited holding shows a loss, or #NUM! if nothing has been returned yet
5. Formula=XIRR(B2:B5, A2:A5)Same number of values and dates, or #NUM!
6. Cross-check=XNPV(result, B2:B5, A2:A5)Should return zero; Microsoft defines XIRR as the rate where XNPV equals zero

[Figure 2: XIRR setup and checks]

For a fund or an LP, the same layout works with every capital call as a negative and every distribution as a positive. An LP's own XIRR uses its own dated calls and distributions, which is why it can differ from the fund-level figure. The final value for an unexited stake comes from the latest valuation, and startup valuation methods differ enough that, in our view, the method should be stated next to the return.

What goes wrong with XIRR?

XIRR fails in a few predictable ways, and each one is easy to test for.

MistakeWhat happensFix
Very short holding periodA 10% gain over 30 days annualises to (1.10)^(365/30) − 1 = 219%Show the multiple, not a rate, under 12 months (our suggested default)
Final value missingAn unexited holding shows a loss, or #NUM! if nothing has been returned yetAdd today's value on the report date
Exit proceeds taken from the headline priceThe fund's proceeds taken as a pro-rata share of the sale price, not what its shares actually receiveUse the fund's actual proceeds; an exit waterfall model shows the split
Gross and net mixedDeal flows before fees compared with fund flows after feesLabel every return gross or net
No result foundExcel stops after 100 tries and returns #NUM!Enter a guess closer to the expected rate, then cross-check with XNPV

Follow-on rounds add negative flows in the middle of the series, which is where pro-rata rights show up in a return calculation.

A 219% return on a 30-day hold is the kind of figure that slips into a quarterly pack when nobody checks the holding period. For VC funds, family offices and LPs, Folio's portfolio metrics module is where Folio tracks fund and investment performance. How portfolio metrics work in Folio.

Which method do LP reports use?

LP reports quote fund and deal returns side by side, so the method behind each should be written down once and kept. In our view, an LP report should state XIRR (or "IRR on daily cash flows"), the basis and the as-of date for every return, and should show the multiple next to it, as the LP reporting metrics beyond IRR argue.

[SME: which method our own LP reports use for deal-level and fund-level returns, and how the team explains a change of method to LPs]

Choose IRR or XIRR?

Neither IRR nor XIRR wins everywhere. Choose by what the cash flows are.

Choose IRR ifChoose XIRR if
You are building a projection with equal annual or quarterly periodsYou are reporting actual, dated cash flows
Every cash flow genuinely falls on a period boundaryInvestments, follow-ons, partial sales and exits fall on irregular dates
You are comparing scenarios inside one modelYou are comparing holdings, funds or LPs with each other

Limits of either method: both depend on the final value for unexited holdings, both ignore how much was gained (pair them with the multiple), and neither can be compared across holdings without the same basis and date.

IRR vs XIRR checklist

  • Dates entered as real dates, not text
  • Investments negative, distributions and exits positive
  • Today's value added as a final flow for unexited holdings
  • XIRR used for actual cash flows; IRR only for equal-period models
  • XNPV at the XIRR result returns zero
  • No annualised return for holdings under 12 months; multiple shown instead
  • Method, basis (gross or net) and as-of date written beside every return

Checking which method sits behind every return in your portfolio? Run the checklist above on each holding's cash flows. For VC funds, family offices and LPs, Folio's portfolio metrics module is where Folio tracks fund and investment performance. See portfolio metrics in Folio.

FAQ

Why does my XIRR differ from the GP's reported IRR?

The two can differ in basis, level or date. A GP's fund-level net IRR includes fees, carried interest and every LP's cash flows; your figure may be your own LP-level flows, or a deal's gross flows. Ask for the method, basis and as-of date, then compare like with like.

Does a family office use XIRR differently?

No. A family office holding direct positions and fund stakes can run XIRR on each from its own dated cash flows, then compare them on one basis.

Why does a holding's XIRR fall when its valuation hasn't changed?

XIRR spreads the gain over the days between the first investment and the report date. If the final value stays the same and the report date moves later, the same gain covers more days, so the rate falls. In the worked example, if the final $2.6M were the holding's value on 30 Sep 2027 instead of 30 Sep 2026, XIRR would fall from 15.5% to 13.1%. The multiple stays at 2.0x, which is how a reader can tell the valuation did not change.

Can I average the XIRRs of several deals?

No. A simple average ignores how much went into each deal and for how long. Put every deal's dated cash flows in one list, with each unexited deal's current value on the report date and the earliest date in the first row, and run one XIRR across them. That gives one return for the group, weighted by money and time.

Does my unfunded commitment go into XIRR?

No. XIRR uses only cash that has moved, plus today's value of your stake on the report date. Unfunded commitment is a promise, not a cash flow, so it enters only when it is called, as a negative flow on the date you pay.

About Folio

Folio is Incentiv's fund platform for private market investors: VC funds, family offices and their LPs. It covers deal flow, portfolio, LP and fund management. Its portfolio metrics module is where Folio tracks fund and investment performance. Explore portfolio metrics in Folio.

The reserve policy and thresholds are editorial illustrations, not financial or legal advice. All figures are illustrative.

See how Incentiv can help

Infrastructure for cap tables, ESOP management, and secondary markets in India's private markets.