How we count
Every number on this site is a figure filed with the Federal Election Commission. Nothing is estimated.
Source
Data comes from the FEC bulk data files (fec.gov bulk data), which publish the filings made to the FEC. The pipeline is the script scripts/refresh.mjs. It reads the PAC and party summary file (webk) for raised, spent and cash on hand, the independent expenditure file (Schedule E) for spending by candidate, and the itemized individual and committee receipt files, keeping only receipts of $5,000 or more for the listed committees. Each figure on the site links to the matching page on fec.gov. Last fetched: 2026-11-02.
The "filed through" date is the end of the latest reporting period in the summary file. The independent expenditure file also holds 24-hour and 48-hour reports filed after that date, through 2026-11-01, so its totals can be higher than the "Independent expenditures" line in the summary for the same cycle. Amended Schedule E lines replace the original; only the latest version is counted. Large contributors are listed for the 2026 cycle only.
The data files are public: committees.json, independent-expenditures.json and contributors.json. They come from public FEC filings and are free to reuse.
Committees
Committee IDs were checked against the FEC committee name search before inclusion:
- C00799031: United Democracy Project ('UDP') (Super PAC (independent expenditure-only)). FEC page
- C00797670: American Israel Public Affairs Committee Political Action Committee (PAC, qualified (multicandidate)). FEC page
- C00487470: Club For Growth Action (Super PAC (independent expenditure-only)). FEC page
- C00687103: Americans For Prosperity Action, Inc. (AFP Action) Dba Cva Action And Dba Libre Action (Hybrid PAC (non-contribution account)). FEC page
The first two are the committees this site is about. The other two are included for comparison only. The list is the file config/committees.json; adding a committee is adding one line there.
Definitions
- Raised: total receipts in the committee totals for the cycle.
- Spent: total disbursements in the committee totals for the cycle.
- Independent expenditures: spending reported on Schedule E, made without coordination with a campaign. The "Support" or "Oppose" label is the one on the filing.
- Cycle: a two-year federal election period, named for its final year.
Images and post text
Share images are generated by code from the data files (scripts/og.mjs). The charts and motifs are drawn in code, and every number on an image is read from the data. No AI image generation is used, and no third-party service is called. The post text in "Share this" is a template filled with the same filed figures.
Privacy and limits on donor data
- Contributions below $5,000 are never fetched, stored or shown. No addresses, employers or occupations are stored or shown.
- Federal law (52 U.S.C. 30111(a)(4)) bars using contributor names and addresses from FEC filings to solicit contributions or for any commercial purpose. Do not use the names on this site for either.
- This site sets no cookies, uses no local storage, runs no analytics and loads nothing from other domains. It uses system fonts only. It has one small first-party script (
share.js) for the share, copy-link and copy-text buttons, and nothing else. It makes no network calls and stores nothing. The pages also contain structured data (JSON-LD) for search engines, which is data and not code. - The share buttons are plain links. Nothing is sent to X, Bluesky, Reddit, LinkedIn or WhatsApp until you click one, and the links carry no tracking parameters. Links to fec.gov open without sending a referrer. The site is not registered with any search-engine console.
Corrections
If a figure differs from the FEC page it links to, the FEC page is correct. Committees can amend filings, and the next refresh picks up amendments.