Data Dictionary
Field definitions, quarterly conventions and known limitations of the HoldingsHub 13F dataset. API fields match the tables below; methodology changes are logged in the changelog.
funds
Institution registry: one row per filer (13F manager).
| Field | Type | Description |
|---|---|---|
id | INTEGER | Internal primary key. |
slug | TEXT | URL identifier, e.g. berkshire-hathaway. |
name | TEXT | Filer name as used across the site. |
type | TEXT | One of institution / hedge / star / asset / index / bank. |
description | TEXT | Short profile text. |
filings
One row per fund per quarter (13F-HR filing).
| Field | Type | Description |
|---|---|---|
id | INTEGER | Primary key; referenced by holdings.filing_id. |
fund_id | INTEGER | FK to funds. |
period | TEXT | Report quarter, 'YYYY-Qn' (e.g. 2026-Q2 = positions as of 2026-06-30). |
report_date | TEXT | 13F report date (quarter end), 'YYYY-MM-DD'. |
imported_at | TEXT | When the row was ingested. |
stocks
Entity mapping: every security seen in any filing.
| Field | Type | Description |
|---|---|---|
symbol | TEXT | US ticker (primary join key). CUSIP is not stored; 13F data on this site is normalized to tickers. |
name | TEXT | Company name from the filing. |
sector | TEXT | GICS sector (11 sectors, 'Miscellaneous' fallback). |
exchange | TEXT | Listing exchange if known. |
holdings
Position rows: one per filing per security (hot + archive union exposed as holdings_all).
| Field | Type | Description |
|---|---|---|
filing_id | INTEGER | FK to filings. |
stock_id | INTEGER | FK to stocks. |
shares | REAL | Share count as reported (share class aggregated). |
value_usd | REAL | Manager-reported market value in USD. |
weight_pct | REAL | value_usd / total reported value of that filing × 100 — share of the disclosed long book, not of AUM. |
shares_prev | REAL | Share count in the fund's previous available filing (NULL for NEW positions). |
change_type | TEXT | NEW / ADD / REDUCE / HOLD vs the previous filing. |
filing_stats
Materialized per-filing aggregates (kept fresh on import).
| Field | Type | Description |
|---|---|---|
positions | INTEGER | Number of position rows. |
n_new | INTEGER | Positions with change_type = NEW. |
total_value | REAL | Sum of value_usd for the filing. |
stock_prices
Quarter-end closes used for clone-portfolio backtests.
| Field | Type | Description |
|---|---|---|
period | TEXT | Quarter label; close is the last trading day of that quarter. |
q_return | REAL | Return vs previous quarter end (fraction); latest row only. |
Scope and known limitations
Source and scope
All holdings data comes from SEC EDGAR Form 13F-HR quarterly filings — public records covering long positions in US-listed equities of $100,000 or more, filed within 45 days of quarter end. Index constituent lists come from public index publications.
What 13F does not contain
Short positions, most derivatives and non-US-listed securities are not disclosed. A manager's disclosed long book is not its full strategy, and reported values may include aggregated positions across sub-advisors.
Quarter conventions
period labels follow calendar quarters: 2026-Q2 means positions as of 2026-06-30. Filings may arrive up to 45 days later, so a quarter's data is most complete roughly two months after quarter end. Older quarters may be re-imported (backfilled) when better source data is found.
CUSIP
HoldingsHub normalizes 13F securities to exchange tickers and does not store CUSIPs. The entity mapping page therefore maps symbol → company and GICS sector; a CUSIP crosswalk is not available from the filings we ingest.
Derived figures
weight_pct, change_type and the clone-portfolio backtests are computed by HoldingsHub from the raw filings; methodology changes will be logged in the changelog. Prices are quarter-end closes, not adjusted for events after the quarter.
Last updated: October 2026 · Data & API