Plate 01 — Position summary
Pennsylvania bars corporations from contributing directly to candidates (25 P.S. § 3253), so corporate money must move through a PAC and rarely looks corporate at state level. That is why donors carry an industry tag and, where a chain could be traced, an ultimate source.
Plate 02 — Every politician
| Politician | Office | Party | Total received | Org / Indiv | Donors |
|---|
One row per politician, not per committee — PA re-issues candidate filer IDs each election year and a politician often files under several vehicles at once. Click a row to see their donors.
Plate 03 — Every donor
| Donor | Type | State | Total given | Recipients | Industry |
|---|
Name variants are collapsed — “Jeff Yass”, “Jeffrey Yass” and “Jeffery Yass” are one entity. Click a row to see every politician they funded.
Plate 04 — Explorer · walk the network in either direction
Donors
Politicians
Left panel: who funded the selected politician. Right panel: who the selected donor funded. Clicking a name in either panel moves the other.
Plate 05 — Method, and what not to trust
Completeness
This page carries all 1,347 politicians, all 315,029 resolved donor entities and all 165,907 donor-to-politician links — no threshold, no top-N cut. The data is gzipped and decompressed in your browser, which is why nothing had to be dropped to make it load. Individual receipt-level rows (3.0M of them) live in the CSV layer; the natural grain for a two-way explorer is the donor-to-politician relationship.
Four things to know before quoting any number
1. All donor classification is derived. No jurisdiction publishes a reliable corporate-versus-individual flag. PA has no such field; Philadelphia's is 92% “Not Specified”; only the FEC's entity code is dependable.
2. Totals use primary rows only. 47% of Philadelphia dollars duplicate a PA state row for committees filing in both places. Duplicates are flagged, not deleted.
3. Entities are deliberately under-merged. A wrong merge invents an influence claim, so borderline matches went to a review queue. Totals are floors.
4. Chains use a 50% dominance threshold. A PAC funded 45/45/10 has no chain edge and reads as its own origin.
Defects caught by auditing output
Four different Williamses merged into one donor. A Reading PA
“John M. Arnold” folded into the Houston megadonor. Comma-stripping reversed
every federal name, so FITZPATRICK, BRIAN parsed as first-name Fitzpatrick.
Regexes ending in a word boundary meant CARPENTER never matched
“CARPENTERS”, so building trades money read $8.1M instead of $29.7M. The FEC's
connected-organization field is free text for some filers and attributed Commonwealth
Leaders Fund to a sponsor named “DEATON” — a $16M misattribution.
A filer used the donor-name field to write “SEE LIST ATTACHED TO COVER LETTER”,
which still appears as a $348K donor pending the next refresh.