Sources and methods
This page explains where the numbers come from and what we assume when a filing does not say enough. The aim is transparency: you should be able to tell a public record from a reconstruction, and a reconstruction from a fact.
Purpose and limits
This site is for fun and education. It is a public-records explorer: STOCK Act filings, a few related civic lists, and documented guesses about size and performance. It is not investment advice, not a brokerage statement, and not a recommendation to buy, sell, or copy anyone’s trades.
Members of Congress and certain executive officials must disclose periodic securities transactions under the STOCK Act (Pub. L. 112-105) and the Ethics in Government Act. Those forms use dollar ranges, not fill prices or share counts. Every volume, return, and “vs the market” figure on this site is therefore an estimate built from the rules below. A flag or icon is a citation, not a verdict.
Do not use this site to time the market, size a position, or judge anyone’s legality. Past reconstructed P/L is not a forecast. If a number looks precise, treat that as a display convention — not extra certainty.
Data sources
Trades and civic lists come from public records or published compilations. Market prices used only to estimate share counts are unofficial daily closes, not an exchange tape.
| What | Source | How it is used |
|---|---|---|
| Senate trades | efdsearch.senate.gov · efts.senate.gov | Periodic Transaction Reports required by the STOCK Act and the Ethics in Government Act. We read the Senate Electronic Financial Disclosures search site (report listing and each PTR detail page). One row per disclosed buy or sell. |
| House trades | Clerk of the House | Same legal requirement, different system. Year-to-date financial-disclosure ZIPs and individual PTR PDFs from public_disc/financial-pdfs and public_disc/ptr-pdfs. Rows are parsed from those PDFs. Unreadable filings are omitted rather than invented. |
| President and cabinet trades | OGE 278-T · Open Cabinet · Form guide | Executive-branch periodic transaction reports (STOCK Act §6 / EIGA). We use Open Cabinet’s parsed compilation of public OGE PDFs (full-dataset.json). Coverage follows their Cabinet-level set: president, vice president when present, department heads, and other posts they label Cabinet (for example EPA, SSA, Fed chair, Navy, ONDCP, DNI). Deputies and governors are not included. |
| Prices, splits, dividends | Yahoo Finance · chart API | Unofficial daily closes, split factors, and cash dividends from the public chart interface at query1 / query2.finance.yahoo.com/v8/finance/chart. Used only to turn a dollar range into an estimated share count and to mark a reconstructed lot. Not an official exchange feed and not delayed Level 1 quotes. |
| Sectors | Yahoo Finance search | Sector and issuer name from query2.finance.yahoo.com/v1/finance/search, one label per ticker, for heatmaps and committee overlap. A missing sector means no profile was returned for that symbol, not that the trade is hidden. The same search endpoint is used only as a last resort when a ticker cannot be resolved. |
| Party, state, committee seats | congress-legislators · published JSON | Current members plus recent former members (last term ending 2017+), matched by cleaned name and Bioguide ID, from legislators-current.json and legislators-historical.json. Committee seats from committees-current.json and committee-membership-current.json. Seats are current membership only. Subcommittees are omitted. |
| Portraits | unitedstates/images · Biographical Directory · Wikipedia | Official GPO portraits via the public unitedstates/images CDN, keyed by Bioguide ID. Cabinet officials without a Bioguide photo use the Wikipedia page-summary thumbnail (REST page summary). |
| Index comparison | Same Yahoo Finance chart interface as prices (SPY, QQQ, IWM) | Buy-and-hold return on those ETFs over the same calendar window as a member’s estimated return. A stand-in for the S&P 500, Nasdaq-100, and Russell 2000 — not the official index levels published by S&P Dow Jones or FTSE Russell. |
| Israel-interest flag | Track AIPAC /congress · Lobby Archives · /trump | Israel flag only for PAC in or IE-for (money supporting the person). IE-against alone is a “targeted” chip — super PAC ads opposing someone, not support. Stance-only cabinet notes use a “stance” chip. See Israel lobby. |
| Israel lobby FEC recast | OpenFEC · fec.gov | PAC in: FEC bulk pas2 (transaction type 24K, candidate ID required). IE for/against: FEC bulk independent-expenditure CSVs with dates. OpenFEC is the fallback if a bulk file is missing. JStreet is compared, not added to Israel-lobby totals. See FEC recast. |
| Roll calls | House Clerk EVS XML · Senate LIS XML | Curated Israel-aid and related votes. Alignment is the catalog’s typical AIPAC-facing position, not a whip count we invented. |
| LDA / FARA / travel | Senate LDA API · FARA eFile · House Gift and Travel | Lobbying income/expenses by client name. FARA uses DOJ eFile bulk CSV of active foreign principals (no receipts in that file — the column is a principal count unless an LDA dollar match exists). Travel rows appear when Clerk XML parses; otherwise AIEF is a sponsor marker. |
| Bills and cosponsors | Congress.gov API | Catalogued Israel-aid, IHRA, and related bills: sponsors, cosponsors, and actions. |
| FMF / 36(b) arms sales | CRS / DSCA notices (curated in the lobby catalog) | Foreign Military Financing and supplemental accounts, plus State/DSCA 36(b) notifications. Not a live USAspending scrape. A sale with no floor vote is still listed. |
| Epstein-file mentions | DOJ Epstein Library · Section 3 PEP letter · H.R. 4405 | Devil icon only with an independent investigative cite. A PEP-letter hit or introducing H.R. 4405 is not enough. See Epstein list. |
Sites and public interfaces
Every external site or public interface this project reads:
- https://efdsearch.senate.gov — Senate eFD search, listing, and PTR detail pages (the system is also reached via efts.senate.gov)
- https://disclosures-clerk.house.gov/FinancialDisclosure — House financial-disclosure landing page; yearly ZIPs under
/public_disc/financial-pdfs/and PTR PDFs under/public_disc/ptr-pdfs/ - https://www.oge.gov — official 278-T forms and the form guide; we do not scrape OGE’s search collection directly
- https://open-cabinet.org — parsed 278-T dataset at /data/full-dataset.json
- query1.finance.yahoo.com and query2.finance.yahoo.com —
/v8/finance/chart(daily closes, splits, dividends) and/v1/finance/search(sector and name lookup) - unitedstates.github.io/congress-legislators — legislators-current, legislators-historical, committees-current, committee-membership-current (source repo: github.com/unitedstates/congress-legislators)
- unitedstates.github.io/images — GPO portraits by Bioguide ID (source repo: github.com/unitedstates/images; official directory bioguide.congress.gov)
- en.wikipedia.org/api/rest_v1/page/summary/ — cabinet portrait thumbnails
- trackaipac.com/congress, /states/archives, /trump — Israel-interest totals and stance cards; those pages attribute figures to fec.gov
- justice.gov/epstein — DOJ Epstein Library; Section 3 PEP letter via DocumentCloud
- api.open.fec.gov — PAC-to-candidate bulk files and independent-expenditure CSVs, with OpenFEC as a fallback for PAC disbursements and independent expenditures.
- clerk.house.gov EVS XML and Senate LIS XML — curated Israel-aid, campus anti-BDS, ceasefire, and related roll calls, including rules votes
- lda.gov — Senate LDA lobbying income/expenses by client; efile.fara.gov bulk CSV of active foreign principals
- api.congress.gov — catalogued bill sponsors, cosponsors, and actions
- CRS / DSCA 36(b) notices — Foreign Military Financing accounts and arms-sale notifications, curated in the lobby catalog (not a live USAspending scrape)
- congress.gov — STOCK Act text, H.R. 4405, and human-readable bill pages
Who appears
- Congress: anyone with a House or Senate PTR whose trade date is on or after 1 January 2023.
- Executive: Open Cabinet officials at Cabinet level, plus a small roster so the vice president and secretary of state still have office, photo, and Israel-flag data even when that dump has no 278-T rows.
- Not included: governors, 50-state ethics filings, judicial disclosures, or sub-cabinet deputies.
A person can have both congressional and executive trades (for example a senator who later joined the cabinet). Those rows stay tagged by the filing system they came from. The member page merges them under one name. Labels show the current office. A cabinet title is never shown next to a Senate/House state for sequential service — the Ineligibility Clause bars holding those seats at the same time.
Dates
- Trade date is the execution date from the filing. Charts, period filters, and the header window use this date.
- Filing date is when the PTR or 278-T was submitted. Delay is filing date minus trade date, in whole days. Open Cabinet’s public export does not itemize a per-trade filing date, so executive delay is blank.
- Rows with a trade date before 1 January 2023 are not shown. That is a display floor, not a claim that older filings do not exist.
- Rows with a trade date after the snapshot as-of date are dropped. A filing can list a future or mistyped date; this site only shows trades that could already have occurred when the snapshot was built.
Estimated volume
STOCK Act and OGE forms use statutory buckets such as $1,001–$15,000 or $50,001–$100,000. Exact dollars are not disclosed. For each row we pick one number, in this order:
- If a trade-date close exists, use the range midpoint (or 1.5 × the floor for “Over $X”) as dollars, then convert to estimated shares at that close.
- Otherwise the midpoint of the reported low and high.
- If the filing only gives a floor (“Over $1,000,000”), use 1.5 × that floor.
- If only a low is present, use the low.
Period volume is the sum of those per-row estimates. It is a guesstimate of disclosed activity, not shares outstanding, not account value, and not a bid or offer.
Estimated P/L
Performance charts rebuild a paper book per person and ticker. They are labeled estimates because the inputs are ranges.
- Share count. Estimated dollars ÷ closing price on the trade date.
- Buys open first-in, first-out lots at that cost.
- Sells close the oldest lots first at the sale-date close. Realized P/L is proceeds minus matched cost.
- Unmatched sales (a sell with no earlier disclosed buy in this dataset) are treated as closing an unseen lot at the sale price, so that slice contributes about $0 P/L. The unmatched dollar amount is tracked separately.
- Splits scale open share counts. Cash dividends accrue on shares held through the ex-date.
- Open lots are marked to the latest available close. Total P/L = realized + unrealized + dividends.
- Return % is total P/L ÷ estimated buy volume when buy volume is greater than zero. That is not a time-weighted or money-weighted return, and it ignores taxes, fees, and cash that was never “in the market.”
Rows without a usable ticker, municipal bonds, and names we cannot map to a price series are skipped for P/L. They still count in trade lists and range-based volume. Stocks that have a ticker but no price history are labeled unpriced, not bonds. We do not map an acquired ticker onto the buyer’s price series.
Assumptions
These are choices, not facts in the filings. Changing any of them would change the numbers.
- The filer traded at the closing price on the stated trade date (or the prior session if that day was not a trading day). Intraday fills are unknown.
- The size of the trade is the midpoint of the statutory range, or 1.5 × a stated floor. The true size can sit anywhere in the bucket — or above the floor.
- Each member’s disclosed stock trades are treated as one book. Spouse, joint, and child rows are included when the filing lists them; we do not know who controlled the account.
- Lots are closed FIFO. The filing does not say which lot was sold.
- A sale with no matching disclosed buy in this window is assumed to close an unseen lot at the sale price (~$0 P/L on that slice). The member may have bought earlier than 2023, inherited shares, or filed a buy we failed to parse.
- Options, futures, bonds, and municipal notes stay in the trade list but are not marked to market. Only rows we can attach to a common-stock or ETF close enter the paper book. There is no option or futures filter.
- Committee overlap uses today’s roster and a conservative name-to-sector map (for example Armed Services → Industrials). A 2023 trade by someone who left that committee later still uses the current seat list unless we say otherwise.
- Display names, ticker renames, and cash-exit prices come from a curated list. They can be wrong or incomplete.
Charts and paper books
A politician page can scale the same estimated stock book so disclosed buys sum to a starting cash amount you pick. Return versus an index is unchanged; only the dollar amounts scale. That is a teaching aid, not a portfolio you could have held. Filings are late, ranged, and incomplete. There are no fees, no taxes, no borrowing, and no claim that the trades were available to the public on the trade date.
Ticker charts plot a historical close series for widely traded names and mark disclosed buy and sell dates on that line. A marker is a filing’s trade date, not a known fill. Names without a shipped close series show no chart rather than a live quote.
Committees and sector overlap
Committee seats come from unitedstates/congress-legislators. Overlap uses the member’s seats on the trade date, reconstructed from dated snapshots of that project’s current-membership file (it does not publish a historical membership table). Politician-page chips still show today’s assignments. A trade is tagged “committee overlap” when its published sector sits in a conservative jurisdiction list for one of those seats — for example Armed Services and Industrials, or Financial Services and bank stocks. The tag is a prompt to read the filing, not a finding of a conflict or of insider trading.
Index comparison
“Vs SPY” (and the QQQ / IWM toggles) is a buy-and-hold on that ETF over the same calendar window as the estimated return: first disclosed purchase in the current filter (or first trade if there is no buy) through the snapshot as-of date. Politician return is still estimated P/L ÷ buy volume, so beating or lagging the ETF is a rough benchmark, not alpha from a live account and not a risk-adjusted measure. The home “vs S&P 500” board ranks that gap for members with at least ten priced trades. The performance page repeats that board and overlays a Congress composite versus SPY (dollar-weighted and equal-weighted). Compare two members from Compare.
Market events
The disclosed-trading activity chart plots estimated buy and sell dollars by trade date. A hand-curated catalog of market-moving days is merged monthly with events that line up with disclosed volume: heavy buys 1–2 weeks before, or heavy sells 1–2 weeks after (twice a typical week of that type). Hovering an event shades the 14 days before (green) and after (red). Amber triangles mark buckets more than 200% above the prior 90-day average. A timing match is a lead to read the filings, not a finding of illegal trading. Filings can lag the trade by up to 45 days. Earnings and hearing overlays use committee jurisdiction and trade timing; they are not a claim of insider information.
| Feed | How it is used |
|---|---|
| Federal Register | Executive orders, tariffs, CFIUS, BIS entity-list, funding, and shipping notices. |
| FOMC calendar | Policy announcement days only, not every speech. |
| Congress.gov | Enacted defense/funding laws and oversight hearings when the Congress.gov catalog includes them. |
| USAspending | Defense-prime awards ≥ $50M, shown on that ticker’s price chart. |
| FDA · Nasdaq earnings · OFAC · SCOTUS · CBO · SEC | Ticker-scoped FDA/earnings/crypto/8-K rows, plus market-scoped SCOTUS opinions and CBO scores. Earnings require the name already appear in disclosed trades (defense prime or two-plus filers). |
Filing delay
The STOCK Act generally requires a periodic transaction report within 45 days of the trade. Average delay is the mean of filing date minus trade date for rows that have both, rounded up to two decimal places. “Late” is the share of those rows filed after 45 days. Executive 278-T rows from Open Cabinet usually have no per-trade filing date, so they do not enter the average. The filing delay ranking uses those same fields and omits members with fewer than eight dated filings. The weekly recap, the weekly digest, and the site RSS feed list new filings by filing date. Each politician and ticker hub also has its own feed under /feeds/. Email alerts, when sent, come from uslalerts@cogentnet.com. Home can filter to committee overlap only.
Sectors
Listed tickers use the Yahoo sector map plus a curated overlay for symbols Yahoo never tagged (BLK, LBRT, funds, and rename aliases such as SQ → Block). Rows without a mapped ticker are classified from the asset type and the issuer line: Treasuries as Government; city/county GO, “State of …”, and CUSIP bonds as Municipal; conduit gas-prepay issues as Private municipal; iShares/SPDR/Vanguard-style names as ETF; BDCs, money funds, and other funds as Financial Services; coupons and structured notes as Fixed income; school-district and BE/R/ DUE lines as Municipal; corporate notes and bank preferreds with a DUE date as Fixed income (not “due bills” on stock). Remaining listed-company names are folded onto the issuer index (including first-two-word and ticker-in-parentheses matches). Executive 278-T and Senate eFD lines use an asset-class pass. Bond / Note / Debenture / Sr Notes / Muni (plus due-year or coupon %) is applied before any ticker or Inc/Corp stock rule, so “Apple Inc Note due 2032” is Fixed income, not AAPL. Options match Call/Put/Straddle plus strike or expiry. Crypto uses a hardcoded top-asset dictionary (Bitcoin ETFs stay ETFs). Senate eFD tickers are trusted for stocks after that debt filter; ADRs without a mapped symbol land in Equity. House PTRs also take a ticker from the description (NVIDIA Corp - NVDA), treat “contracts of XYZ” as options, classify local water/sewer/utility Rev lines as Municipal, and map LLC / LP / private placement / Seven Bridges-style vehicles to Non-Public Stock. Rows that still have no sector after those rules stay Unclassified.
Ethics flags
A Not ethics-compliant badge marks a filing that names only a confidential or series-LLC vehicle (for example THSDFS LLC — Series 02) and does not identify the underlying asset. Federal ethics and STOCK Act rules generally require public identification, except for qualifying excepted investment funds and qualified blind trusts. Public ETF “Series 1” names are not flagged. This is a disclosure-quality flag from the public text, not an agency finding of a violation.
Tickers and delistings
- Congressional filings usually include a ticker. Executive 278-T lines often have only an issuer name. We accept an explicit ticker, a ticker in parentheses, or an exact fold of the issuer name onto a known listed-name index. Bond-like descriptions (due date, coupon, perpetual note) stay unmapped.
- Company-name lookup is exact-symbol only. First-hit search is not used (it previously mapped unrelated names onto a few popular tickers).
- Same-company renames (for example SQ → XYZ, BK → BNY) follow one continuous series on a curated alias list.
- Cash take-privates and cash mergers on a curated exit list use the last deal or print price as a terminal mark. They are not dropped and are not remapped onto the acquirer.
- A missing price series is not “not NASDAQ.” It usually means the old symbol was deleted after a rename, merger, or take-private, or that we never obtained a close.
Saved lists
Follow book / Watch ticker remembers a list on this device only. There is no account. Another device, a private window, or clearing site data starts over. The list is capped at 30 members and 30 tickers. You can export and import that list yourself; nothing is stored on a server.
“New since last visit” compares this session to the previous visit’s newest filing date. It means a disclosure was published, not that a trade just happened.
Name icons
- Devil — independent cite in released files (flight log, email, or contemporaneous reporting of those records). A name on the DOJ PEP letter alone is not enough. A mention is not an accusation.
- Israel flag — PAC in or IE-for from listed pro-Israel committees. That is backing. IE-against does not earn the flag (Thomas Massie is the example: UDP spent against him).
- targeted — independent expenditures opposing the person and no PAC in / IE-for. Ads against someone are not support.
- stance — sourced pro-Israel note with no dollar total (mostly cabinet). Weaker than the flag on purpose.
- rejects — Track AIPAC card text says the member rejects AIPAC.
- U.S. flag — Congress member, or the executive office title when the person is on the cabinet roster.
Israel lobby
The Israel flag means listed pro-Israel committees backed the person: PAC contributions in, or independent expenditures for them. Super PAC ads against someone (Massie, Bowman, and others UDP targeted) are IE against and get a “targeted” chip, not the flag. PAC in is a contribution to the campaign. IEs never hit the member’s account. A sourced pro-Israel stance without dollars is a “stance” chip. Track AIPAC remains a citation; the recast on /lobby/israel/ is this site’s FEC recast from the committee list in the catalog. JStreet is not rolled into Israel-lobby totals.
Current members come from the /congress page. Track AIPAC’s Lobby Archives hold former members, some sitting members they moved off /congress (Lindsey Graham), and administration cards. Those graphics are labeled as compiled via fec.gov. Cabinet stance rows and a few confirmed dollar floors are curated separately. Sitting in the cabinet is not, by itself, enough for the flag.
Track AIPAC archives (extracted cards)
Totals read from Track AIPAC archive infographics (Squarespace /states/archives). Figures are labeled as pro-Israel PAC receipts and/or independent expenditures compiled via fec.gov. Used when a person is no longer on /congress or the archive total is higher.
| Name | Total | Card note |
|---|---|---|
| Donald J. Trump | $230.5M | Track AIPAC archives: $230,473,622 independent expenditures & donations |
| Kamala Harris | $9.0M | Track AIPAC archives, 2028 card |
| Laura Fine | $9.0M | Track AIPAC archives, IL-09 candidate IEs |
| Jon Tester | $1.3M | Track AIPAC archives, former U.S. senator |
| Lindsey Graham | $1.0M | Track AIPAC archives: $1,025,896 from pro-Israel PACs via FEC (card dated 7/5/26). Not on the current /congress scrape. |
| Kevin McCarthy | $467.2k | Track AIPAC archives |
| Yadira Caraveo | $359.6k | Track AIPAC archives, former U.S. representative |
| Jason Friedman | $343.0k | Track AIPAC archives, IL-07 candidate |
| Michael Waltz | $246.0k | Track AIPAC archives, FL-06 / NSA |
| Mike Pence | $206.6k | Track AIPAC archives |
| Eileen Filler-Corn | $203.9k | Track AIPAC archives: IEs and donations |
| Pete Buttigieg | $191.2k | Track AIPAC archives |
| J.D. Vance | $167.3k | Track AIPAC archives / VP card |
| Markwayne Mullin | $165.5k | Track AIPAC archives, former U.S. senator |
| David Scott | $123.7k | Track AIPAC archives, GA-13 |
| Mikie Sherrill | $122.2k | Track AIPAC archives, NJ governor |
| Tulsi Gabbard | $46.5k | Track AIPAC archives, DNI card |
| Joe Walsh | $41.4k | Track AIPAC archives |
| George Santos | $39.4k | Track AIPAC archives |
| Melissa Conyears-Ervin | $5,000 | Track AIPAC archives, IL-07 candidate |
Published Israel-interest totals
| Name | Total | Documentation |
|---|---|---|
| Donald J. Trump | $230.0M | Pro-Israel spending benefiting Trump since 2020 (Track AIPAC /trump), not a congressional PAC career total source |
| Marco Rubio | $1.0M | Track AIPAC /trump reports more than $1 million in AIPAC and Israel-lobby contributions since 2010 source |
| J.D. Vance | $167.3k | Track AIPAC /trump career contributions from the Israel lobby source |
| Markwayne Mullin | $165.5k | Track AIPAC archives: $165,542 Israel-lobby total after leaving the Senate source |
| Tulsi Gabbard | $46.0k | Track AIPAC /trump: more than $46,000 in Israel-lobby campaign contributions as a former House member source |
Everyone else with a dollar next to their name comes from the Track AIPAC /congress scrape (hundreds of current members). Only override totals are listed here.
Stance-only (chip, no dollar)
| Name | Documentation |
|---|---|
| Chris Wright | Pro-Israel energy alignment: U.S. independence plus Eastern Mediterranean / ally infrastructure cooperation with Israel source |
| Doug Burgum | Pro-Israel: Republican Jewish Coalition solidarity travel to Israel and public advocacy of maximum pressure on Iran source |
| Howard Lutnick | Pro-Israel: major philanthropy to Israeli emergency/relief groups including United Hatzalah source |
| Kristi Noem | Track AIPAC /trump: as South Dakota governor signed a 2024 law that treats criticism of Israel as antisemitism source |
| Lee Zeldin | Pro-Israel stance as a former House member and EPA administrator; not on the current Track AIPAC /congress dollar scrape source |
| Linda McMahon | Pro-Israel: Education Department tasked with a hardline campus antisemitism stance and measures framed as protecting Jewish students source |
| Lori Chavez-DeRemer | Pro-Israel stance as a former House member; left Congress so she is absent from the current /congress dollar scrape source |
| Pam Bondi | Track AIPAC /trump: as Florida attorney general backed resolutions stating Florida stands with Israel source |
| Pete Hegseth | Track AIPAC /trump profiles Hegseth as a Christian Zionist / pro-Israel defense secretary; no Israel-lobby dollar total published source |
| Robert F. Kennedy Jr. | Pro-Israel: public defense of Israel’s military campaign against Hamas and rejection of genocide accusations source |
| Scott Bessent | Pro-Israel alignment via Treasury maximum-pressure sanctions and financial isolation of Iran source |
| Sean Duffy | Pro-Israel stance as a former House member; left Congress so he is absent from the current /congress dollar scrape source |
Gaza genocide funding
/lobby/gaza/ is this site’s transparency page for the money behind the members who voted to keep weapons flowing to a genocide. This site treats Zionism as a political project of dispossession and U.S. subsidy, not as a synonym for Jewish people. The editorial stance is not a data source. The data source is the same OpenFEC recast as /lobby/israel/: PAC-to-candidate (pas2), independent expenditures (Schedule E, including United Democracy Project and the RJC Victory Fund), and Track AIPAC compiled totals as a citation. Those three columns are never added together. Schedule E is attached by FEC candidate ID, so a vendor payee like Targeted Platform Media does not become the “candidate.” Non-incumbent targets (El-Sayed) stay in the oppose table. Presidential independent expenditures (candidate IDs starting with P, including Adelson Preserve America spend against a presidential nominee) are dropped.
A compiled “lobby money” figure on a member (Track AIPAC, or the scorecard on Who Funded Genocide) includes bundled individual gifts tagged because the donor also gave to a listed PAC. That site’s own verification file reports about 9× FEC committee-to-candidate for the same people. We do not ingest that scorecard. We recast the FEC bulk files and show the gap. J Street stays out of Israel-family totals. Named private-donor directories are not republished here; FEC sale-or-use (52 U.S.C. §30111) still applies.
FEC recast and other lobbies
This snapshot’s OpenFEC recast is loaded (2026-09-01). Israel-family PAC in $11.8M · IE for $50.3M · IE against $64.1M across 682 names. Those figures are this site’s recast from a published committee list, not Track AIPAC’s career total and not “money received” when the row is an independent expenditure. Source flags this snapshot: Track AIPAC yes, OpenFEC yes, votes yes, LDA yes, bills yes, FARA yes, House travel XML no.
The lobby recast loads FEC bulk PAC-to-candidate and independent-expenditure files (OpenFEC is the fallback), House Clerk / Senate LIS roll-call XML, Senate LDA, Congress.gov cosponsors, DOJ FARA bulk principal CSV, an OpenSecrets PAC-page checksum, and House Gift and Travel XML when it exists. Foreign governments cannot donate to federal campaigns; Saudi, UAE, Taiwan, Ukraine, and Armenia are compared on LDA/FARA, not PAC totals. Defense-prime PACs are a domestic industry comparison. Primary-challenge races are curated; amounts fill from schedule E when the names match. House Gift and Travel XML is not currently available from the Clerk, so AIEF is a sponsor marker.
Pages: compare, Israel hub, Gaza, votes, bills, FMF / 36(b), districts, primaries, network, people. Member hubs show an alignment card. RSS: /feeds/lobby.xml.
Votes, bills, and alignment
Scored roll calls come from House Clerk EVS and Senate LIS XML. “Voted with Israel” is the catalog’s AIPAC-typical whip (usually Yea on aid, campus anti-BDS, and standing-with-Israel resolutions; Nay on a ceasefire or conditions vote). That includes the Rules vote that kept conditions amendments off H.R. 8034, and H.R. 4795 — the Title IV cutoff for colleges that commercially boycott Israel, including settlement entities. That is a comparison, not a whip count we invented and not proof of a quid pro quo. Bill pages add Congress.gov sponsors and cosponsors. District-vs-vote notes are curated constituency signals, not polling. Member hubs show an alignment card (scored votes next to PAC vs IE). Appropriations and 36(b) notices live on /lobby/money/.
Epstein-file mentions
The devil icon requires an independent investigative cite in released Epstein materials (flight logs, emails, or contemporaneous reporting of those records). A name on the DOJ Section 3 PEP letter is not enough: that letter includes press clippings and other incidental references. Authors of H.R. 4405 are also excluded. A mention is not an accusation or finding of wrongdoing.
Matching is name-based against filers already in this snapshot. A DOJ Section 3 PEP listing is only a starting clue: that letter includes press clippings and other incidental references. The icon is applied only when we have a specific cite (manifest, email, or reporting that quotes those records). Authors of H.R. 4405 stay off the icon even if the PEP letter names them. Official library: https://www.justice.gov/epstein. Letter: DocumentCloud copy.
| Introduced H.R. 4405 — no devil icon | Role |
|---|---|
| Ro Khanna | Sponsor; introduced H.R. 4405 on 2025-07-15 congress.gov |
| Thomas Massie | Original cosponsor of H.R. 4405 (2025-07-15) and House discharge-petition lead congress.gov |
| In this app | Independent cite |
|---|---|
| Donald J. Trump | Named thousands of times in the released files; contemporaneous reporting of a lengthy pre-mid-2000s relationship. Not accused by authorities of Epstein-related crimes. source |
| Howard Lutnick | Emails with Epstein after 2005, including 2012 island-visit planning; later testified he lunched on Little St. James with family. Name appears 100+ times. source |
| John Phelan | Passenger on Epstein’s 727: JFK–Luton 2006-02-27 and London–New York 2006-03-03, per House Oversight / DOJ manifests. source |
| Kevin Warsh | Named on a 2010 email in the Jan. 30, 2026 DOJ release listing “St. Barth’s Christmas 2010” with the note “House near Isle de France.” Unknown whether he traveled. source |
| Robert F. Kennedy Jr. | On Epstein flight logs; 2012 Maxwell email recalling a 1990s Dakota fossil-hunting trip. Kennedy has said he flew twice in the 1990s with family. source |
Names
Titles (Mr, Dr, Sen) are stripped. Credentials such as MD or JD are stripped only when they are the last token, so “J.D. Vance” is not reduced to “Vance”. A curated list forces a few display names (for example Vance → J.D. Vance). Search matches nicknames (Rick/Richard, Ted/Rafael) and ignores punctuation. Name matching can still merge or split people incorrectly.
How to link to a member or ticker
Each filer with a disclosure in this snapshot has a stable page at /politicians/{slug}/ — for example /politicians/nancy-pelosi/. Tickers live at /assets/{ticker}/, lowercase (/assets/nvda/, /assets/brk.b/). Older /politician/?name= and /ticker/?symbol= URLs redirect to these hubs. Lobby hubs live at /lobby/, /lobby/israel/, /lobby/gaza/, /lobby/votes/, /lobby/bills/, /lobby/money/, /lobby/districts/, /lobby/challenges/, /lobby/network/, /lobby/people/, /lobby/votes/{id}/ for a roll call, and /lobby/bills/{slug}/ for a bill.
CSV export
Nightly dumps of the current snapshot. Amounts are the STOCK Act range floors and ceilings, not fills. There is no live query API.
- /exports/trades.csv — every disclosed row in this snapshot
/exports/politicians/{slug}.csv— one filer (linked from each member page)/exports/tickers/{ticker}.csv— one symbol (linked from each asset page)- /exports/lobby/israel-members.csv — PAC vs IE recast plus Track AIPAC career total
- /exports/lobby/gaza-methods.csv — PAC in, IE for/against, compiled total, gap, and compiled/PAC ratio
- /exports/lobby/israel-votes.csv · families.csv · challenges.csv · bills.csv · appropriations.csv
- /feeds/lobby.xml — votes, 36(b) notices, and primary-challenge markers
License
Official Senate, House, and OGE periodic transaction reports are U.S. government records. Federal works are not copyrighted (17 U.S.C. §105).
This site’s compiled snapshot — the trade tables, politician and ticker pages, and CSV dumps — is licensed under Creative Commons Attribution 4.0 International. You may copy, redistribute, and adapt that compilation if you credit US Political Ledger and link here.
Track AIPAC figures, OpenFEC/FEC.gov records, Congress.gov bill metadata, Open Cabinet’s parsed executive filings, and Yahoo Finance closes stay under their source terms. Volume, P/L, vs-SPY, and lobby recast figures are reconstructions, not official amounts.
Legal and credits
- Senate and House PTRs are public U.S. government records under the Ethics in Government Act and the STOCK Act. Federal works are not copyrighted (17 U.S.C. §105).
- OGE 278-T filings are likewise federal public records. Open Cabinet asks to be credited when their parsed dataset is reused.
- Track AIPAC totals are their published figures. The lobby hub also ships an OpenFEC recast from a published committee list (schedule B by recipient and schedule E). The two numbers will not match. Independent expenditures are not campaign receipts.
- Daily closes used for estimates come from Yahoo Finance and are not redistributed as a live quote service. They are a reconstruction aid only.
- The Epstein icon cites released investigative records and reporting of those records. Inclusion is not evidence of a crime.
- Nothing on this site is an offer, solicitation, or personalized recommendation. It is for education and entertainment.
- How this browser stores preferences is described in the privacy policy.
For fun and education only. Not a guide for investing. Back to trades