How every number here is computed
No black boxes and no vendor feed of pre-computed ratings. Every return, risk statistic and star on this site is derived from published NAV history by the formulas below. If you disagree with one of them, you can see exactly which one you disagree with.
Where the data comes from
The scheme list and the full daily NAV history come from AMFI, the Association of Mutual Funds in India — the industry body whose members are legally required to publish NAVs daily. We read AMFI’s own NAVAll.txt for the live universe and per-scheme history through mfapi.in, which mirrors the same AMFI archive.
Quarterly average AUM and expense ratios come from AMFI’s scheme-level disclosures. Portfolio holdings, fund-manager names and scheme metadata are read from the AMCs’ own published disclosures. Nothing on this site is supplied to us by a fund house, and no fund house can influence a ranking.
NAVs are picked up within minutes of AMFI publishing them; everything slower-moving (AUM, expense ratios, holdings, manager changes) refreshes hourly. Each fund page shows the date of the NAV it is quoting, and no metric is computed against a NAV more than 15 days old — a scheme that has stopped pricing shows blanks rather than a stale number dressed as a current one.
Cleaning the NAV series
Published NAV history contains bad prints, and one of them can wreck every statistic derived from the series. Before computing anything, each series is passed through three filters:
- Invalid points are dropped. Non-positive, non-finite or malformed-date entries, and the series is sorted ascending.
- Single-day spikes are removed. A point that moves more than 25% from the last good NAV and then reverts to within 8% of it the next session is a bad print, not a market move. Left in, one such day injects a matched pair of enormous daily returns that dominate volatility and fabricate a drawdown.
- History before a discontinuity is discarded. No real fund moves more than 3× (or less than ⅓) in a single day. Where that happens it is a data error or a reused AMFI scheme code — two different funds concatenated — so metrics are computed only over the continuous recent segment.
Segregated (“side-pocketed”) schemes are excluded from screens and rankings entirely: their NAVs are distorted by construction and any comparison against normal peers is meaningless.
Returns
Under one year, returns are absolute — the simple change in NAV over the window. At one year and beyond they are CAGR, the compound annual growth rate, so a 3-year and a 5-year figure are directly comparable. Annualizing a 6-month number would inflate it, which is why we don’t.
Each window ends at the latest NAV on or before the as-of date and starts at the NAV on or before the lookback date. Two guards keep a gap in the history from producing a plausible-looking wrong number: a fund whose history doesn’t reach back to the requested start shows no figure for that period rather than an “almost 5-year” return, and if the nearest available price predates the anchor by more than 45 days the figure is suppressed too.
Returns are NAV-to-NAV and therefore net of the expense ratio — that cost is already deducted inside the NAV. They do not account for exit load, stamp duty, or your own capital gains tax, all of which depend on when you bought and sold. Direct-plan and Regular-plan variants of the same scheme are tracked as separate funds, because they have genuinely different NAVs and costs; rankings default to Direct plan, Growth option.
Risk
- Volatility — the standard deviation of daily returns over the trailing 3 years, annualized by √252 (the usual trading-day count), expressed as a percentage. Consecutive points more than 15 days apart are skipped, so a fund that stops reporting and resumes later can’t fold a multi-year move into one “daily” return.
- Sharpe ratio — trailing 3-year CAGR minus a risk-free rate of 6.5%, divided by that annualized volatility. Where a fund is too young for a 3-year figure, the 1-year return stands in.
- Sortino ratio — the same excess return, but divided by downside deviation only, so a fund isn’t penalised for volatility to the upside.
- Maximum drawdown — the deepest peak-to-trough fall across the whole cleaned series. Also computed over a trailing 3-year window, which is the form used anywhere funds are compared: a drawdown can only deepen as a record lengthens, so the lifetime figure ranks fund age as much as downside.
Sharpe and Sortino are suppressed for cash-like funds (overnight, liquid, daily-IDCW). Their volatility is near zero, so the denominator collapses and the ratio explodes into a number that looks meaningful and isn’t.
The 1–5 star rating
The rating is relative, never absolute. It is a weighted mean of four percentiles within the fund’s own peer group — same sub-category, same plan, same option. A 5★ liquid fund and a 5★ small cap fund have nothing in common except that each beat its own peers; the rating does not say one is a better investment than the other, and it is not a SEBI or rating-agency rating.
| Component | Weight | Measures |
|---|---|---|
| Performance | 60% | 3-year return vs peers — point-to-point CAGR and rolling average |
| Risk | 15% | volatility vs peers, lower is better |
| Cost | 10% | expense ratio vs peers, cheaper is better |
| Downside | 15% | worst 3-year drawdown vs peers, shallower is better |
A component a fund doesn’t have — no expense ratio on file, too short a record for a 3-year drawdown — is scored at the middle of its peer group rather than dropped. Dropping it renormalised the weights, which sounds fairer and isn’t: an average of three percentiles swings wider than an average of four, and since the result is then ranked, that wider swing pushed those funds into the top and bottom bands more often in both directions. Scoring the gap as “no information” is still not a penalty. Performance is the one mandatory component: without a track record there is nothing to rate, and scoring a brand-new fund on cost and volatility alone would hand it five stars for being cheap.
That composite is then ranked within the same peer group, and the resulting percentile is what the star bands cut — the familiar 10 / 22.5 / 35 / 22.5 / 10 split:
- 5★ ★★★★★ — percentile 90 to 100 within the peer group
- 4★ ★★★★ — percentile 67.5 to 90 within the peer group
- 3★ ★★★ — percentile 32.5 to 67.5 within the peer group
- 2★ ★★ — percentile 10 to 32.5 within the peer group
- 1★ ★ — percentile 0 to 10 within the peer group
So 5★ means top tenth of its category, not “good”. A fund with fewer than three years of history is rated on its 1-year return instead and marked as such wherever the star appears; a fund with too few comparable peers is left unrated rather than ranked against a handful.
The basket planner
The planner turns eight answers into an allocation and a set of funds. It is a rule set, not a model and not a language model: the same answers always produce the same basket, and every table below is in the open so you can check the output against it.
Risk capacity, then risk tolerance. Capacity is scored 0–100 from four inputs — 0.40 × horizon + 0.25 × savings rate + 0.20 × age + 0.15 × existing corpus — and banded at 35 and 65. Horizon carries the most weight because it is the only input that decides whether a fall has to be realised or can be waited out. The plan then uses the lower of that score’s band and the appetite you selected, never the higher. Deliberately not “100 minus age”, which would hand a 28-year-old saving a two-year house deposit a 72% equity allocation.
Gates come first. In order: no surplus, a surplus under the ₹500 SIP minimum, no six-month emergency fund (100% liquid and overnight until it exists), a horizon under a year (parking only), and a horizon under three years (no equity at all). Only past all five does equity appear. The emergency-fund basket is a job with a finish line, so its projection runs to the month the buffer is full, not to the horizon you typed.
Your tax slab reaches the debt sleeve, not just the gates. Since April 2023 debt-fund gains are taxed at your slab with no indexation, so at 30% a 6.5% accrual yield is 4.55% net — below the 6% inflation this page assumes on the next line. At that slab the debt bucket therefore holds arbitrage, which carries debt-like risk with equity taxation (12.5% long-term past a year): all of it where debt is a single sleeve, half of it alongside corporate bond otherwise. Below 30% the gap is about half a point and does not pay for arbitrage’s spread risk, so the accrual sleeve stands. The under-three-year basket applies the same reasoning and swaps arbitrage for money market at a 0% slab, where the treatment buys nothing.
Allocation. Equity runs 20–80% by band and horizon bucket (3–5, 5–7, 7–10, 10+ years); gold is a flat 5%; the rest is debt. Equity splits across large cap, flexi cap, mid cap and small cap by band, with small cap suppressed under a 7-year horizon and mid cap under 5. Debt is one sleeve below a third of the portfolio, else split two ways — credit-risk, gilt, long-duration and dynamic bond funds are all excluded, because each is a directional bet the questionnaire never asked about.
When a sleeve can't be funded, the riskiest one goes and its weight goes to its own kind. Every fund needs at least ₹500 a month, and the basket holds at most five, so on a small SIP some sleeves have to merge. What gets cut is ranked by role — satellite before core before cushion — so a ₹1,500 SIP loses its mid cap rather than its large cap. The weight then follows the role, and failing that the asset class: gold is held as a cushion, so if it can't carry its own line it moves to debt, never into whichever equity sleeve happens to be largest. Rupees are handed out as whole ₹500 units by largest remainder, measured against what each sleeve was actually allocated, so a sleeve lifted to the one-unit floor cannot also claim the first leftover. The headline split you see is then recomputed from the funds actually bought, so it always describes the basket rather than the table row it started from.
An age ceiling sits over all of it. Regardless of band, horizon or the appetite selected, equity is capped at 75% from 46, 60% from 56, 50% from 61, 40% from 66 and 30% past 70; the excess moves to debt. Small caps are dropped past 60 and mid caps past 62 whatever the horizon says — drawdown typically starts around 60, and each sleeve’s recovery window (7 years and 5) has to fit before it. This is a suitability limit rather than a preference, and it sits outside the risk bands: a portfolio near or in drawdown realises a fall on a schedule instead of waiting it out, which is sequence-of-returns risk — a different hazard from the volatility a risk questionnaire measures, and not one an appetite answer should be able to opt out of.
Fund selection. Direct plan, Growth option, at least ₹500 Cr AUM, a five-year record, and a star rating computed over at least ten sub-category peers. Survivors are then scored 0–100 on eight factors, each expressed as a percentile within that fund’s own sub-category rather than a raw number: Sortino 20, Sharpe 15, 3Y rolling consistency 15, cost 15, 3Y max drawdown 12, fund size 10, downside capture 8, manager tenure 5. A fund missing a factor is scored over the factors it has — the weights renormalise rather than counting a gap as zero, which matters because the capture and beta family exist for only about half the universe.
Two things are deliberately absent. There is no alpha and no information ratio, because this database has no Total Return Index — the benchmark series available are price indices, so any alpha computed against them is overstated by roughly each index’s dividend yield. Ranking within a peer group sidesteps that entirely: every peer carries the same bias, so the ordering survives even though the level would not. And there is no absolute expense-ratio cap, because 1.0% is dear for a liquid fund and cheap for a small cap; cost is ranked within the category instead.
Fund size is scored as a plateau, not a ranking — the one factor where more is not monotonically better. A small-cap fund cannot deploy ₹50,000 Cr into small caps without quietly becoming a mid-cap fund. Full marks from ₹500 Cr up to ₹15,000 Cr (small cap), ₹25,000 Cr (mid cap) or ₹60,000 Cr (flexi, multi, focused, value), then tapering to zero at 35k / 60k / 150k. Large cap, ELSS, index and debt categories carry no upper penalty: the top-100 stocks absorb any size.
No two funds may hold the same portfolio twice. Overlap is measured stock by stock — Σ min(w_A, w_B) over shared holdings, each book first renormalised to 100 because published holdings sum to a fund’s equity sleeve rather than to 100. The ceiling is per pair, set at that pair’s own measured 90th percentile, because a single global threshold is inverted for Indian equity: two large-cap funds share a median 52.9% of their holdings and a large cap and a flexi cap 36.5% — both structural, since SEBI defines large cap as the top 100 stocks — while a large cap and a mid cap share only 6.4%. A flat 30% rule would reject the core of every balanced basket and never fire on the one case where overlap actually signals closet-indexing. Measured ceilings: large↔flexi 50%, ELSS↔large 52%, flexi↔mid 20%, mid↔small 16%, large↔mid 13%, large↔small 7%.
Diversification limits. No more than two funds from one AMC, and never more than five funds in total — past that the marginal fund mostly re-buys stocks the basket already holds while adding another statement line to track. An ELSS sleeve takes the flexi-cap slot rather than sitting beside it, because an ELSS fund is a flexi cap with a three-year lock-in and the two overlap 28.7% at the median.
Portfolio-level figures are computed on the basket as a whole. Weighted cost is value-weighted across the funds that publish a TER. Blended volatility and the worst historical fall are computed from a weighted index of the funds’ actual daily NAVs, each rebased to 100 and aligned on dates every fund reports — so the number includes the diversification benefit rather than averaging the parts, which would ignore the whole reason for holding more than one fund.
The allocation does not stay still. Each year of the term has less time left to recover from a fall and finds you a year older, so equity steps down on a published glide path — min(max(table[band][remaining horizon], terminal floor), age ceiling), evaluated yearly — and the projection compounds at each year’s own blended rate rather than today’s for the whole term. That produces a lower projected corpus than a flat rate would, which is the honest number.
Where that glide LANDS depends on what the money is for, because the horizon means two different things. A home purchase or a tuition bill is spent on the date, so the whole balance has to be there in cash and the path goes to 0% equity. Retirement is drawn down over the decades after the date and general wealth has no date at all, so those land at 30% — the through-retirement floor standard glide-path products use. It is a floor under the table and never a raise above it, so a conservative plan starting at 20% equity still ends at 20%, and the age ceiling above still wins at every step. Taking every goal to zero told a 30-year-old to hold nothing but debt from 43.
If you give it a target, the plan is solved rather than described: the target is inflated to the horizon, what is already invested is compounded and netted off, and the remainder is divided by the future value of ₹1/month to get the required contribution. When that exceeds what your surplus allows, the plan says so and solves each lever — the SIP that would reach it, the horizon that would reach it, and the target the current SIP actually reaches. It never quietly under-delivers against a number you typed. The horizon lever is bounded by the form’s own limits (40 years, age 75), so where nothing inside them closes the gap it is dropped rather than answered with a number that is arithmetic and not a plan.
What the plan does not decide, it says. Money you have already invested is compounded at the basket’s blended rate so the projection includes it, but the basket sizes the new monthly money only — it has no view on where the existing pile sits, and it says so beside the number. Where an 80C sleeve is added, the plan reports how much of the ₹1.5 L limit it claims and assumes the rest is empty; EPF, insurance premium, home-loan principal and tuition all draw on the same limit and the form does not ask about them.
What it isn’t. The projection is arithmetic on assumptions you can change, not a forecast. The backtest applies today’s fund selection to the past, so it is survivorship-biased by construction and flatters itself. And none of it is investment advice — see below.
What we don't do
- We are not a distributor or a broker. We do not sell funds, earn commission or trail on any scheme, and take no payment for placement — there is nothing a fund house could buy here.
- We are not a SEBI-registered investment adviser and we do not give investment advice. A ranking is an ordering by a stated formula; the basket planner is a published rule set applied to what you typed in. Neither knows your full financial position, and neither is a suggestion to buy.
- We do not forecast. Calculators project what a stated assumption implies; the assumption is yours and the output is arithmetic, not a prediction.
Figures are computed from third-party data and can contain errors. Before acting on anything here, check the scheme’s own SID, SAI and factsheet. Mutual fund investments are subject to market risks, and past performance does not guarantee future returns.