Finance comparison

CAGR vs XIRR: Which Annualized Return Is Correct?

CAGR = (EV/BV)^(1/n) − 1 is correct when there is exactly one beginning value and one ending value with no interim cash flows. XIRR solves Σ[CFᵢ/(1+r)^(dᵢ/365)] = 0 and is correct when money moves on different dates. Same 3-year scenario: invest $1,000 then add $500 after 17 months, receive $1,850 → XIRR = 8.59% (correct). Naïve CAGR = 22.7% — wrong because it ignores the $500 mid-period contribution.

Takeaway

Use CAGR when there is one beginning value, one ending value, and no interim cash flows. Use XIRR when money is invested or withdrawn on specific dates — SIPs, top-ups, partial withdrawals, or dividends reinvested at different times. Both are annualized forms of the same geometric mean idea; they differ only in how they weight time.

When CAGR and XIRR agree vs when they diverge

They agree for pure lump-sum positions. They diverge whenever cash moved during the period.

Input Invest $1,000 on 2021-01-01, receive $1,750 on 2026-01-01

With exactly one outflow and one inflow, CAGR and XIRR are mathematically identical.

CAGR = 11.84% 11.84%
XIRR = 11.84% 11.84%

Method

Check the input type and formula side by side before calculating.

Method Correct for single lump-sum positions: one start, one end Correct for dated cash flows: contributions, withdrawals, dividends
Best input One beginning value, one ending value, one time span. One row per dated cash-flow event (date + amount).
Handles interim flows No. CAGR is undefined for multiple investment dates. Yes. XIRR discounts each flow by its exact elapsed days.
Common use Revenue CAGR, lump-sum portfolio, market-size growth. SIP returns, private equity IRR, portfolios with top-ups or partial withdrawals.
Formula (EV / BV)^(1/n) − 1 Solve Σ[CFᵢ/(1+r)^(dᵢ/365)] = 0 for r (Newton's method).
Key warning Using CAGR when cash was added overstates the true return. Requires correct date format (YYYY-MM-DD) and at least one negative + one positive row.

One portfolio, one top-up, two very different answers

The moment a second contribution lands mid-period, CAGR and XIRR stop agreeing. Here is exactly where they part company.

Situation: You invest $2,000 on 1 Jan 2022, add $3,000 on 1 Jul 2023, and the account is worth $6,200 on 1 Jan 2025.

Step-by-step: how to use this calculator correctly CAGR XIRR
1. What the method keeps Collapses everything to two numbers: $5,000 in, $6,200 out. Keeps all three dated rows exactly as they happened.
2. How time is measured One span for everything: 3 years. Each flow gets its own span: 3.00 years and 1.50 years.
3. The equation (6,200 / 5,000)^(1/3) − 1 Solve Σ CFᵢ / (1 + r)^(dᵢ/365) = 0 for r
4. The result 7.43% per year 10.6% per year
5. Sanity check Assumes all $5,000 was working for the full three years. It was not. The $3,000 worked for only 18 months, so the same $6,200 represents a higher rate on the capital actually deployed.

Naive CAGR understates the return by 3.2 percentage points here, because it credits the late $3,000 with three years of growth it never had. XIRR is not a refinement of CAGR — it is the correct calculation whenever the invested balance changed during the period.

Where the simple rule needs care

XIRR is the safer default for real portfolios, but it is not always available and not always necessary.

With one buy and one sell they are identical

Remove the mid-period top-up and XIRR returns exactly the CAGR figure. XIRR only diverges when capital enters or leaves between the endpoints, so for a genuine lump sum the simpler formula loses nothing at all.

XIRR can fail to converge

The solver hunts for a sign change in net present value. Cash-flow series that flip sign several times can have multiple mathematical solutions or none, and a spreadsheet will return an error rather than a rate. Seed a different starting guess, or split the series into cleaner sub-periods.

Neither one works for revenue

XIRR needs money entering and leaving an account on specific dates. Business revenue, market size, and user counts are levels rather than cash flows — annualize those with CAGR and keep XIRR for portfolios.

CAGR or XIRR: four-question decision

Answer in order. Stop at the first match.

01 Exactly one buy + one sell?

Use CAGR = (EV/BV)^(1/n) − 1. XIRR gives the same answer but needs extra row entry.

02 Multiple investment dates?

Use XIRR. Enter each date and amount. Investments are negative, final value is positive.

03 Measuring business revenue?

Use CAGR. Revenue is not a cash-flow series for XIRR.

04 XIRR fails to converge?

Check sign convention: at least one negative (money out) and one positive (money in) row required.

Example

Where CAGR overstates return: the mid-period top-up

Invest $1,000 (Jan 2021) + $500 (Jun 2022) = $1,500 total. Receive $1,850 (Jan 2024). Naïve CAGR on $1,000 → $1,850 over 3 years = 22.7%. But the $500 was only invested for 19 months, not 36. XIRR = 8.59% — it discounts the $500 by exactly 580/365 = 1.59 years, not 3 years. The true return is 8.59%.

Where CAGR is exactly right: business revenue

Revenue $500k (2020) to $2.1M (2025). CAGR = (2,100/500)^(1/5) − 1 = 33.2%/yr. No interim investor cash flows exist — this is a business performance metric, not a portfolio return. CAGR is the industry-standard metric and XIRR is not applicable.

Monthly SIP: only XIRR is meaningful

Investing $500 on the first of every month for 24 months puts in $12,000, and the account ends at $13,900. CAGR on the first $500 would annualize to a meaningless three-digit figure. CAGR on $12,000 → $13,900 over two years reports 7.63%. Only XIRR — about 14.8% here — reflects that the average dollar was invested for roughly one year, not two.

Lump sum with no interim flows: CAGR is enough

A single $8,000 purchase in 2020 is worth $14,500 in 2025, with nothing added or withdrawn in between. CAGR = (14,500 / 8,000)^(1/5) − 1 = 12.63% per year, and XIRR on the same two dated rows returns the identical figure. The extra machinery buys you nothing when the cash-flow series has only two entries.

Watch for

A correct calculation can still mislead when the method or input type is wrong.

Watch for

Using CAGR for SIP returns

A monthly SIP of $500 for 5 years has 60 investment dates. CAGR on the first installment treats all 60 contributions as if invested on Day 1 — wildly overstating the compounding time. Use XIRR with all 60 dated rows.

Watch for

Entering investments as positive numbers in XIRR

Investments (cash leaving you) must be negative. Final portfolio value (cash returning to you) must be positive. If all signs are the same, XIRR has no solution to converge to.

Watch for

Forgetting the final portfolio value in XIRR

An open position without a closing row looks like a complete loss to the solver. Add your current portfolio value as a positive entry on today's date. Without it, XIRR will return a deeply negative rate.

Keep going

Continue with the Statistics hub, compare this result against a related method, or open a guide that covers the same data pattern in more depth.

Frequently asked questions

Why can CAGR and XIRR give such different answers?

CAGR uses only the first and last values. XIRR weights each cash flow by its actual date. For $1,000 + $500 top-up → $1,850: CAGR = 22.7% (ignores the $500), XIRR = 8.59% (correct). The 14 pp gap comes entirely from CAGR treating the $500 as if it compounded from Day 0.

Is XIRR always better than CAGR?

No. For a single lump-sum investment (one buy, one sell, no interim flows), they give identical results and CAGR is simpler to compute. XIRR is better only when multiple cash flows have different dates.

Can I use XIRR for business revenue?

No. Revenue is not a cash-flow series. XIRR requires money flowing in and out of your account on specific dates. For revenue or market-size growth from Point A to Point B, CAGR is the correct metric.

Why is my XIRR lower than the fund's published return?

Published fund returns are usually time-weighted: they measure the manager's performance and deliberately ignore when you invested. XIRR is money-weighted — it measures your outcome, including the effect of adding capital just before a weak stretch. The two answering different questions is expected, not an error.

Do the cash flows need to be in date order?

No. The formula discounts each row by its own date, so the order of rows in your spreadsheet makes no difference. What matters is that every date is a real date and that at least one flow is negative and at least one is positive.

What day count does XIRR use?

Actual elapsed days divided by 365, so leap years are absorbed by the day count rather than handled by a special rule. This is why XIRR over a nominally identical period can differ slightly from a calculation done in whole months.