Composition Methodology

How the holdings data is collected, matched by ISIN, grouped and checked.

Source data: Fund house monthly portfolio disclosures - 24 equity funds, June 2025 to September 2026 · Last updated: 2026-10-18
Live tool

Analyze any Indian mutual fund or portfolio across 30+ return, risk and benchmark metrics in the live MFPRO tool.

How MFPro builds its mutual fund portfolio composition data: the monthly holdings of 24 large equity funds, from each fund house's own portfolio disclosure, matched across funds and months by ISIN.

1. Data Collection

Every month, each fund house (AMC) publishes a detailed Excel file listing every stock, bond and instrument its funds hold, with the quantity and market value. These are public disclosures that SEBI requires.

Most files are collected by automated download scripts. A few fund houses have website protections (CAPTCHAs, login gates) that prevent automation, and those files are downloaded by hand. Every original Excel file is kept on GitHub Releases and can be downloaded from the AUM breakdown in the app.

2. Extraction and Database Loading

Each fund house uses a different Excel format, with different column layouts, sheet names and conventions. Fund-specific scripts read each file, find the right columns (company name, ISIN, quantity, market value) and load the holdings into a SQLite database.

3. ISIN Identification

Every security traded in India has a unique 12-character identifier called an ISIN (International Securities Identification Number), assigned by NSDL. The complete ISIN master from NSDL (about 415,000 securities) and the NSE equity list form the reference.

Each holding from every fund is matched against this master. That identifies the same company across funds, even when fund houses spell the name differently (for example "Infosys Ltd", "Infosys Limited" and "INFOSYS LTD."). The full step-by-step mapping is in the ISIN Mapping Process tab of the app.

4. Corporate Action Mapping

When a company does a stock split, bonus issue or other restructuring, a new ISIN is issued, so the same company can appear under two ISINs across months. Funds that bought before a split hold the old ISIN and funds that bought after hold the new one.

These cases are detected automatically by comparing ISINs from the same company, and the old ISIN is mapped to the new one. Holdings of the same company are then grouped as one company across months. The mappings are listed in the ISIN Remaps tab of the app.

5. Debt Instrument Grouping

Funds hold many short-term debt instruments, such as Certificates of Deposit (CDs) from banks and Commercial Papers (CPs) from companies. One bank can have 5 to 10 separate CDs with different maturity dates, each with its own ISIN.

All CDs from the same bank are grouped into one entry (for example "HDFC BANK CD"), and all CPs from the same company are grouped the same way. Government T-Bills and G-Secs are grouped into "GOI T-BILL" and "GOI G-SEC".

6. Non-Equity Holdings: Asset Groups

Besides stocks, the funds hold cash, money market paper, units of other funds, REITs, bonds and foreign shares. Every holding carries an asset group, assigned in one place, which follows the sections of SEBI's standard portfolio format. Each holding also carries a finer subgroup. Both are in the data download.

Asset groupWhat it holds
EquityIndian shares, including shares awaiting listing. Compulsorily convertible debentures are equity-related and stay here.
Foreign stocksOverseas shares, identified by a non-Indian ISIN prefix (for example US, GB, KY).
CashTREPS and triparty repo (overnight lending through the clearing corporation), reverse repo, and a fund house's own cash line where it files one (Franklin: call money, cash and other assets).
Money marketTreasury bills, certificates of deposit and commercial paper. All mature within a year.
Mutual fund unitsUnits of liquid and money-market funds.
DebtGovernment securities and corporate bonds and debentures.
REITs and InvITsUnits of real estate and infrastructure investment trusts.
OthersNet receivables and payables, net current assets, margins placed with the exchange, written options, and index or stock futures where the fund house lists them inside its net assets (Axis and Motilal Oswal). This group can be negative.

Futures

Every fund-month adds up to the fund house's own net assets (AUM). Most fund houses list futures exposure after their grand total, outside net assets, so it is not in this data; the margin they post for it is, under Others. Axis and Motilal Oswal list futures inside net assets with an offsetting payable, so their futures appear under Others.

In the app

In the main comparison table the non-equity groups sit in group rows at the bottom. Each row shows the combined value across the selected funds, and a group appears only when some fund holds it. Clicking a row opens a drill-down:

ViewWhat it shows
OverviewThe instrument types within the group, with market values and composition percentages for both periods.
By Mutual FundHow much each fund holds in the group, with the individual instruments under each fund.
By Instrument GroupGrouped by instrument type (for example CDs, CPs and T-Bills), with the fund-level breakdown for each.
By Instrument (Others)Individual items in Others, aggregated across funds. Click an item to see which funds hold it.

7. Validation

CheckWhat it does
Total matchingAfter each fund is loaded, its database total is compared with the grand total in the fund house's Excel file. They must match exactly.
ISIN mapping reviewEvery corporate action mapping and debt grouping is exported to a readable file and reviewed before it is applied. The ISIN Remaps tab shows them.
Cross-check with AMFIEach fund's month-end total is compared with the fund size AMFI publishes for that date, from the daily AUM feed.

Results for every fund-month are on the composition validation page, with the reason for each known difference.

8. Delivery

The processed data is a SQLite database of about 12 MB, holding only what the dashboard needs. When you open the app, the database is downloaded into your browser and every query, filter and calculation runs locally with sql.js (SQLite compiled to WebAssembly). No server is involved.

The holdings are also published as a CSV download, one row per holding per month, with a column guide. The original fund house Excel files are on GitHub Releases.

9. Metrics and Calculations

The dashboard computes percentage weight change, market value change and quantity change across periods. Each is explained in the information icons next to the column headers in the Holdings Analyzer and Full Data tabs.