Back to Blog

Is 18% XIRR Good? Depends on Which Number Your Broker Is Showing You

18% XIRR sounds excellent. But your broker's number and your real ledger-based number are often 5–7 percentage points apart. Here's a ₹40L Zerodha portfolio where the gap was exactly that — and where each rupee of it went.

18% XIRR is excellent — if it's real. The problem is that there are two very different numbers both called "XIRR", and your broker is showing you the optimistic one.

Quick Answer: 18% XIRR would put you in the top decile of self-directed Indian equity investors over a 4+ year period. But first, check which XIRR you're reading. If it comes from your broker's Holdings page — or from any tool that uses trade prices rather than your account ledger — it is likely overstated by 4–7 percentage points. The correct number comes from your broker's fund statement (the ledger), which captures every rupee that actually left your bank account, including idle periods, all charges, and the exact timing of every deposit.

Investor analysing portfolio returns on a laptop — checking real XIRR vs broker's reported number

There Are Two XIRRs. Your Broker Gives You the Wrong One.

Open Zerodha's Holdings page. At the top you'll see Invested, Present Value, Unrealised P&L — and, sometimes, an XIRR. If it shows a number at all, it's calculated from your current positions: the price you paid for each stock you still hold, vs what it's worth today.

That's not your XIRR.

Your real XIRR comes from your broker ledger — the fund statement that records every rupee you transferred into your account, every withdrawal you made, every charge that was deducted on every trade, and every day that cash sat idle. Same portfolio. Very different number.

Here's how different.

A ₹40L Portfolio — What the Holdings Page Said vs What the Ledger Said

This is a real scenario, anonymised. Zerodha account, 4 years of investing, ₹40L deployed across delivery equity and mutual funds.

Holdings XIRRLedger XIRR
XIRR18.2%11.3%
Gap6.9 percentage points

Same portfolio. Same 4 years. 6.9 points apart.

Here's where those 6.9 points went.

Culprit 1 — Idle Cash Drag (−2.1 pts)

Across 4 years, roughly ₹7–8L sat uninvested in the Zerodha account at various points. Money transferred in while waiting for the right entry. Proceeds from a sale that took 3 months to redeploy. Emergency buffer kept liquid.

Holdings XIRR ignores all of this. It only sees currently held positions — it starts each position's clock when you bought it, not when you sent the money to Zerodha.

The ledger starts the clock when the money left your bank. That idle cash earned 0% inside your broker account. That 0% pulls down your annualised return.

Impact: −2.1 percentage points.

Culprit 2 — Charges Not Captured by Holdings (−1.8 pts)

120 delivery trades over 4 years. Zerodha charges ₹0 brokerage on delivery — but the trade still isn't free.

ChargeRatePer ₹50,000 trade
STT (buy + sell)0.1% each way₹100
Exchange charges~0.00322%₹16
SEBI charges₹10/crore₹1
GST on above18%₹3
Stamp duty (buy)0.015%₹8
Total per trade~₹128

120 trades × ₹128 = ₹15,360 that left the account but never appears in a Holdings-based XIRR. The ledger captures every debit to the rupee — because these charges reduced the actual cash in the account.

Impact: −1.8 percentage points.

Culprit 3 — A ₹4L Deposit at the Market Peak (−3.0 pts)

In January 2022, ₹4L was transferred into the account. Nifty was near 18,400 — close to its all-time high at the time. The money was deployed gradually over the next 5 months. By June 2022, Nifty had fallen ~15%.

Holdings XIRR dates each position's cost to when the stock was purchased — April, May, June 2022, after the correction. It looks like the money went in at reasonable prices.

The ledger shows the ₹4L arriving in January, at the peak. That 5-month idle window during a drawdown is real — it's real capital that was at risk, earned nothing, and was only partially recovered by the time the market turned. Hiding that window makes your timing look better than it was.

Impact: −3.0 percentage points.


Total accounted gap: 6.9 points. Holdings XIRR 18.2% → Ledger XIRR 11.3%.

What Does 11.3% Actually Mean?

It's a solid number. Not 18%, but genuinely good.

A ledger XIRR of 11–13% over 4+ years for a self-directed Indian equity investor — after all charges, idle cash drag, and timing — is in the top third of retail portfolios. The average self-directed Zerodha account significantly underperforms this when full costs are included.

For context, Nifty 50 XIRR on similar cash flows over the same period was around 9.8%. This portfolio outperformed the index by ~1.5 points after everything. That's real alpha — not spectacular, but real.

18.2% was a mirage. 11.3% is the honest number, and it's one worth knowing.

What If Your Ledger XIRR Is Actually 18%?

Then you're genuinely exceptional. A real, ledger-based XIRR of 18%+ over 4+ years puts you well above the index and above the vast majority of self-directed investors. That's a number worth being confident about — because it's already absorbed every charge, every idle day, and every timing mistake.

The distinction matters because it's the difference between skill and luck. If Holdings shows 18% and ledger shows 11%, you got 11% in a good market cycle. If ledger shows 18%, you actually beat the market by ~8 points on real capital deployed. Those are very different stories.

How to Find Your Real Number

  1. Log into Zerodha Console → Reports → Fund Statement → All Segments → Download CSV
  2. Upload to XIRR Ledger
  3. Your real ledger-based XIRR appears in about 30 seconds

No Excel. No formulas. No credentials shared — you download the file yourself and upload it.

The calculation runs on your actual cash flows: every fund transfer, every charge, every withdrawal, with your current portfolio value as the final inflow. The number you get is the one that answers the real question.


The question isn't whether 18% is good. It's whether 18% is yours.


Calculate your real XIRR from your Zerodha ledgerTry XIRR Ledger free

See what a full report looks likeDownload Sample Report

Disclaimer: This article is for informational purposes only and does not constitute financial, investment, tax, or legal advice. Past returns do not indicate future performance. Please consult a qualified financial advisor before making investment decisions.

Ready to Calculate Your True XIRR?

Upload your ledger and get accurate returns in minutes

Back to All Posts