HolderBook

Methodology

What these numbers are, how they are assembled, and where they mislead. Read this before relying on anything here.

What 13F covers

Institutional managers with over $100 million in qualifying US securities file Form 13F within 45 days of each quarter end. It captures long positions in US-listed equities and some convertibles and options. It does not capture short positions, cash, bonds, commodities, foreign-listed shares, or anything held outside the reporting entity. A filer's 13F is not its portfolio.

The 45-day lag

Every figure here describes a quarter-end date, not today. A manager may have sold a position the day after the quarter closed and the filing would look identical. Treat this as a record of what was reported, not a picture of what is held now.

Amendments

A filing can be amended two ways, and they mean opposite things. A restatement replaces the original in full; a new holdings amendment adds to it. Counting both the same way either double-counts positions or drops them. For each filer and quarter we take the latest restatement, if there is one, discard everything filed before it, and add every additive amendment filed after. Superseded filings do not appear anywhere on this site.

Reported values and units

Values were reported in thousands of dollars until the SEC's 2023 amendments and in whole dollars afterwards. Some filers did not follow the convention of their era. Rather than assume, we infer the unit for each individual filing from the implied share price its own numbers produce, and fall back on the date rule only where a filing has too few share-denominated rows to measure. Filings that would imply an impossible portfolio under the inferred unit are rejected and treated as whole dollars.

Tickers

13F identifies securities by CUSIP, which is licensed data. We map CUSIPs to tickers using two public SEC sources: the fails-to-deliver files, which pair CUSIP with symbol on real settlement dates, and the company tickers file. Around 45% of the distinct securities in the data resolve to a ticker, which covers over 99% of reported value. The remainder are mostly bonds, foreign issues and securities too illiquid to have ever failed to deliver.

Options

Option positions are reported under a modified CUSIP: the issuer's six character prefix followed by a 9-series suffix. We treat those lines, and any line carrying a put or call marker, as derivative exposure and show them separately from share ownership. Most sites add the two together, which overstates how much of a company institutions actually own. A CUSIP that shares only an issuer prefix but is not a 9-series line is left unidentified rather than assigned the issuer's equity ticker, because corporate bonds share that prefix with the common stock.

Changes between quarters

New, added, trimmed and exited compare against the previous quarter that the same filer reported, not the previous calendar quarter. A filer that skips a quarter would otherwise have every position misread as new. A position held, dropped, and reopened later is counted as new, because that is what happened.

Schedule 13D and 13G

Anyone acquiring more than 5% of a class of registered equity must disclose it. A 13D says the holder intends to influence the company and is due within five business days; a 13G is the passive version available to institutions and to holders below 20%. Since December 2024 both are filed as structured data, which is what makes them usable here.

A filer that reported a 13G on a company and later files a 13D on the same company has changed its intent. That is the single loudest signal in ownership data, and it is what the activist board leads with. Matching the two halves is harder than it sounds: 13G filings usually leave the reporting person's own CIK blank, so the two sides are matched on a normalised name. Every conversion shows both spellings it matched, so a wrong match is visible rather than hidden.

Not every 13D is an activist campaign. Blank-cheque sponsors, company founders and venture investors disclosing after a listing all file one. Those carry a tag rather than being excluded, because the judgement of what counts as a campaign belongs to the reader.

One 13D is often signed by several affiliated entities - a founding family may file through ten of them at once, several holding well under 5% each. We treat that as one filing led by the largest holder, and say how many others signed.

Identifiers filers got wrong

A CUSIP carries a check digit, so a wrong one can be detected arithmetically. About 14% of the distinct identifiers in the data fail that test, though they account for 0.023% of reported value and none of them resolve to a ticker, so no security page is affected. They fall into three kinds, and each is labelled where it appears.

Placeholders. Some filers type something else entirely into the CUSIP field. One such value, 0000000NA, stands in for 445 different companies across nearly 6,400 rows. Because positions are grouped by identifier, several real holdings can merge into one row under a placeholder, and the name shown is only one of them.

Ticker symbols. Others use the ticker, padded with zeros to nine characters: 0000000BA is Boeing, 00000000V is Visa, 0000000AM is Antero Midstream. These name the security perfectly well; they are simply not CUSIPs, so they do not join to anything. We label them rather than treat them as junk.

Non-CUSIP identifiers. Others report a SEDOL padded with zeros or a truncated ISIN. 00B4BNMY3 is Accenture's SEDOL; DK0061412 is Cadeler's ISIN cut to nine characters. The security is real and correctly identified, just not with a CUSIP.

Typos. The rest are near-misses of real identifiers, often transpositions: 35045V100 for General Motors' 37045V100, 200021014 for Allstate's 020002101, 077077102 for Robinhood's 770700102.

We label these rather than delete them. The filer reported that money and it belongs on their page; what we can add is a warning that the security named may not be the security held.

What we know is wrong

The SEC does not validate filings. We have found positions filed under a CUSIP of all zeros, values off by three orders of magnitude, and issuer names that are blank. Rows failing basic checks are quarantined rather than shown, and the count is tracked. If a figure here looks impossible, it may be, and we would rather hear about it than not.