This dataset contains every Form N-PORT and NPORT/A filing submitted to the SEC's EDGAR system since October 2019 — structured, position-level portfolio data for the entire U.S. registered fund industry including mutual funds, ETFs, and closed-end funds. Each record represents one fund series for one fiscal quarter and includes complete portfolio holdings with security identifiers (CUSIP, ISIN, LEI), fund-level financials (total assets, liabilities, net assets), performance returns by asset category, monthly capital flow data, interest rate and credit spread risk metrics (DV01/CS01 by maturity bucket), derivative positions with counterparty detail, and position-level liquidity classifications.
The dataset is 7.6 GB in compressed JSONL format, updated daily, covers the full population of N-PORT filers, and is survivorship-bias-free.
Programmatically retrieve the full list of dataset archive files, download URLs and dataset metadata.
Dataset Index JSON API
Download the entire dataset as a single archive file.
Download Entire Dataset:
Download a single container file (e.g. monthly archive) from the dataset.
Download Single Container:
Each record is a single Form N-PORT filing: one fund series, one fiscal quarter. The filing captures the fund's complete portfolio as of the last business day of the quarter-end month, plus fund-level summary data spanning all three months of the quarter.
Form types included:
| Form Type | Description |
|---|---|
| NPORT | Original quarterly portfolio report filed by a registered investment company series |
| NPORT/A | Amendment that fully replaces a previously filed NPORT for the same series and period |
Coverage period: October 2019 to present. Large fund complexes (net assets >= $1 billion) began filing for fiscal quarters ending after April 2019. Smaller complexes joined for periods ending after April 2020. Full-population coverage exists from mid-2020 onward.
Update cadence: Daily. New filings are added within one business day of EDGAR acceptance.
Filer population: Approximately 6,000 fund series file N-PORT each quarter, spanning mutual funds (open-end), ETFs, and closed-end funds. Money market funds are excluded (they file Form N-MFP). Business development companies are excluded (they file Form 10-K/10-Q).
One record equals one EDGAR filing: a single fund series for a single fiscal quarter, uniquely identified by accession number. Each record corresponds to one item in the filings array of the N-PORT Data API. The data originates from the SEC's structured XML schema for Form N-PORT, parsed into a JSON object with four top-level sections: filerInfo and genInfo (filing metadata), fundInfo (fund-level financials and risk metrics), and invstOrSecs (the portfolio holdings array).
filerInfo, genInfo)| Field | Description |
|---|---|
accessionNo | Unique EDGAR submission identifier (e.g., 0001752724-24-123456) |
submissionType | NPORT-P or NPORT-P/A |
filedAt | EDGAR acceptance timestamp |
genInfo.repPdEnd | Fiscal quarter-end date (period of report) |
genInfo.regCik | Central Index Key of the registrant investment company |
genInfo.regName | Registrant name |
genInfo.seriesId | SEC-assigned series identifier (e.g., S000012345) |
genInfo.seriesName | Fund name |
genInfo.seriesLei | LEI of the fund series |
filerInfo.seriesClassInfo.classIds | Share class identifiers within the series |
genInfo.isFinalFiling | Whether this is the fund's final N-PORT filing |
fundInfo)totAssets — aggregate fair value of all fund assetstotLiabs — aggregate liabilitiesnetAssets — total assets minus total liabilities; the NAV denominator for position weight calculationsassetsAttrMiscSec, assetsInvested — miscellaneous securities value and invested assetsamountsPayableOneYear, amountsPayableAfterOneYear — borrowings broken out by counterparty type (banks, controlled companies, other affiliates, others)borrowers — array of borrower name, LEI, and aggregate valuefundInfo.returnInfo)Monthly total returns at the class level via monthlyTotalReturns (fields: returnMonth1, returnMonth2, returnMonth3 for each classId). Derivative gains/losses broken out by contract category (commodity, credit, equity, foreign exchange, interest rate, other) via monthlyReturnCategories. Returns are fund-computed and net of fees.
For each of the three months in the quarter:
Flow data is reported in dollar amounts.
fundInfo.curMetrics, fundInfo.creditSpreadRisk)interestRateRiskDv01 — dollar value change per 1 basis-point rate shift, reported across maturity buckets (period3Mon, period1Yr, period5Yr, period10Yr, period30Yr) and by currency (curCd)interestRateRiskDv100 — dollar value change per 100 basis-point rate shift, same bucket structurecreditSpreadRisk — dollar value change per 1 basis-point spread shift, split by investmentGrade and nonInvestmentGrade, across the same maturity bucketsMeaningful for fixed-income and balanced funds. Equity-only funds typically report zeros.
invstOrSecs)The core of each record. Every position in the fund's portfolio is an object in the invstOrSecs array with:
| Field | Description |
|---|---|
name | Issuer name |
title | Security description |
lei | Legal Entity Identifier of the issuer |
cusip | 9-character CUSIP |
identifiers.isin | International Securities Identification Number |
identifiers.ticker | Exchange ticker (where applicable) |
balance | Shares, principal, or par value held |
units | Unit type (e.g., shares, principal amount) |
curCd | Denomination currency |
valUSD | Fair value in USD |
pctVal | Position weight as percentage of net assets |
assetCat | Equity, debt, derivative, other |
issuerCat | Corporate, U.S. government, municipal, sovereign, supranational, etc. |
invCountry | Country of investment or issuer risk |
payoffProfile | Long, short, or N/A |
isRestrictedSec | Whether the security is restricted |
fairValueLevel | Fair value hierarchy level (1, 2, or 3) |
A single fund filing may contain from a handful of positions (concentrated equity fund) to 10,000+ positions (broad bond index fund).
Debt-specific fields (debtSec): maturityDt, annualizedRt (coupon rate), couponKind (fixed/floating/variable/zero), isDefault, areIntrstPmntsInArrs, isMandatoryConvrtbl, isContngtConvrtbl, and reference instrument data via dbtSecRefInstruments.
Derivative-specific fields (derivativeInfo): Organized by derivative type — fwdDeriv (forwards), futrDeriv (futures), swapDeriv (swaps), optionSwaptionWarrantDeriv (options/swaptions/warrants), othDeriv (other). Each includes counterparties (name and LEI), notionalAmt, curCd, unrealizedAppr, expDate or terminationDt, derivCat, and payOffProf. Swaps additionally include fixed/floating/other rate descriptions and upfront payment fields.
Repurchase agreements (repurchaseAgrmt): transCat, repurchaseRt, maturityDt, isTriParty, central clearing indicator via clearedCentCparty, and collateral detail via repurchaseCollaterals (principal amount, collateral value, investment category).
Securities lending (securityLending): isCashCollateral, isNonCashCollateral, isLoanByFund.
Each holding is classified under Rule 22e-4:
| Bucket | Definition |
|---|---|
| Highly liquid | Convertible to cash within 3 business days without significantly changing market value |
| Moderately liquid | Convertible to cash within 7 calendar days without significantly changing market value |
| Less liquid | Sellable within 7 calendar days but may require price concessions |
| Illiquid | Cannot reasonably be sold within 7 calendar days without significant market impact |
Funds must maintain minimum highly-liquid holdings and may not exceed 15% of net assets in illiquid investments.
Form N-PORT is filed by registered management investment companies under the Investment Company Act of 1940, at the series (fund) level:
Excluded: Money market funds (file N-MFP), business development companies (file 10-K/10-Q), small business investment companies, unit investment trusts (unless exchange-traded), insurance separate accounts.
The ten largest filing complexes produce hundreds of filings per quarter:
| Fund Complex | Approximate Series per Quarter |
|---|---|
| Fidelity | 500+ |
| BlackRock / iShares | 400+ |
| Vanguard | 200+ |
| JPMorgan | 200+ |
| Invesco | 200+ |
| State Street / SPDR | 150+ |
| T. Rowe Price | 150+ |
| PIMCO | 100+ |
| Dimensional Fund Advisors | 100+ |
| American Funds (Capital Group) | 40+ |
Funds report portfolio data as of the last business day of each month. Monthly filings for the first two months of each fiscal quarter are confidential (non-public). The third month (quarter-end) filing is publicly released on EDGAR and populates this dataset.
Filing deadline: 60 days after fiscal quarter-end, as specified by Rule 30b1-9(a). Many large complexes file well before the deadline. The confidentiality period for the first two months' filings is governed by Rule 30b1-9(b), which delays public release until 60 days after the end of the fiscal quarter in which the data was reported.
Fund fiscal years are distributed across all twelve months (October 31, August 31, March 31, etc.), so new N-PORT filings appear on EDGAR every month of the year.
Form N-PORT is governed by several interconnected rules under the Investment Company Act of 1940:
N-PORT replaced Form N-Q, which was rescinded in 2019. N-Q had required only a semi-annual schedule of investments in unstructured format. N-PORT expanded disclosure to monthly frequency (quarterly public), structured XML format, and dozens of additional data fields including risk metrics, flows, liquidity, and derivatives detail.
NPORT/A filings are full-replacement amendments. They replace the entire content of the original filing. Common reasons: correction of position data, addition of omitted holdings, updates after confidential treatment resolution. For any (series ID, periodOfReport) pair, the filing with the latest filedAt is the authoritative version.
N-Q was the predecessor. It covered only the schedule of investments in unstructured format, filed semi-annually, with no risk metrics, flows, or liquidity data. N-PORT provides 30+ structured fields per holding, quarterly public disclosure, and comprehensive risk/flow/liquidity reporting. N-Q covered ~2004-2019; N-PORT covers 2019-present with no overlap.
Form N-CSR provides audited (annual) or unaudited (semi-annual) financial statements including management commentary, expense tables, and the schedule of investments in narrative format. N-PORT provides structured quantitative data with risk metrics, flows, and liquidity classifications absent from N-CSR. They are complements: N-CSR for audited financials and narrative context; N-PORT for position-level analytics.
Form 13F covers only Section 13(f) securities (primarily U.S. exchange-listed equities) and aggregates across all accounts managed by the filer. N-PORT covers the complete portfolio (all asset classes) at the individual fund level. For mutual fund and ETF analysis, N-PORT is strictly superior. 13F remains relevant for tracking non-fund institutional equity positions (hedge funds, pension plans) outside the N-PORT population.
N-MFP covers money market funds; N-PORT covers all other registered management investment companies. No fund files both. Together they provide complete portfolio transparency across the entire U.S. registered fund industry.
Form N-CEN reports fund operational data (service providers, governance, distribution arrangements) annually. It contains zero portfolio holdings. N-PORT contains zero operational data. They complement each other and can be joined by series ID.
Quantitative portfolio analysts build crowding scores, overlap matrices, and factor decomposition models from position-level holdings across thousands of funds.
Fixed-income portfolio managers and credit analysts benchmark duration positioning, monitor high-yield vs. investment-grade allocation shifts, and track issuer-level credit exposure using the debt-specific fields and DV01/CS01 risk tables.
ETF analysts, market makers, and authorized participants cross-reference N-PORT snapshots with daily portfolio composition files to verify holdings, quantify securities lending revenue, and analyze tracking behavior.
Fund-of-funds managers and multi-asset strategists perform look-through analysis, decomposing fund-of-fund portfolios into underlying security-level exposures to detect unintended concentration.
Compliance officers and SEC examination staff run automated tests against prospectus investment restrictions, monitor the 15% illiquid investment ceiling, and screen for concentrated derivative counterparty exposure.
Academic finance researchers use N-PORT for mutual fund performance attribution, herding behavior studies, flow-performance analysis, and active share computation — among the most active research areas in empirical finance.
Risk managers and derivatives analysts aggregate derivative notional exposures across fund complexes, monitor counterparty concentration by LEI, and stress-test portfolio sensitivity.
Data engineers and fintech teams ingest the JSONL data into analytics platforms, build reverse-ownership databases (which funds hold a given CUSIP), and create fund-data APIs and LLM-powered financial tools.
Journalists and policy researchers investigate fund holdings of troubled issuers, analyze flow behavior during crises, and verify ESG fund claims against actual positions.
Extract all holdings across all quarterly filings, group by CUSIP to build a reverse-ownership table: for each security, which funds hold it, at what dollar value and portfolio weight. Compute crowding scores, pairwise fund overlap, and concentration risk metrics. Hedge funds use crowding signals to anticipate forced selling in stress scenarios; allocators use overlap analysis to avoid unintended concentration across multi-fund portfolios.
Use DV01 tables (by maturity bucket) to profile each bond fund's duration curve. Compare CS01 split by investment-grade and non-investment-grade to measure credit risk appetite. Combine with position-level coupon, maturity, and yield data for granular factor decomposition. Track quarter-over-quarter shifts to detect re-positioning ahead of rate decisions or credit cycle turns.
Aggregate position-level liquidity classifications by fund. Compute percentage of net assets in each bucket. Flag funds approaching the 15% illiquid ceiling or with declining highly-liquid percentages. Track liquidity profile changes during stress periods (e.g., March 2020). Used for surveillance targeting, by compliance officers for internal monitoring, and by researchers studying fund resilience.
Compute net flows (sales + reinvestments - redemptions) from the monthly flow fields. Normalize by net assets for flow rates. Aggregate by fund category, complex, or asset class. Correlate with performance to study flow-performance sensitivity. Macro analysts use aggregate flow data as a risk-appetite indicator; competitive intelligence teams track which complexes are gaining or losing market share.
Extract all derivative positions, classified by type. Aggregate notional by fund, category, and counterparty LEI. Compute derivative notional as a percentage of fund net assets to gauge leverage. Identify funds with large single-counterparty exposure. Used by regulators for systemic risk monitoring, by prime brokers for client risk assessment, and by fund boards for oversight.
Retrieve holdings of ESG-labeled or thematic funds. Cross-reference positions against exclusion lists (fossil fuel, weapons, tobacco) or inclusion criteria (renewable energy, diversity). Compute the percentage of the portfolio conflicting with stated mandates. Used for greenwashing investigations, by journalists for accountability reporting, and by advisors for client due diligence.
Map holdings by CUSIP to factor-loading databases (Fama-French, Barra). Compute fund-level factor tilts weighted by position size. Compare holdings to benchmark index constituents for active share calculation. Track evolution of factor exposures and active share over time. Enables research on whether active managers genuinely deviate from benchmarks and whether deviation generates alpha.
The dataset is distributed as compressed JSONL files (.jsonl.gz), organized by year and month. Each line in a JSONL file is one complete N-PORT filing as a JSON object.
Container structure:
1
form-nport/
2
2019/2019-10.jsonl.gz
3
2019/2019-11.jsonl.gz
4
...
5
2026/2026-03.jsonl.gz
Dataset Index JSON API: https://api.sec-api.io/datasets/form-nport.json
This endpoint returns metadata about the dataset and a list of all available container files. No API key is required. The response includes the dataset name, description, last updated timestamp, earliest sample date, total size, form types covered, container format, content file types, the download URL for the entire dataset, and a list of individual containers with their size, updated timestamp, and download URL.
Use this endpoint to monitor which containers have been updated in the most recent refresh run and decide which ones to download on a given day.
Example response:
1
{
2
"datasetId": "1f11ba9b-ce80-6020-9cc9-15e7d034ee10",
3
"datasetDownloadUrl": "https:/api.sec-api.io/datasets/form-nport.zip",
4
"name": "Form N-PORT – Quarterly Portfolio Investments Reports from Registered Investment Companies",
5
"description": "Structured dataset of all Form NPORT filings published since 2019.",
6
"updatedAt": "2026-03-26T05:00:10.000Z",
7
"earliestSampleDate": "2019-10-01",
8
"totalRecords": null,
9
"totalSize": 7605726669,
10
"formTypes": ["NPORT", "NPORT/A"],
11
"containerFormat": ".jsonl.gz",
12
"fileTypes": ["JSONL"],
13
"containers": [
14
{
15
"downloadUrl": "https:/api.sec-api.io/datasets/form-nport/2026/2026-03.jsonl.gz",
16
"key": "2026/2026-03.jsonl.gz",
17
"size": 43896948,
18
"updatedAt": "2026-03-26T05:00:10.000Z"
19
}
20
]
21
}
Download Entire Dataset: https://api.sec-api.io/datasets/form-nport.zip?token=YOUR_API_KEY
Downloads the full dataset as a single archive file containing all containers. This endpoint requires an API key.
Download Single Container: https://api.sec-api.io/datasets/form-nport/2026/2026-03.jsonl.gz?token=YOUR_API_KEY
Downloads one individual container file, such as a specific monthly archive, instead of the full dataset. This endpoint requires an API key.
Why does the dataset contain quarterly data if N-PORT is filed monthly? The SEC treats the first two monthly filings of each fiscal quarter as confidential. Only the third month (quarter-end) filing is publicly released on EDGAR. The public filing includes some aggregated data from all three months (notably monthly flows), but position-level holdings reflect the quarter-end snapshot only.
How do I handle amendments (NPORT/A)? NPORT/A filings are full replacements. For any given series ID and periodOfReport, use the record with the latest filedAt timestamp as the authoritative version.
What is the difference between the registrant CIK and the series ID? The registrant is the legal investment company entity (which may contain many funds). The series is the individual fund — its own portfolio and N-PORT filing. One registrant CIK may map to dozens or hundreds of series IDs.
Do all registered funds file N-PORT? All registered management investment companies except money market funds (which file N-MFP), SBICs, UITs (unless exchange-traded), and BDCs (which file 10-K/10-Q).
How does N-PORT compare to 13F for tracking fund holdings? N-PORT is strictly superior for mutual fund and ETF analysis. It covers the complete portfolio (all asset classes, not just 13(f) equities), reports at the individual fund level (not aggregated across accounts), and includes risk metrics, flows, liquidity data, and derivative detail absent from 13F.
Are there holdings that might be missing due to confidential treatment? Yes. Funds may request confidential treatment for specific positions. If granted, those holdings may be omitted or redacted from the public EDGAR version. NPORT/A amendments sometimes add these holdings after the confidential treatment period expires.
What is the typical number of holdings per filing? It varies widely. A concentrated equity fund may hold 30-50 positions. A broad bond index fund (e.g., Vanguard Total Bond Market) may hold 10,000+ positions. The record size in the JSONL file varies correspondingly.