XIRR calculator
- Runs on your device
- Nothing uploaded
- Free, no sign-up
| Date | Amount |
|---|
Negative = money out (invest). Positive = money in (return). At least one of each sign is required.
-
What this result means
Cumulative cash over time
Cash-flow signs (invest −, redeem +)
Irregular cash-flow intuition
XIRR answers: what constant annualized rate r makes the net present value of dated cash flows equal zero? Each amount is discounted by (1+r)^((date − first date)/365): the same actual/365 day-count Excel’s XIRR uses. Newton-Raphson searches for that root in your browser.
Negative = money you put in (invest / contribute). Positive = money you take out (redeem / distribute / sell). You need at least one of each sign. Same-sign-only rows, missing dates, or extreme implied rates fail closed with a status message instead of a fake percent.
Dated cash-flow example
Type these three rows into the table (illustrative portfolio):
| Date | Amount | Role |
|---|---|---|
| 2024-01-01 | −1,00,000 | Initial invest |
| 2024-07-01 | −25,000 | Top-up |
| 2025-01-01 | +1,40,000 | Full redeem |
Hit Calculate XIRR. The solver returns the annualized rate that reconciles those dated flows (about 13.3% a year on this toy path, using actual/365 day counts). Flip all signs and the economic story breaks, the page should refuse a nonsense root. Keep units consistent (all rupees); do not put percentages in the amount column. If a CSV exports epoch seconds, convert them with the Unix timestamp converter first.
When XIRR beats a simple annual rate
A simple “profit ÷ principal ÷ years” ignores when money moved. Top-ups mid-way, partial redemptions, and uneven gaps between dates change the true annualized result. Use XIRR when dates matter; count calendar gaps with the days between dates calculator. Prefer a fixed monthly SIP projection without dates on the SIP calculator, textbook growth on the compound interest calculator, or reducing-balance EMIs on the EMI calculator.
Sanity check: invest −10,000 then redeem +11,000 exactly one year later → XIRR near 10%. Multiple IRRs can exist for wild sign patterns; taxes, fees, and benchmarks are ignored. Not investment advice. Disclaimer.
Pitfalls with real statements
- Missing current value. If you still hold the investment, add a final positive row dated today with the current market value. Without it the cash flows are incomplete.
- Dividends reinvested. Reinvested dividends are not cash in or out of your pocket, so leave them out. Paid-out dividends are positive rows.
- Very short periods. Annualizing a few weeks of returns can show huge percentages. A 2% gain over 30 days annualizes to far more than 2%. Read short-period XIRR with care.
- Date format mix-ups. 03/04 can mean March 4 or April 3. Enter dates with the date picker so they are unambiguous.
FAQ
What is an XIRR calculator?
XIRR is the annualized internal rate of return for cash flows that do not arrive on a regular schedule. This page finds the rate r where NPV is zero: each amount is discounted by (1+r) raised to year-fraction (date minus first date) / 365.
How should I enter amounts?
Use a negative amount for money you put in (an investment or contribution) and a positive amount for money you take out (a distribution, sale, or return). You need at least one of each sign or the equation has no useful root.
What if the solver cannot converge?
Newton-Raphson can fail when cash flows are all the same sign, dates are missing, or the implied rate is extreme. The page shows a short sanity message instead of a fake number. Check signs, dates, and that inflows and outflows are both present.
Are my cash flows uploaded?
No. Dates, amounts, and the solver run in your browser. Nothing is sent to ToolPetal.
Is XIRR the same as CAGR?
For a single investment and a single redemption they match. With top-ups or partial withdrawals on different dates, CAGR cannot account for timing and XIRR can, so they diverge.
Why does my XIRR differ slightly from my broker's figure?
Brokers may include charges, use the closing value from a different date, or round at different steps. Check that your rows and dates match theirs exactly before comparing.