Finance
Loans, savings & money calculators
XIRR Calculator
XIRR on an arbitrary-dated cash-flow table — paste your transactions, get the annualised return like Excel, plus a Nifty-50 benchmark. Accurate, instant and free — for India.
What these mean:
Cash flows
Enter each dated cash flow. Investments (money you pay in) are negative; returns, redemptions and current value are positive— same sign convention as Excel's XIRR.
Paste a spreadsheet selection — 2 columns: date, amount (negative = invested). Existing rows are replaced.
Auto-detects dates (dd-MMM-yyyy / dd-mm-yyyy / yyyy-mm-dd) and amounts, and infers the sign from the transaction type (purchase/SIP → invested, redemption/current value → received). Unrecognised lines are skipped. End with a “current value” row so the series has a final inflow.
Your money-weighted annualised return (XIRR) is 10.00%. XIRR is the single annual rate that discounts every dated cash flow back to a net present value of zero — exactly what Excel's XIRR() returns. You invested ₹1,000 and received ₹1,100. Your XIRR 10.00% vs the same dated contributions into the Nifty 50 TRI 8.58% (series interpolated between month/year anchors, stamped 2026-06-19).
Cash-flow timeline
Cash flows
- 2025-01-01−₹1,000
- 2026-01-01+₹1,100
Three ways to measure this return
They differ because they treat time differently. XIRR is money-weighted and dated (every contribution counts for exactly how long it was invested); CAGR is a single point-to-point compounding rate from first investment to last return; absolute return ignores time entirely.
XIRR
10.00%
Money-weighted & dated
CAGR
10.00%
Point-to-point
Absolute
10.00%
No time weighting
How XIRR is calculated — XNPV = 0, the way Excel does it
XIRR is the annualised, money-weighted return on cash flows that occur on arbitrary dates. It is the rate r that discounts every dated cash flow back so they sum to zero (XNPV = 0), over an Actual/365day-count — the same convention as Excel's XIRR(). There is no closed form, so it is solved numerically.
XNPV = 0 (the equation)
Discount every dated flow to zero
Σ CF_i / (1+r)^((d_i−d_0)/365) = 0
- CF_i= cash flow (−ve out, +ve in)
- d_i = its date, d_0 = first date
- r = the XIRR (annualised)
Day-count Actual/365 — the Excel convention.
Newton-Raphson solver
Iterate to |XNPV| < 1e-7
rₙ₋₁ = rₙ − XNPV(r)/XNPV'(r)
- Seeded near 0.1; 5–10 iterations match Excel to ~8 dp
- Closed-form derivative XNPV'(r) known
- Falls back to bisection if Newton diverges
Requires a sign change
≥1 outflow and ≥1 inflow
- At least one −ve and one +ve flow, or there is no rate
- All-same-sign → no solution (Excel returns #NUM!)
- Same-day flows are aggregated; d_0 = earliest date
- 1Single flow → exactly 10%: Invest −1,000 on 2025-01-01, receive +1,100 on 2026-01-01 (a 365-day non-leap span): 1,100 / (1+r)^1 = 1,000 ⇒ (1+r) = 1.10 ⇒ XIRR = 10.0% exactly. A 366-day leap span would give 9.97% under Actual/365 — which is why the textbook "exactly 10%" uses a 365-day span.
- 2Multi-flow → ≈13.4%: −1,000 on 2025-01-01, −1,000 on 2025-07-01, then +2,200 on 2026-01-01. Solved iteratively, the rate that zeroes the XNPV is ≈13.4%(13.41%) — golden-tested against Excel's
XIRR(). The second instalment was invested for only half the period, so it is weighted accordingly — which is exactly what CAGR cannot do.
Which number is your real return?
Three numbers get called "return", and only one is right for a portfolio built with money added on different dates. Absolute return ignores time entirely. CAGR assumes a single lump sum. XIRR weights every rupee by how long it was actually invested — so for SIPs, top-ups and partial redemptions it is the only honest annualised figure.
Absolute return
(Current − Invested) / Invested
Total gain as a percentage of money put in. Says nothing about how long it took.
A 50% absolute return over 1 year and over 10 years look identical here — useless for comparison.
CAGR
(End/Start)^(1/yrs) − 1
Annualises a single lump sum from start to end value.
Wrong when you added money over time — it ignores the dates and sizes of contributions.
XIRR
XNPV = 0 over actual dates
The money-weighted annualised return on irregular, dated flows.
The correct figure for SIPs, lump sums and redemptions mixed together — and what Excel returns.
Rule of thumb
Paste your real transactions — and benchmark them against Nifty 50
Indian MF investors already download a CAS (Consolidated Account Statement)of every dated transaction. This calculator makes pasting that table a first-class flow: auto-detect the (date, amount) columns, sign them (purchase = −ve, redemption / current value = +ve), and compute XIRR — no incumbent ingests a broker/MF statement directly. Then it re-runs the same dated contributions as if they had bought a Nifty 50 index instead, so you see your XIRR vs the index XIRR on identical timing.
- 1Paste the statement, get XIRR instantly: Accepts dd/mm/yyyy and yyyy-mm-dd, currency symbols, and +/− or buy/sell labels. Add a final positive row for today's value, and the tool returns XIRR, total invested, total returned and absolute return together.
- 2Same flows, index instead — the honest comparison: Incumbents compare lump-sum CAGR at best. Running your identical contribution dates and amountsinto a Nifty 50 index gives a true like-for-like "did my fund beat the market on my actual timing?" answer — a genuinely share-worthy output.
Cross-links
Frequently asked questions
XIRR (Extended Internal Rate of Return) is the annualised, money-weighted return on a series of cash flows that occur on arbitrary dates — exactly the rate Excel's XIRR() function returns. It is the rate r that makes the discounted sum of all dated cash flows equal zero (XNPV = 0). CAGR, by contrast, assumes a single lump sum invested once and grown to a final value — it ignores the timing and size of intermediate contributions. For a portfolio built with multiple SIPs, lump sums, and redemptions on different dates, CAGR is simply the wrong tool; XIRR is the correct annualised return because it weights each rupee by how long it was actually invested.
XIRR solves XNPV(r) = Σ CF_i / (1 + r)^((d_i − d_0) / 365) = 0, where CF_i is each cash flow (negative for money invested, positive for money received), d_i is its date, d_0 is the first date, and the day-count is Actual/365 (the Excel convention). There is no closed-form solution, so it is solved numerically with Newton-Raphson (seeded around 0.1, iterating until |XNPV| < 1e-7, which matches Excel to about 8 decimal places in 5–10 iterations), falling back to bisection if Newton diverges. A valid solution requires at least one negative and at least one positive cash flow.
With one outflow of 1,000 on 2025-01-01 and one inflow of 1,100 on 2026-01-01 — a 365-day, non-leap span — the equation is 1,100 / (1 + r)^1 = 1,000, so (1 + r) = 1.10 and r = 10.0% exactly. (Note: 2024-01-01 to 2025-01-01 is 366 days because 2024 is a leap year, which under Actual/365 would give 9.97% instead — using a 365-day span keeps the textbook "exactly 10%" self-consistent with the "matches Excel to 8 dp" claim.)
Money you pay out (investments, purchases, SIP instalments) is entered as negative. Money you receive (redemptions, dividends, the current value of your holdings as a final positive row) is entered as positive. This mirrors Excel's XIRR() exactly. If every cash flow has the same sign — all negative or all positive — there is no rate that zeroes the XNPV, and the calculation returns no solution, the same way Excel returns #NUM!.
Most online "XIRR" tools only accept a fixed-frequency SIP — a single recurring amount with a start and end date — so they cannot handle a real portfolio with lump sums, SIPs, and redemptions on irregular dates. Faced with that, they point you to "calculate XIRR in Excel". This calculator removes that step: paste an arbitrary-dated transaction table (date, amount), add a final positive row for your current value, and get the XIRR instantly in the browser, matching Excel.
Method, assumptions & references
Methodology: XIRR solves XNPV(r) = Σ CF_i / (1+r)^((d_i−d_0)/365) = 0 by Newton-Raphson (bisection fallback), Actual/365 day-count — matching Excel's XIRR() to ~8 dp. Requires ≥1 negative and ≥1 positive cash flow. Golden examples: −1,000 (2025-01-01) → +1,100 (2026-01-01) = 10.0% exactly; −1,000 / −1,000 / +2,200 = ≈13.4%. Pure deterministic math — no time-sensitive data. Not financial advice.
How we calculate this
Reviewed by Reckonist Editorial · Last reviewed 16 June 2026. Figures follow the methods and sources set out in our editorial standards.
XIRR is pure, deterministic math (XNPV = 0 over Actual/365), computed entirely from the cash flows you enter and matched to Excel's XIRR(). It measures past, money-weighted return — it is not a forecast and does not account for taxes or charges unless you include them as cash flows. Benchmark comparisons (e.g. Nifty 50) use index levels and are illustrative. Not investment advice — consult a SEBI-registered investment adviser for personal planning.
Keep going
Same-category tools follow this colour; a cross-category link keeps its own.