Methodology

Every number here is imperfect in a specific, knowable way.

Congress trades

build 20261029.1 · generated 2026-10-29
Standing caveat: trades are disclosed in statutory dollar ranges, never exact amounts, and may be filed up to 45 days after the trade — sometimes later. A filing is a disclosure event, not a market event.
93.9%
House e-file parse
5,610 / 5,971 e-filed
100%
Senate e-file parse
1,831 / 1,831 e-filed
72,481
rows filed since 2014
superseded originals excluded
3,061
paper filings need OCR
retained, zero rows
77
filer names unjoined
no unique member match
+28d
median days to file
13,660 late of 72,269

Sources & conditions

House Clerk — PTR disclosures
us-gov-house · public record
Fetched sequentially with a contact UA. Raw PDFs archived; every rendered row links to its page.
Senate eFD
us-gov-senate · agreement-gated
Accessed only through the eFD prohibition agreement handshake; §13107(c) restrictions carried on every derived surface.
congress-legislators
cc0 · member identity
CC0 seed for congressional member IDs, parties, terms. Joins are conservative: unique-candidate only, publicly versioned aliases.
kadoa congress-trading seed
mit-kadoa-seed · backfill
MIT-licensed historical seed, imported under a blocking human audit gate; retired row-by-row as primary filings supersede it.
SEC EDGAR
us-govworks-sec · 17 U.S.C. §105
Form 13F filings for the institutional module and the SEC ticker file for ticker joins. Retrieved at or below SEC's published request-rate ceiling with an identifying User-Agent; each filing keeps its source URL.

Known gaps — published, not hidden

· Senate filings through 2026-10-22 (the last successful Senate check, 2026-10-23); the Senate site has not allowed automated access since then. Senate figures on this site describe the filings through that date.
· 3,061 paper filings needs OCR — counted in totals
· 77 filer names not joined to a member — the join is name × chamber × term, only on a unique candidate; the alias file is version-controlled and public
· amendments carry amendment pending until amendment semantics are settled — the default view excludes the superseded original, and both readings are queryable
· rows with defect flags are visible and flagged, never dropped

Whose trade is it — owner codes

· Filings under a member include transactions by spouse (SP), dependent children (DC), and joint accounts (JT) — the STOCK Act does not distinguish who directed a trade.
· Amounts are statutory ranges; member totals are therefore ranges too.

Monthly flow — estimated filing completeness

· The /congress Monthly flow chart sums disclosed ranges by trade month. A trade is published only once it is filed — up to 45 days later, and often later still — so recent months are incomplete, and each month is shaded by an estimate of how much of it is filed.
· The estimate is measured on every build: the lag from trade to filing over non-anomalous rows traded 13 to 48 months before the build (2022-10-29 to 2025-09-29, 16,446 rows, all asset types). A month's estimated completeness is that distribution at the month's age: the build date minus the month's midpoint.
· Which midpoint: a month that has ended is aged from the middle of the calendar month. The build's own month is still in progress, so it is aged from the middle of the days elapsed so far — the 1st through the build date — because no trade after the build date exists yet. Built on the 17th, the current month's trades are on average 8 days old, not 1.
· This build: filed within ≤45 d 84.6% · ≤90 d 88.8% · ≤180 d 90.4% · ≤365 d 95.9%.
· Months under 90% are shaded and labelled "≈p% filed (est.)"; a month that ended fewer than 45 days before the build is inside the filing window and gets the darker tone.
· The sample is mature, not closed: a trade from 13 months ago can still be filed, and those late filings are not observed yet, so the estimate slightly overstates completeness.

Congress signals — rules, lag and ranking

thresholds v1.0.0 · window 2026-07-31 → 2026-10-29

The rule book every signal on /signals is computed by, the lag between trade and filing in the newest batch, how the page ranks the filings it lists, and the committee direct-match table.

Signal rule book

EVERY KIND · ITS EXACT RULE · WHY IT CARRIES INFORMATION · HITS THIS BUILD · STATUS · THRESHOLDS v1.0.0
Signal rules — family, kind, exact rule, why it is informative, hits in the retained window, status
FamilyKindRuleWhy it's informativeHitsStatus
BehaviourLARGE — S-1 · Large disclosureamount lower bound ≥ $250K — the disclosed lower bound, never the upperRanges are coarse, but the provable lower bound is a fact. A quarter-million-dollar floor is rare in a corpus where most rows sit in the $1K–$15K bracket.84ACTIVE
BehaviourINFREQUENT — S-4 · Infrequent discloser, large purchasea member with ≤10 prior disclosures in the corpus reported a purchase with lower bound ≥ $50KA large purchase from a member who rarely files is a different fact than the same row from a habitual filer. Per-member history, not an absolute threshold alone.3ACTIVE
StructureCO-OCCURRENCE — S-3 · Co-occurrence≥4 distinct members disclosed the same ticker, same side, within a 14-day trade-date windowSeveral independent filers on one name, one side, inside two weeks is a density that coincidence rarely produces. The window is trade date, not filing date.15ACTIVE
NoveltyFIRST FILING — S-2 · First disclosure of a ticker by a memberfirst disclosure of this ticker by this member within the corpus — era-scoped: coverage begins 2014-01-03, so an earlier first disclosure cannot be seen and is not claimed againstThe purest new information in the record: a name this member had never disclosed before. Era-scoped, so an earlier first outside coverage is never claimed against.193ACTIVE
ContextCOMMITTEE — S-5 · Committee-jurisdiction overlapa disclosed trade in an issuer whose sector falls within a committee the member sat on as of the trade date (versioned mapping; membership dated) — context only: no legal, ethical, or causal conflict is established or impliedInformation asymmetry is structural here. The overlap is context, never an allegation — it states a sector-to-committee fact and nothing about intent.160ACTIVE
ComplianceLATE — S-6 · Late and largefiled past the STOCK Act's 45-day window AND amount lower bound ≥ $100KLate disclosure is itself information about the filer, and it is the one rule with a statutory line behind it.28ACTIVE
WithheldRETURNnot computed — a point return from a range-bounded disclosure would be inventedEvery tracker that publishes returns on statutory ranges is guessing. The refusal is named here rather than left implicit.—BY DESIGN

Thresholds are calibrated per kind and versioned; a kind whose measured volume falls outside its declared bounds is WITHHELD with a typed reason, never emitted anyway. Institutional kinds wait on closed 13F periods and are not simulated. Every hit on /signals opens its rule from its kind word.

Lag distribution

TRADE → FILING · LATEST BATCH FILED 2026-10-28 · TICK = 45 DAYS
  1. Suzan K. DelBene D ×2+14d from trade 2026-10-14 to filing 2026-10-28, 2 rows

How signal rows are ranked (triage v1.0.0)

A signal is a fact about a filing, not a forecast: no returns are computed, and no price, return or intent is read. "Filings to read" on /signals classifies each filing that carries an active signal against the filer's own record, by published rules; it does not predict anything.

  • Rows. Filings filed inside the 90-day window that carry at least one active signal on a listed-stock line (options excluded). Grouped in this order: a late batch (one member's filings on one date that complete 2 or more co-occurrence clusters whose windows ended before the window opened); a cluster (an active co-occurrence, absorbing every filing in its window whose lead line is that ticker and side); same member and ticker (filings whose lead lines share a ticker, as "N filings"); and the single filing.
  • Point in time. Every meter is computed at a cutoff and sees only rows filed on or before it: a single filing at its filed date; each filing of a same-member-and-ticker row at its own filed date; a cluster at its latest absorbed filing; a late batch at its date.
  • Size — the lower bound against the filer's prior disclosures. Strong: at least one bracket above the largest of the filer's prior disclosures and a lower bound of $50,001 or more. Medium: a bracket above, or the same bracket at $50,001 or more. Low: at least $15,001 and above 90% of the prior lower bounds. Unknown with fewer than 5 prior disclosures that state one. Prior means traded earlier, in another filing, and filed by this row's cutoff.
  • Pattern — the gap since the filer's previous trade. Strong: the first filing on record, or 730 days or more since the previous trade. Medium: 365 days or more. Low: 180 days or more. Measured from the filing's earliest trade date over rows filed by the cutoff.
  • Others — members disclosing the same ticker and side in one co-occurrence window. Strong: 5 or more distinct members in the active co-occurrence window that holds the trade; medium: 4. Only filings filed by the cutoff are counted, so a member who filed later never raises an earlier filing.
  • Cmte — the issuer inside a committee the member sat on at the trade date. Medium: a direct match — the issuer's 4-digit SIC inside a direct range of a committee that matched (table v1 on Methodology). Low: a sector match only. None: no mapped committee matched. Unknown: the sector or the membership on that date is not on record, or the committee inputs are not in this build. The overlap is context, never an allegation — it states a sector-to-committee fact and nothing about intent.
  • Brackets. The floors of the statutory ranges: $1,001, $15,001, $50,001, $100,001, $250,001, $500,001, $1,000,001, $5,000,001, $25,000,001, $50,000,001.
  • Tiers. A row led by an exchange is Routine. Otherwise any meter at strong is Stands out; any at medium, or a sum of 3 or more over the meters that are known, is Worth a look; the rest are Routine. Lateness is a tag, never a ranking input.
  • Lead line and order. A row's meter is the strongest over its lines. Its lead line has the strongest meter, then the highest sum, then is not an exchange, then has the highest lower bound. Stands out and Worth a look sort by the count of strong meters, the sum, the lead lower bound and the filed date; Routine by filed date.
  • Reason sentence. Generated from the row's facts by fixed templates, without pronouns, at most 160 characters.
  • Lead cards. From the ranked listed-stock lines. Committee: direct matches before broad, then the lower bound, then the filed date. Largest buy and sell, own record: filers with at least 20 prior disclosures spanning 365 days or more, lines of at least $50,001, ranked by brackets above the filer's largest prior disclosure; absolute: by lower bound, then filed date.

Committee direct matches (table v1)

Every committee-overlap hit is graded direct when the issuer's 4-digit SIC falls inside a range below for a committee that matched it, and broad otherwise — including an issuer whose SIC is not on record and a committee this table does not list. Each range lies inside that committee's mapped sectors, so a direct grade only refines an existing hit. Source: House Rule X and Senate Rule XXV committee jurisdiction clauses, read against the 1987 SIC Manual's industry codes. Memberships are committee-level: a subcommittee seat counts for its parent.

The overlap is context, never an allegation — it states a sector-to-committee fact and nothing about intent.

Committee direct-match SIC ranges, version 1
CommitteeNameDirect SIC ranges
HSAGHouse Agriculture0100–0999
SSAFSenate Agriculture, Nutrition, and Forestry0100–0999
HSBAHouse Financial Services6000–6799
SSBKSenate Banking, Housing, and Urban Affairs6000–6799, 1520–1531
HSIFHouse Energy and Commerce2830–2836, 2911, 3661–3669, 3841–3851, 4800–4899, 4900–4949
SSEGSenate Energy and Natural Resources1000–1499, 4610–4619, 4900–4949
SSEVSenate Environment and Public Works1600–1629, 4940–4959
HSPWHouse Transportation and Infrastructure1600–1629, 4000–4789
SSCMSenate Commerce, Science, and Transportation4000–4789, 4800–4899
HSASHouse Armed Services3480–3489, 3720–3729, 3730–3732, 3760–3769, 3795, 3812
SSASSenate Armed Services3480–3489, 3720–3729, 3730–3732, 3760–3769, 3795, 3812

The Congress column on the Institutional tab

Every row of the Named moves and every Consensus row on /signals counts the members of Congress who traded the same name, on the same side, inside the 13F quarter. It is a co-occurrence in public filings — never coordination, never intent.

  • Quarter. The 13F period must be a calendar quarter end (March 31, June 30, September 30 or December 31); otherwise no line is joined and the tab says so. The Congress window is that quarter by trade date, inclusive: the first day of its first month through the quarter end. Filed dates are not bounded: every line the build knows counts.
  • Lines. Rows without a date anomaly, traded inside the quarter, a listed stock as filed (the House Clerk's ST or the Senate's Stock — never inferred from an asset's name), with a ticker, on a purchase or a sale; a partial sale counts as a sale. Exchanges and unparsed sides are left out.
  • Sides. A new stake or an add is matched with purchases; a trim or an exit with sales. A Consensus row and the Consensus card count both sides.
  • Tickers. Compared in the SEC spelling (upper case, "." read as "-"), so BRK.B meets BRK-B, while GOOG and GOOGL stay distinct. A 13F name that no reviewed ticker maps joins nothing, and says so.
  • Members. Each counted once, by congressional identifier, or by the filed name when none is on record.
  • Broad accounts. A member who traded more than 25 distinct tickers in the quarter matches almost any name, so the column does not count them; its tip names each one with that count. Where only broad accounts traded a name, the row, its opened body, the Consensus row, the Consensus card and the name's detail say so — never "none" — and name them; they are still not counted.
  • Detail. An opened row lists at most 12 lines per side, each with its range, both dates and its receipt; the rest are on the ticker page.

Overlap: Congress and notable managers on one name

The Overlap tab on /signals lists the names that members of Congress traded and notable managers changed in the same 13F quarter. It is a co-occurrence in public filings — never coordination, never intent — and it computes no price and no return.

  • The join. The same quarter join as the Congress column (above): Congress lines by trade date inside the quarter, listed stock as filed, a ticker, a purchase or a sale; 13F changes by the quarter they report. Tickers compare in the SEC spelling, so a name filed under a different spelling on the two sides is not matched.
  • Counts. Congress: the distinct members with a purchase line (▲) and with a sale line (▼) on the name. Notable managers: the distinct managers with a new stake or an add (▲), and with a trim or an exit (▼).
  • Direction. Each side's net: the larger of its two counts, or mixed on a tie. The relation is same when the two directions agree, opposite when they differ, and mixed when either side is mixed. A name is unanimous when neither side is split.
  • Order. Same, then opposite, then mixed; unanimous names first; then the larger Congress count plus the larger manager count, highest first; then the ticker.
  • Broad accounts. A member who traded more than 25 distinct tickers in the quarter matches almost any name, so the default view does not count them, and a name only they traded is not listed. "Broad accounts" counts them; an opened row lists their lines apart in either view.
  • Detail. An opened row lists at most 12 Congress lines a side, each with its range, owner, both dates and its receipt, the rest on the ticker page; and each manager's largest change on the name, at most 5 managers a side, each with its 13F receipt.
  • What the page carries. In each view (the two variants, each by All, Same and Opposite) the first 24 names — 12 when the page would pass its byte budget — and 12 show before "Show 12 more". Every count is the true total; where a view runs past what the page carries, the tab says so.

Playbooks: published research on the patterns the rows show

The Playbooks tab on /signals names published research on a pattern a row shows and quotes what it found, with evidence on both sides. The numbers are the papers' own, from their samples and years. Public Filings reads no price and computes no return, so it cannot say whether a pattern still holds; nothing here is advice.

  • Opportunistic member buy — the rule, adapted. Cohen, Malloy & Pomorski's routine test is for corporate insiders; the site adapts it to members of Congress. It applies to a row that is not a cluster and whose lead line is a listed-stock purchase with a ticker and a trade date. Of the member's rows without a date anomaly (any asset, any side) traded before the lead's year and filed by the row's cutoff, the member is unclassified without a trade in each of the 3 prior calendar years, routine when one calendar month has a trade in all 3, and opportunistic otherwise. It triggers on an opportunistic member who traded at most 25 distinct tickers in the 90 days before the trade (filed by the cutoff).
  • Leadership trade. It triggers when any ranked line of a row is by a member who held one of the 12 posts of Wei & Zhou (2025), NBER Working Paper 34524, Table A1 on the line's trade date (the roster below: from its start date, inclusive, to its end, exclusive). The roster (v1) starts 2023-01-03: a trade before it is never classified. The Speakers are dated to the day; the other posts by Congress or by year, as the official lists give them, starting or ending on the first day of a Congress (2023-01-03, 2025-01-03).
  • Committee-linked trade. It triggers when a row's Cmte meter reads medium — a direct match in the committee table (above). When the committee inputs are not in a build it has no rows, and the tab says it is unavailable. The overlap is context, never an allegation — it states a sector-to-committee fact and nothing about intent.
  • Best ideas and Consensus trigger on panels, not rows: the new-position leaders and Consensus on the Institutional tab state how many managers and names qualify.

The 6 playbooks, their rules and their sources:

  • Opportunistic member buy (Congress · Live · evidence split). A listed-stock purchase in Filings to read by a member who traded in each of the 3 prior years but never in one fixed month each year (the Cohen–Malloy–Pomorski routine test, adapted from corporate insiders). Members with under 3 years of history are unclassified. Broad accounts (more than 25 names in the 90 days before the trade) are left out. Horizon studied: The insider study: portfolios formed monthly on the filing. The Congress studies: one month to a year. Sources: Supports — Cohen, Malloy & Pomorski (2012), Journal of Finance 67(3) (Corporate insiders, 1986–2007 — not Congress), www.nber.org/papers/w16454 ↗; Supports — Ziobrowski, Cheng, Boyd & Ziobrowski (2004), JFQA 39(4) (Senate, 1993–1998), ideas.repec.org/a/cup/jfinqa/v39y2004i04p661-676_00.html ↗; Supports — Ziobrowski, Boyd, Cheng & Ziobrowski (2011), Business and Politics 13(1) (House members), www.cambridge.org/core/journals/business-and-politics/article/abnormal-returns-from-the-common-stock-investments-of-members-of-the-us-house-of-representatives/BC6C6A524BBE96738BB94D37EF0FD1A5 ↗; Against — Eggers & Hainmueller (2013), Journal of Politics 75(2) (Congress, 2004–2008), eprints.lse.ac.uk/46513 ↗; Against — Belmont, Sacerdote, Sehgal & Van Hoek (2022), Journal of Public Economics 207 (Congress, 2012–2020 (after the STOCK Act)), www.nber.org/papers/w26975 ↗.
  • Leadership trade (Congress · Live · evidence one study). Any trade by a member holding one of the 12 leadership posts the study uses: the Speaker, and the floor leaders, whips and conference or caucus chairs in both chambers. Matched by congressional identifier against a dated roster from 2023-01-03 (roster v1, every tenure checked against house.gov, history.house.gov or senate.gov on 2026-10-18); a trade before 2023-01-03 is never classified. Horizon studied: Annual portfolio returns, before and after taking the post. Sources: Supports — Wei & Zhou (2025), NBER Working Paper 34524 (1995–2021; 20 leaders who traded before and after), www.nber.org/papers/w34524 ↗.
  • Committee-linked trade (Congress · Live · evidence thin). Cmte reads medium: a direct match in the committee table (v1). Context, never an allegation. Horizon studied: Varies by study. Sources: Indirect — Hall, Karadas & Schlosky (2017), Journal of Financial Economic Policy 9(4) (New members of Congress), ideas.repec.org/a/eme/jfeppp/jfep-12-2016-0095.html ↗; Against — Belmont, Sacerdote, Sehgal & Van Hoek (2022), Journal of Public Economics 207 (Congress, 2012–2020), www.nber.org/papers/w26975 ↗.
  • Best ideas (Institutional · Live · evidence supportive). A notable manager’s largest new position at 2% or more of its 13F long book (Conviction leaders). Horizon studied: Monthly returns after the quarter’s holdings are known. Sources: Supports — Cohen, Polk & Silli (2010); later Antón, Cohen & Polk, “Best Ideas”, LSE working paper (US mutual funds, 1991–2005), personal.lse.ac.uk/polk/research/BestIdeas.pdf ↗.
  • Notable-manager consensus (Institutional · Live · evidence weak). Three or more notable managers moved the same name in the closed quarter (Consensus). Horizon studied: Quarterly holdings. Sources: Indirect — Cohen, Coval & Pástor (2005), Journal of Finance 60(3) (US equity funds), www.nber.org/papers/w9359 ↗; Against — Griffin & Xu (2009), Review of Financial Studies 22(7) (13F holdings, 1986–2004), ideas.repec.org/a/oup/rfinst/v22y2009i7p2331-2370.html ↗.
  • Congress and managers on one name (Overlap · Descriptive · evidence no studies). The Overlap tab’s rule: members of Congress and notable managers on the same name, the same way, in the same quarter — a co-occurrence in public filings, never coordination. Horizon studied: Not studied: no published research found. No published study found.

The leadership roster (v1, from 2023-01-03, every row checked 2026-10-18 against its primary source):

Leadership roster, version 1
PostMemberFromToDated bySource
Speaker of the HouseKevin McCarthy M0011652023-01-072023-10-03day: elected Speaker on calendar day January 7, 2023; removed from the Speakership on October 3, 2023history.house.gov/People/Office/Speakers-List/ ↗ · checked 2026-10-18
Speaker of the HouseMike Johnson J0002992023-10-25currentday: elected Speaker on October 25, 2023history.house.gov/People/Office/Speakers-List/ ↗ · checked 2026-10-18
House Democratic floor leaderHakeem Jeffries J0002942023-01-03currentCongress: 118th Congress (2023–2025), 119th Congress (2025–2027)history.house.gov/People/Office/Minority-Leaders/ ↗ · checked 2026-10-18
House Republican floor leaderSteve Scalise S0011762023-01-03currentCongress: 118th Congress (2023–2025), 119th Congress (2025–2027)history.house.gov/People/Office/Majority-Leaders/ ↗ · checked 2026-10-18
House Democratic whipKatherine Clark C0011012023-01-03currentCongress: 118th Congress (2023–2025), 119th Congress (2025–2027)history.house.gov/People/Office/Democratic-Whips/ ↗ · checked 2026-10-18
House Republican whipTom Emmer E0002942023-01-03currentCongress: 118th Congress (2023–2025), 119th Congress (2025–2027)history.house.gov/People/Office/Republican-Whips/ ↗ · checked 2026-10-18
House Democratic Caucus chairPete Aguilar A0003712023-01-03currentCongress: 118th Congress (2023–2025); chair in the 119th Congress on house.gov/leadershiphistory.house.gov/People/Office/Democratic-Caucus-Chairs/ ↗ · checked 2026-10-18
House Republican Conference chairElise Stefanik S0011962023-01-03 (held since 2021 (117th Congress))2025-01-03Congress: 117th Congress (2021–2023, from mid-Congress), 118th Congress (2023–2025)history.house.gov/People/Office/Republican-Conference-Chairmen/ ↗ · checked 2026-10-18
House Republican Conference chairLisa McClain M0011362025-01-03currentCongress: 119th Congress (2025–2027)history.house.gov/People/Office/Republican-Conference-Chairmen/ ↗ · checked 2026-10-18
Senate Democratic floor leader and caucus chairChuck Schumer S0001482023-01-03 (held since 2017 (115th Congress))currentCongress: Democratic floor leader, 115th–119th Congresses (2017–2027); "Democratic Leader, Chair of the Conference" on senate.gov/senators/leadership.htmwww.senate.gov/senators/majority-minority-leaders.htm ↗ · checked 2026-10-18
Senate Republican floor leaderMitch McConnell M0003552023-01-03 (held since 2007 (110th Congress))2025-01-03Congress: Republican floor leader through the 118th Congress (2023–2025)www.senate.gov/senators/majority-minority-leaders.htm ↗ · checked 2026-10-18
Senate Republican floor leaderJohn Thune T0002502025-01-03currentCongress: Majority Leader, 119th Congress (2025–2027)www.senate.gov/senators/majority-minority-leaders.htm ↗ · checked 2026-10-18
Senate Democratic whipDick Durbin D0005632023-01-03 (held since 2005)currentyear: 2005–presentwww.senate.gov/senators/democratic-party-whips.htm ↗ · checked 2026-10-18
Senate Republican whipJohn Thune T0002502023-01-03 (held since 2019)2025-01-03year: 2019-2025www.senate.gov/senators/republican-party-whips.htm ↗ · checked 2026-10-18
Senate Republican whipJohn Barrasso B0012612025-01-03currentyear: 2025-presentwww.senate.gov/senators/republican-party-whips.htm ↗ · checked 2026-10-18
Senate Republican Conference chairJohn Barrasso B0012612023-01-03 (held since 2019)2025-01-03year: 2019–2025www.senate.gov/senators/republican-conference-chairpersons.htm ↗ · checked 2026-10-18
Senate Republican Conference chairTom Cotton C0010952025-01-03currentyear: 2025–present; "Republican Conference Chair" on senate.gov/senators/leadership.htmwww.senate.gov/senators/republican-conference-chairpersons.htm ↗ · checked 2026-10-18

Institutional 13F

in this build · latest period 2026-06-30 · latest filing 2026-07-31
Standing caveat: 13F covers long positions in Section 13(f) securities — no shorts, no cash — as quarter-end snapshots filed up to 45 days late, in era-dependent value units. Only managers over $100M file: it is not a census.
9,451
filers on record
13F filer registry
2026-06-30
latest period
newest filing received
25
top-N ranking depth
set by the site
2026-11-16
13F window open until
quarter 2026-09-30

What our 13F derivations do — and refuse to do

· Amendments are typed: a restatement supersedes; new-holdings merges. Originals are kept and marked superseded, never deleted.
· A change with an undisclosed side is n/c — never coerced into add or trim.
· EXIT is a fact about the filing sequence, not a sale: delisting, confidential treatment, and filer migration all look identical in the record.
· Cross-filer rankings stop at the aggregate's top-N slice, set by the site and stated in place.
· A manager that files its own 13F holdings report keeps its whole book, even when another manager's combination report names it: under the Form 13F instructions a holdings report carries all of that manager's holdings, and a position whose discretion is shared is reported by one manager only. Only a 13F notice — holdings reported entirely by someone else — is left out. Such pairs are marked shared discretion and are not netted against each other.
· Concentration is computed only when the denominator is disclosed; otherwise the stat prints "n/a" with its reason concentration_unavailable.
· Ticker→issuer joins use the SEC's present-day ticker file against entity-keyed issuers only — never a name match, never a guessed identity.

Principles — what this site is for

The people's financial data, returned to the people. US financial-disclosure data — congressional trades, institutional holdings — pulled only from primary government sources, republished with its receipts. Others sell this free layer back at $30–200/month; here the public record itself is free forever. Convenience layers (alerts, integrations) may someday be paid — the data never will be.

The differentiator isn't coverage — anyone can scrape these filings. It's that every number here tells you exactly how stale it is, what it excludes, and how it was derived.

The data is free forever
MIT-licensed code, per-source data conditions recorded and honored. Every row links to the government document it came from; every build is verifiable by hash.
Honest about its own gaps
Parse coverage, unjoined names, paper filings awaiting OCR — published on this page, which is a product surface here, not a footer link.
No cookies, no account required
No cookies, no profiles, nothing gated behind sign-up. The only thing kept in your browser is the light or dark theme you pick. Page traffic is measured in aggregate and without cookies — the privacy section below names the provider, the fields, and the retention.

The published dataset. Every row remains in the published dataset: the congressional feed is served in full as byte-bounded per-year parts, listed with a direct download for each at congress/data, the institutional aggregate as paged files, and the signals as signals.v1.json. A table that shows fewer rows than it holds says so; nothing is withheld from the data.

What happens to a signal that stops matching. Signals are recomputed from scratch on every build over a fixed recent window. A signal keeps the same id and its original first-seen date for as long as it keeps matching. When one stops — the filing was amended, or it fell out of the window — it is kept in signals.v1.json rather than deleted, so a reader comparing two builds sees a departure instead of a silent gap. In the file those entries carry status of superseded and name the build they left in; the page counts them separately and never mixes them into a current total.

Congress signals: listed stocks. Each signal hit states who traded what, in the filing's own words: the filed side, the asset as filed, and its filed asset type (a House Clerk code shown as its words from the Clerk's list, a Senate label as printed). The Signals page shows listed stocks by default. A hit is a listed stock only when its filed asset type is the House code ST or the Senate label Stock. A co-occurrence hit is one only when every row in it is. Nothing is inferred from an asset's name, so a Treasury bill filed as a corporate security, or a fund filed with no type, is not counted as a listed stock. Rows filed with no asset type count as not listed. The page states how many hits on other asset types the default view hides, and one checkbox shows them all. Exact repeats inside one filing show as one line marked with a count; the file keeps every signal.

Ranges. Congressional amounts are disclosed as statutory ranges, never exact figures; totals over ranges are computed by interval arithmetic — a net range is the purchases interval minus the sales interval, and an open-ended bound propagates as open-ended. "At least $X" is the low end of the disclosed range.

How 13F data is read. Quarter-end positions are disclosed up to 45 days later; they are never current holdings and never a complete portfolio (cash, shorts and non-13(f) assets are absent). Changes are classified from comparable reported positions by share count; a missing position is not proof of a sale, and a value change alone is not a position change.

What counts as one position. A position is one issuer security × put/call × unit as the filer reported it; the producer classifies each change (NEW · ADD · TRIM · EXIT · NO CHANGE, and NO PRIOR where the filer has no comparable previous quarter) from the share delta between consecutive quarters, at that level.

The activity list and its files. The Recent activity list on /institutional/ shows notable managers' new, added, trimmed and exited positions, at most two per manager over the whole list, newest filing first, then largest change; each manager's full list is on its filer page. Every change this build publishes is in numbered files at /institutional/data/activity/<page>.v1.json, ranked by the size of the change in reported value, largest first, with changes whose value was not disclosed last. Each file holds at most 2,000 changes or 2,097,152 bytes, whichever it reaches first, and a build publishes at most 64 files. When the ranked list does not fit, the list stops at a stated change, and the page names it as the first change left out. If that change has a disclosed value, none of the changes left out is larger in absolute value and every change without a disclosed value is left out; if the cut falls among the changes whose value was not disclosed, every change with a disclosed value is published and only undisclosed ones are left out. A change is the difference between two quarters' filings, so any change left out can be derived from the filings on EDGAR.

Reported positions on a filer page. The list groups a filer's reported rows by issuer: one line per issuer, largest reported value first, with every reported row inside its line; a row that carries no issuer key stands on its own line. When a filer reported more rows than its page can carry within its size budget, the page embeds the largest and states how many it leaves out; those rows are in this build's published data and in the filer's own filings. The holders pages' de-duplicated issuer total counts each manager's own holdings report once — a 13F notice whose holdings sit in another manager's report adds nothing — and that total never removes a row from a filer page.

Ticker mapping. A 13F row shows a ticker only where a reviewed, name-and-class keyed mapping row supplies one — verified against the SEC company list on the date the row states. Symbols are never inferred automatically; an unmapped security shows "Ticker not yet mapped".

CUSIP identifiers in disclosure text. Where a filer wrote a CUSIP into the text of a disclosure for a security that already has a reviewed ticker on this site, the published copy replaces that identifier with [CUSIP withheld] and keeps every other word. The marker is deliberately visible: a reader can always tell the published sentence differs from the filing, and the receipt link on the row still opens the unaltered source document. Nothing is withheld from the internal record, and no row is dropped. 13 disclosures in this build carry the marker.

Site weight. Every page and data file is byte-bounded: no served file exceeds the 1 MiB client-response ceiling for paged data, and the whole site stays under the hosting file-count and per-file caps. A table whose complete set is larger than a page states how many rows it shows and links the full published file.

Publication & verification

Immutable snapshots
Each release is a content-addressed snapshot; the page you are reading names the build it was rendered from.
Signed pointer
A signed pointer names the current release; per-artifact digests let anyone verify a downloaded extract byte-for-byte.
Reproducible builds
Same inputs, same bytes. The pipeline, its test suite, and this site's generator are MIT-licensed.
Raw documents retained
Every parsed filing links to its archived government document; reparses never re-fetch, so the archive is the evidence.
build 20261029.1 · code 5a23ef8 · verify this page: populus verify --build 20261029.1

Privacy — the reader is not the product

Public Filings measures page traffic with Cloudflare Web Analytics, and nothing else. It sets no cookie, writes no storage key, and builds no fingerprint or cross-site identifier, and no account is required for anything on this site. What the beacon records is the page URL without its query string, the referrer, a coarse user-agent, a viewport bucket, load timing, and a country derived at the server from the connection. Cloudflare retains unsampled beacon data for 7 days, then aggregates it to roughly 10%; the previous six months remain accessible (Cloudflare Web Analytics FAQ, retrieved 2026-08-15). Free-text search never leaves your device — searches resolve to page paths client-side against an index that ships with the build. The theme toggle saves your light or dark choice in this browser's localStorage, the only value the site keeps there, and it is never transmitted. If Public Filings ever offers paid conveniences (notifications, integrations), the records themselves stay free and ungated — a transparency site that paywalled the public record would contradict this page.

Required notices

Prohibited uses. Use of congressional financial-disclosure reports for commercial purposes, for determining credit, or for solicitation is restricted by 5 U.S.C. § 13107(c). Not financial advice. Public Filings reports disclosures; it recommends nothing. Attribution. Data remain U.S. government records; per-source conditions are recorded in the machine-readable conditions register and rendered in DATA-LICENSE ↗ and NOTICE ↗.