~hedgewatch

How to read a 13F filing: a field-by-field guide to the SEC's institutional disclosure

every field in a 13F-HR, read straight from the raw EDGAR XML — and the one column that silently misstates position size.

by hedgewatch research11 min read

a form 13F is the quarterly report that institutional investment managers with over $100 million in qualifying US securities must file with the SEC within 45 days of each quarter-end. it lists every reportable equity position — issuer, CUSIP, share count, and a dollar value — but says nothing about shorts, cash, or anything held outside the US equity perimeter. this guide reads a 13F field by field, straight from the raw EDGAR XML, so you can interpret any filing without a data vendor between you and the source.

// key_takeaways
  • a 13F discloses long US equity, ETF, and options positions held at quarter-end — not shorts, cash, or foreign holdings.
  • the heart of the filing is the information table: one row per holding, with issuer, CUSIP, value, and share count.
  • the value field has been in whole dollars since 2023-01-03; funds still filing in thousands read 1,000× too small.
  • always verify a position by multiplying shares × quarter-end price and checking it against the reported value.

what_a_13f_is_and_who_files_it

form 13F exists because of section 13(f) of the securities exchange act of 1934, which requires large institutional managers to disclose their holdings so the public can see what the biggest pools of capital own. the trigger is a single threshold: $100 million in section 13(f) securities under investment discretion. cross it, and you must file within 45 days of each calendar quarter-end.

"section 13(f) securities" means exchange-traded stocks and ETFs, certain convertible debt, and exchange-traded options — the official list is published by the SEC. notably, it does not include short positions, cash, currencies, commodities, or most derivatives. a 13F is a snapshot of the long US equity book, and nothing else.

the filing itself is a 13F-HR (holdings report). a 13F-NT(notice) is filed when another manager reports the holdings on the filer's behalf, and a 13F-HR/A is an amendment — worth noting, because amendments often correct exactly the kind of error this cluster is about. read more on the common 13F filing errors that amendments fix.

the_information_table

everything that matters is in the information table — a structured XML document with one row per holding. EDGAR renders it as a formatted table, but the XML is the source of truth. here is what each field means, with a real value from Krensavage Asset Management's Q1 2026 filing.

The fields of a 13F information table row, what each means, and an example value from a real filing.
fieldwhat it meansexample
nameOfIssuerthe company name as the filer typed it (source casing, often abbreviated)Embecta Corp
titleOfClassthe class of security heldCOM (common stock)
cusipthe 9-character identifier for the security — your bridge to a ticker28104R104
valuemarket value at quarter-end. whole dollars since 2023-01-03; thousands before that6,500
sshPrnamtthe amount held — share count or principal amount735,340
sshPrnamtTypeSH = shares, PRN = principal (debt)SH
putCallblank for a long stock position; PUT or CALL for an option(blank)
investmentDiscretionSOLE, DFND (defined), or OTR (other) — who decides on the positionSOLE
votingAuthoritysole / shared / none voting power over the shares735,340 / 0 / 0
a newer, optional figi column (the Financial Instrument Global Identifier) now appears in some filings alongside the CUSIP. it is an alternative identifier — useful, but the CUSIP remains the field every tool keys on.

the_value_column_and_the_thousands_trap

the value field is where 13F data quietly goes wrong. since january 3, 2023 (EDGAR release 22.4) the SEC requires holdings to be reported in whole dollars. before that, the value column was stated in thousands — so a $6.5 million position was written as the number 6,500.

some funds never updated their filing process and still file in the old thousands convention. when they do, any tool that reads the value field as whole dollars shows a $6.5 million position as $6,500 — a rounding error. the position is 1,000× larger than it looks, and effectively invisible on every screener at once. this is the exact error HedgeWatch was built to catch; the full breakdown of the thousands-convention bug walks through several verifiable cases.

the safest habit: never trust the valuefield on its own. multiply the share count by the stock's quarter-end closing price. the product is the true position size — and if it is ~1,000× the reported value, you have found a filing in the thousands convention.

reading_shares_options_and_discretion

shares vs principal

the sshPrnamt field holds the amount, and sshPrnamtType tells you how to read it: SH for a share count, PRN for a principal amount of debt. the overwhelming majority of rows are SH. for those, share count × quarter-end price is your value check.

puts and calls

a blank putCall field means a plain long position in the security. CALL or PUT means the row is an option, and the valuereflects the value of the option position, not the underlying shares — a common source of misreading a fund's actual exposure.

discretion and voting authority

investmentDiscretion (SOLE, DFND, or OTR) and the three voting-authority columns describe control, not size. they matter for activism and 13D analysis — see 13F vs 13D vs 13G — but they do not change the dollar size of the position.

worked_example_read_one_row

take the Embecta (EMBC) row from Krensavage's Q1 2026 filing. the value field reads 6,500 and the share count reads 735,340. at EMBC's quarter-end close of roughly $8.81, the position is worth 735,340 × $8.81 ≈ $6.5 million — not $6,500. the filing is in the thousands convention; the value field is off by 1,000×, but the share count never lies. read every row this way and the data becomes trustworthy.

  1. 1
    open the information table
    pull the 13F-HR information table XML from EDGAR for the manager and quarter.
  2. 2
    find the holding row
    locate the row by nameOfIssuer and cusip.
  3. 3
    read identity + value
    note the issuer, resolve the CUSIP to a ticker, and read the value field.
  4. 4
    read shares
    take sshPrnamt (with sshPrnamtType = SH) as the share count.
  5. 5
    verify against price
    multiply shares × quarter-end close; a ~1,000× gap to the reported value means the thousands convention.

don't have a filing open yet? the next guide walks through how to find any fund's 13F on SEC EDGAR and open the raw XML.

faq

what is a 13F filing in simple terms?
a 13F is a quarterly report that large institutional investment managers must file with the SEC, listing the US-listed stocks, ETFs, and options they held at the end of the quarter. it shows issuer, CUSIP, share count, and a dollar value for each position, but not shorts, cash, or non-US holdings.
who has to file a form 13F?
any institutional investment manager that exercises investment discretion over $100 million or more in section 13(f) securities — hedge funds, mutual funds, pensions, banks, and registered advisers. once a manager crosses the threshold, it must file within 45 days of each calendar quarter-end.
what does the value column in a 13F mean?
it is the market value of the holding at quarter-end. since january 3, 2023 the SEC requires this value in whole dollars; before that it was stated in thousands. some funds still file in the old thousands convention, which makes a position read 1,000× too small on any tool that assumes whole dollars.
how do you calculate a position's value from a 13F?
multiply the share count (the sshPrnamt field, when sshPrnamtType is SH) by the stock's quarter-end closing price. the result should match the reported value field. if the reported value is roughly 1,000× smaller, the filing is using the pre-2023 thousands convention.
is 13F data reliable?
the holdings are real and legally attested, but the data has known flaws: a 45-day reporting lag, no short positions, stale or wrong CUSIPs, and the thousands-convention error. read filings against the raw EDGAR source rather than trusting a screener's normalized value.

related_reading

get_access

hedgewatch reads every 13F-HR the second it files — detecting the unit-convention error that hides real institutional positions, and surfacing the true size with the filing receipts attached. access is invite-only and reviewed by hand.

or read the api reference and pricing.

// hedgewatch research

the hedgewatch research desk parses every 13F-HR filing on SEC EDGAR as it lands — comparing each holding's reported value against shares × quarter-end price. these guides come from reading the raw filings directly, not from secondary summaries.

this page is informational and educational only and does not constitute investment advice. all figures are derived from public SEC EDGAR filings; quarter-end prices are approximate. verify every figure against the primary filing before acting on it.