Start here / 5 min read
Rolling Returns vs CAGR vs XIRR: Compare Fund Returns
One return number never tells the whole story. Learn to compare dates, outcomes and consistency with a small worked example.
You open two fund pages. One says 14.00%. The other says 13.00%.
It is tempting to stop there. But before we pick a winner, we need to know what those numbers describe. One year or five? A single investment or a SIP? The same dates or different ones?
Let's build the comparison from a small example. Once the mechanics are clear, the larger tables in these stories become much easier to read.
First, choose the right return calculation
A lump-sum investment has one starting payment and one ending value. CAGR, or compound annual growth rate, describes the annual rate that connects them.
A SIP has several payments on different dates. XIRR, or extended internal rate of return, accounts for the timing of those cash flows. The payment you made last month has not been invested as long as the one you made five years ago.
| One lump sum | CAGR | Annualised growth between the start and end |
| Payments on several dates | XIRR | Annualised return accounting for each cash-flow date |
| Either pattern, repeated from many starts | Rolling returns | A collection of outcomes across equal-length periods |
Rolling returns are not a rival to CAGR or XIRR. They describe repeating the test. Each individual test still needs the appropriate return calculation.
Run one test, then move the starting date
Here is a deliberately small, illustrative set of NAVs. NAV means net asset value per fund unit. These are invented values for learning, not a real fund's record.
| January 2013 | ₹100 |
| January 2014 | ₹110 |
| January 2015 | ₹125 |
| January 2016 | ₹140 |
| January 2017 | ₹130 |
| January 2018 | ₹160 |
Take a three-year lump sum starting in January 2013. The NAV rises from ₹100 to ₹140. Its annualised return is 11.87%.
Move the start forward one year and run another three-year test. Now the NAV moves from ₹110 to ₹130, giving 5.73%. Repeat once more:
| January 2013 | January 2016 | ₹100 | ₹140 | 11.87% |
| January 2014 | January 2017 | ₹110 | ₹130 | 5.73% |
| January 2015 | January 2018 | ₹125 | ₹160 | 8.58% |
The calculation is (ending NAV / starting NAV)^(1 / years) - 1, multiplied by 100 to display a percentage.
Our real studies often shift by an available trading day rather than a year. The idea is identical: hold the duration constant, vary the starting point.
Summarise the outcomes without losing the range
For those three illustrative returns, the mean is 8.72%, calculated from the unrounded results. The median is 8.58%.
| Average | The arithmetic mean of the observed annualised returns |
| Median | The middle result after sorting them |
| Minimum | The weakest observed result in this sample |
| Maximum | The strongest observed result in this sample |
The average is not a return you can expect next time. The minimum is not a limit on how bad a future result can be.
Even the range has a blind spot: these are start-to-end outcomes. To understand a fall that happened halfway through the investment, we need a separate drawdown analysis.
Use buckets to see what the average hides
Now imagine ten illustrative periods with returns of −2.50%, 5.30%, 9.10%, 11.80%, 13.20%, 14.70%, 15.10%, 16.90%, 18.30% and 22.10%.
Put each result into one non-overlapping bucket. That produces this distribution:
Ten illustrative outcomes, grouped by return
The bar shows how many results landed in each range. Open the values to read the exact shares.
Illustrative fund
Read the exact values
| Investment | Below 0.00% | 0.00% to <8.00% | 8.00% to <12.00% | 12.00% to <20.00% | 20.00% and above |
|---|---|---|---|---|---|
| Illustrative fund | 10.00% | 10.00% | 20.00% | 50.00% | 10.00% |
Five of the ten results were between 12.00% and below 20.00%. One was negative. We have described this little dataset more fully than its average could.
We have not established a 10.00% chance of a future loss. Historical frequency and future probability are different claims, especially when the periods overlap.
Compare the same dates and keep the size of the gap
For a head-to-head test, both funds must start and finish on the same dates. Here is another illustrative example:
| 1 | 12.50% | 11.80% | Fund A |
| 2 | 12.30% | 12.10% | Fund A |
| 3 | 11.90% | 12.40% | Fund B |
| 4 | 13.10% | 12.70% | Fund A |
| 5 | 12.80% | 13.20% | Fund B |
Fund A had a higher return in three of five periods. But the size of its advantage was different each time.
A high win frequency can coexist with a tiny average lead. A low win frequency can coexist with a few very large gains. Neither frequency nor magnitude should be read alone.
With more than two funds, “finished first” means highest in the whole group. It is different from “beat the benchmark.” Equal results also need an explicit tie rule; different tools may use different tolerances.
Put the three views together
A final check is the sample itself. Were only today's surviving funds selected? Does the index history include back-calculated years? Are there fewer ten-year periods than three-year periods? Those details can change the meaning of an attractive result.
Try reading a real fund comparisonFollow the same sequence with nine NIFTY 50 fund series.Sources and calculation notes
The small datasets in this explanation are illustrative. CAGR values were recomputed from the stated NAVs, with rounding only for display. The frequency example uses strict higher-return comparisons and contains no ties.
Tata Mutual Fund also explains the distinction between XIRR and CAGR. Each quantitative Data Story includes its own source and sample limits because a shared calculation method does not make every dataset comparable.

