A portfolio return figure is read as a measurement. For any cash flow history that changes direction more than once, it is the output of a numerical search that may have more than one correct answer.

CAGR is defined for exactly one shape: money in once, money out once. Add a third cash flow and CAGR has nothing to compute - the number most apps display is XIRR, the rate discounting every cash flow to zero. What follows concerns a property of that equation which CAGR’s never has.

Descartes’ Rule Sets the Bound

An equation of this form can have as many valid positive roots as the number of sign changes in the cash flow sequence. Money in, then money out, changes sign once - which is why a plain lump-sum CAGR is always unique.

Add a withdrawal followed by a reinvestment and the sequence changes sign twice. The equation can then genuinely balance at two different rates. This is not an approximation artefact or a solver bug; it is a property of the polynomial.

An Exact Case With Two Correct Answers

Two rates solve this exactly: 25% and 400%. Substitute either back into the equation and it balances precisely. Neither is an approximation of the other.

Net present value of the cash flow above, plotted against every possible discount rate. The curve crosses zero at 25% and again at 400% - both are valid XIRR solutions for the identical cash flows.

Which Root Appears Depends on the Solver

Nothing in the mathematics designates one rate as real and the other as spurious. Excel’s XIRR, and most tools built on the same logic, start from a guess and walk to the nearest root.

Which number is displayed therefore depends on the starting point and search path, not on correctness. A different tool - or the same tool given a different initial guess - can return a different figure for identical cash flows, and both are right. There is no warning in the output that this has happened.

Real Portfolios Have This Shape

This is not confined to constructed examples. Any history with a SIP, a partial withdrawal, and continued investing afterward has exactly the sign-changing structure required.

Most such histories still resolve to a single real root in practice - multiple valid roots are the exception. The difficulty is that nothing about the displayed number reveals which case applies.

What This Means for Allocators

Count the sign changes before trusting a single XIRR figure. One sign change guarantees uniqueness; more than one does not.

Re-run the calculation from a different starting guess where the history has multiple reversals. Agreement across starting points is cheap evidence that the root is unique.

And treat the figure as a solver output rather than an algebraic certainty. XIRR remains the only measure definable for these histories - it is simply answering with one of possibly several correct numbers.

Back to Writing