"Congress stock tracker" sounds like it should be a database query. It isn't. It's a PDF-scraping problem wearing a finance costume, and the gap between what people assume the data contains and what it actually contains is where most of the bad takes come from.
We've ingested 9,877 filings covering 40,120 transactions from 318 members. Here's what that process really looks like, and the four things the resulting data genuinely cannot tell you.
Where the filings come from
Members file Periodic Transaction Reports (PTRs) with the Clerk of the House or the Secretary of the Senate. They're published as PDFs — one document per report, each containing anywhere from one transaction to several hundred.
Our ingest has seen:
| Chamber | Filings |
|---|---|
| House | 7,827 |
| Senate | 2,047 |
Each filing gets fetched once, parsed, and recorded — including the ones that fail, which matters more than it sounds.
What actually parses
This is the number no tracker advertises:
| Outcome | Filings | Share |
|---|---|---|
| Parsed into transactions | 4,494 | 45% |
| No tickers in the document | 2,817 | 29% |
| Scanned image — unreadable | 2,345 | 24% |
| Community-transcribed backfill | 221 | 2% |
A quarter of all congressional stock disclosures are scans. Not PDFs with a text layer — photographs of paper, sometimes handwritten, occasionally at an angle. There is no parser for those; they're transcription work.
Another 29% contain no tickers at all. That's not a failure — it's bonds, mutual funds, real estate partnerships, crypto, options written on things without clean symbols. A "stock trade tracker" simply has nothing to say about them.
Add it up: fewer than half of congressional disclosures become the trades you see in any tracker, ours included. Any tool that doesn't tell you its parse rate is not claiming a better one — it just isn't counting.
"Why not just OCR the scans?"
The obvious question, and we went as far as building it before deciding against it.
The paper form is worse than it looks. It prints "Provide full name, not ticker symbol" — so a scanned filing contains no tickers at all, only "Johnson & Johnson", or a handwritten "Orbital ATK Inc". Every name then has to be resolved to a symbol without guessing, and for 2015-era filings that means resolving companies which have since merged or delisted, whose price history we wouldn't have anyway. Amounts are an X in one of eleven lettered columns. Pages are usually rotated 90°. The blank template even carries a pre-printed example row that would file the same fake holding into ~2,000 documents if transcribed naively.
Running a vision model over ~2,300 documents to recover mostly-unpriceable trades from a decade ago did not survive its own cost estimate. So the gap stays open — and stays counted.
That's the honest state of it: these filings are public, and they are effectively unreadable at scale. Anyone claiming complete congressional coverage is either transcribing by hand or not counting.
The four things the data cannot tell you
1. How much money was involved
The law requires bands, not amounts. Every disclosure looks like $1,001 – $15,000. So any tracker showing a member's "portfolio value" or "position size" is showing you an assumption, usually the band's midpoint.
The band distribution is the most under-reported fact in this entire subject:
| Band | Trades | Share |
|---|---|---|
| $1,001 – $15,000 | 29,366 | 73.2% |
| $15,001 – $50,000 | 7,079 | 17.7% |
| $50,001 – $100,000 | 1,856 | 4.6% |
| $100,001 – $250,000 | 1,192 | 3.0% |
| $250,001 – $500,000 | 304 | 0.8% |
| $500,001 – $1,000,000 | 130 | 0.3% |
| $1,000,001 – $5,000,000 | 103 | 0.3% |
| $5,000,001 – $25,000,000 | 24 | 0.1% |
Nearly three quarters of every congressional stock trade ever disclosed is in the smallest possible band — somewhere between $1,001 and $15,000. Trades above a million dollars have happened 127 times in fourteen years, out of forty thousand.
That doesn't make the conflict-of-interest question go away. It does mean the mental image of members moving fortunes in and out of positions is wrong for the overwhelming majority of what's actually filed.
2. Who really made the decision
Filings cover the member, their spouse, and dependent children, and they don't always distinguish. A large share sits in managed accounts where an adviser trades and the member finds out afterwards — the same way you're finding out. "Senator X bought Nvidia" and "an asset manager rebalancing Senator X's account bought Nvidia" produce an identical filing.
3. Why
There is no field for intent, and there never will be. A trade placed the week before a relevant committee hearing and a trade placed by an algorithm on a rebalancing schedule look exactly the same on paper. This is why insider-trading prosecutions of members are vanishingly rare while public suspicion is enormous: the disclosure regime was built to make trades visible, not to make motives provable.
4. When you could have acted
The one that ruins most backtests. The filing is public 28 days after the trade at the median — and one in five arrives more than 45 days late. Any performance figure calculated from the trade date describes a price no member of the public was ever offered.
What a tracker is actually good for
Given all that, a reasonable one does three things honestly:
- Tells you what was filed, and when it became public — with the lag stated, not hidden.
- Counts what it couldn't read. A row count is not a coverage number. If a tracker can't tell you how many filings it failed on, it doesn't know either.
- Measures from the disclosure date. Anything else is measuring a trade you couldn't make.
That last one is the entire design of ours: every backtest enters at the first opening price after a filing became public, because that's the earliest a real person could have acted. It produces less exciting numbers. They're the only ones that mean anything.
You can see the result — what copying each member's disclosed buys actually returned — including how many of their trades the simulation could fill, which is the caveat that makes the headline readable.
The fine print
Parse-rate figures are from our own ingest as of August 2026 and drift as new filings land. The scanned-document gap is not expected to close. Amount bands are as filed. This is educational analysis, not investment advice.
