The question
For one member of Congress and one industry: do they take an unusually large share of that industry’s money and vote its way unusually often? Both halves matter, and the word doing the work is unusually — unusual compared with whom.
Why the comparison group is the whole design
Industry votes in Congress split on party almost perfectly. Measured across the 119th Congress, the mean absolute gap between the two parties’ rates of voting the industry-favoured way is 0.97, and the median is 1.00. On one real roll call the oil-and-gas-favoured vote rate is 3% of Democrats and 100% of Republicans.
Score that raw and the result ranks legislators by party and home state, then calls the ranking corruption. So each member is compared only against a peer group: the same chamber, the same party, and the same third of that party by DW-NOMINATE first dimension, the standard scholarly measure of legislative ideology. A moderate Republican is measured against moderate Republicans.
In practice that means the House. A party gets thirds only if it has at least 36 members in the chamber, so the three Independents (two in the Senate, one in the House), and anyone without a NOMINATE score, fall into a single mixed-ideology “unknown” group per chamber and party; those groups have one or two members and never reach the peer floor, so nobody in them is scored. Senate Republicans and Democrats are split into thirds, but each third has only 14 to 21 members, and once the floors below are applied per industry almost none keeps 12 comparable peers. As of the 2026-09-22 data the only Senate group with any measured pair is the most moderate third of Senate Republicans (18 senators, 41 pairs). No Senate Democrat is currently measured. The index is, for now, almost entirely a House measurement.
The effect is measurable. On the published output (as of the 2026-09-22 data; the live figures are in data/alignment.json), the gap between the parties’ mean strongest alignment is 0.21 standard deviations, against roughly two for the unadjusted rate. The index is no longer a restatement of party. That property is asserted as a test in the pipeline, so it fails loudly if a future change reintroduces the collinearity.
The two measures
Money
Direct contributions from an industry’s PACs to the member, expressed as a share of all industry-attributed money that member received. A share rather than a dollar total, so that prolific fundraisers are not ranked as captured by construction. Contributions are attributed to industries through the sponsoring organisation recorded in the FEC committee master file; money from leadership PACs and joint fundraising committees is politician-to-politician and carries no industry position, so it is excluded.
Votes
The share of roll calls where the member voted the industry-favoured way, weighted by informativeness: the largest share of either party that broke ranks on that roll call. A vote where both parties moved as blocs has a weight near zero and moves nobody, because inside a peer group it is a constant and cannot distinguish any two members of it.
The weight is taken across both parties, not from the member’s own. So a roll call where a member’s own party voted 216–0 still carries full weight if the other party split, even though inside that member’s peer group it is just as constant. On the published pairs, an average of 37% of a pair’s vote weight comes from roll calls where the member’s own party was at least 98% unified, and for 659 of the 2,185 pairs it is more than half. Those roll calls add the same vote to every peer, which dilutes differences rather than inventing them, but it also means the coverage floor is met more easily than its label suggests. The sensitivity table below re-scores with the member’s own party’s break-rank share as the weight.
Which side an industry is on is decided per measure, not per subject area, and recorded with a written reason. A vote to table or to recommit inverts: a yes there kills the question, so the industry-favoured vote is the opposite of what it would be on passage. That composition is done once, in the pipeline, rather than left to each consumer to redo.
Combining them
Both measures are converted to standard deviations from the peer-group mean. The index is their geometric mean, and it is counted only where both are positive.
“Peer-group mean” needs a precise reading. For each industry the mean and spread are taken only over the peers who themselves clear every floor for that industry — at least $5,000 from it and enough informative votes on its roll calls — not over the whole chamber, party and ideology group. A member is therefore compared with the peers who also took that industry’s money in measurable amounts, and the comparison group differs from one industry to the next. Taking the residuals against the whole peer group instead is one of the variants in the sensitivity table.
That gate is the substantive claim. Unusual money with ordinary voting is not alignment. Unusual voting with ordinary money is a conviction, not a transaction. Only the conjunction of the two supports what this site says, so only the conjunction produces a number. It is a demanding test: 138 of the 421 measured officials clear it in no industry at all (as of the 2026-09-22 data).
Where nothing is published
A member-industry pair must clear every one of these before it appears:
| Floor | Value | Why |
|---|---|---|
| Informative roll calls | 4 | A rate over fewer votes is not a rate. |
| Weighted vote coverage | 1.00 | A rate built from near-unanimous votes carries no information. |
| Direct industry money | $5,000 | Shares are unstable on small denominators. |
| Peer group size | 12 | Below this a mean and spread are not estimable. |
Below any of them the page reads not measured and shows nothing — not a zero. Absent evidence and evidence of absence are different claims, and a zero would blur them. 126 of the 547 sitting officials are in this state as of the 2026-09-22 data; 283 show a measured alignment in at least one industry and 138 show none. Current counts are in data/alignment.json. They also sort to the end of the list in both directions, rather than being ordered as though they had scored badly.
Sensitivity
Every floor above, the shape of the peer group and the informativeness weight are judgement calls. None is forced by the data. So the whole index is re-scored with each choice changed — each floor halved and doubled, the peer group widened and narrowed, the weight replaced or removed, the comparison population widened — and compared with the published run. A positive pair is a member-industry pair where alignment was found.
| Variant | Pairs measured | Positive | Overlap | Kept | Rank corr. | D−R gap |
|---|---|---|---|---|---|---|
| Published method | 2,185 | 452 | 1.00 | 1.00 | 1.00 | 0.21 |
| Roll calls 4 → 2 | 2,186 | 452 | 1.00 | 1.00 | 1.00 | 0.21 |
| Roll calls 4 → 8 | 819 | 190 | 0.41 | 0.98 | 0.97 | 0.16 |
| Coverage 1.00 → 0.50 | 3,031 | 623 | 0.71 | 0.99 | 0.97 | 0.19 |
| Coverage 1.00 → 2.00 | 787 | 171 | 0.37 | 0.97 | 0.97 | 0.30 |
| Money $5,000 → $2,500 | 2,526 | 512 | 0.88 | 1.00 | 0.98 | 0.18 |
| Money $5,000 → $10,000 | 1,638 | 343 | 0.72 | 0.78 | 0.88 | 0.20 |
| Peers 12 → 6 | 2,321 | 484 | 0.93 | 1.00 | 1.00 | 0.17 |
| Peers 12 → 24 | 2,200 | 461 | 0.92 | 1.00 | 0.97 | 0.18 |
| All four floors halved | 3,991 | 783 | 0.58 | 1.00 | 0.96 | 0.16 |
| All four floors doubled | 345 | 76 | 0.17 | 0.92 | 0.94 | 0.19 |
| Peers by party only, no ideology band | 2,347 | 487 | 0.71 | 0.86 | 0.64 | 0.22 |
| Peers by ideology quintile | 2,279 | 487 | 0.78 | 0.92 | 0.77 | 0.22 |
| Weight by own party’s break-rank share | 1,078 | 245 | 0.51 | 0.99 | 0.94 | 0.21 |
| Own-party weight, coverage 1.00 → 0.50 | 1,574 | 330 | 0.65 | 0.98 | 0.94 | 0.30 |
| Residuals against whole peer group | 2,386 | 752 | 0.60 | 1.00 | 0.84 | 0.09 |
| Mixed “unknown” peer groups excluded | 2,185 | 452 | 1.00 | 1.00 | 1.00 | 0.21 |
| No informativeness weight | 3,467 | 770 | 0.54 | 0.95 | 0.87 | 0.04 |
| No weight, party-line votes included | 3,479 | 776 | 0.54 | 0.95 | 0.87 | 0.06 |
Overlap: Jaccard overlap of the positive set with the published one. Kept: of the published positive pairs the variant still measures, the share still positive. Rank corr.: Spearman correlation of the index on pairs measured in both runs and positive in either. D−R gap: difference between the parties’ mean strongest alignment, in standard deviations. Quintiles apply to the House only; Senate parties are too small to split five ways and fall back to party-only peers, as they also do for terciles when the peer floor is doubled to 24.
What holds. The party gap stays between 0.04 and about 0.3 standard deviations in every variant, always under the 0.5 the pipeline tests for. The peer adjustment’s central claim — the index is not a restatement of party — does not depend on any one of these choices. The vote floors decide how many pairs are measured, not what is found in them: tightening either one shrinks the measured set by more than half, yet at least 97% of the published positive pairs that are still measured stay positive, and the ordering is nearly unchanged. Halving the peer floor or the money floor adds pairs without removing a single published finding; halving all four at once removes one.
What is fragile. The definition of the peer group matters most. Comparing members with their whole party, with no ideology band, keeps 86% of the published positive pairs but the ordering among positive pairs correlates with the published one at only 0.64; quintiles give 0.77. So whether a pair shows alignment at all is fairly stable, but its exact index, and its rank against other mid-range pairs, depends materially on who it is compared with. Read differences of a few tenths between two pairs as noise. The money floor is the next most sensitive: raising it to $10,000 removes smaller-money members from the peer populations, which moves the peer mean, and 22% of the published positive pairs still measured fall to zero. Dropping the informativeness weight keeps 95% of findings but admits about 1,300 more pairs, because without it the coverage floor is counting raw votes rather than informative ones.
Three choices a reviewer questioned. Weighting each roll call by the member’s own party’s break-rank share, which arguably matches the peer design better, barely changes what is found: 99% of the published positive pairs it still measures stay positive, and the ranking among positive pairs correlates at 0.94. But own-party weights are smaller, so only 1,078 pairs clear the 1.00 coverage floor, against 2,185. About half of today’s measured pairs meet that floor only because of the other party’s splits. The findings themselves survive the stricter weight; how many pairs count as measured does not. Taking residuals against the whole peer group, rather than only the peers who clear the floors, keeps all but two of the published positive pairs and lowers the party gap to 0.09, but it makes positive findings far more common (752 against 452), because most of the wider group took little or none of the industry’s money and pulls the mean down; the ranking correlates at 0.84. Excluding the mixed-ideology “unknown” groups changes nothing, because none of them is large enough to be scored today.
The table is regenerated from the live feeds by pipeline/sensitivity.py
and published as data/sensitivity.json,
with a fingerprint of each input feed. Its baseline run reproduces the published index exactly.
Sources
| Data | Source |
|---|---|
| PAC contributions | FEC bulk downloads — committee master and contributions to candidates |
| Roll-call votes, ideology | Voteview — member votes, roll-call metadata, DW-NOMINATE |
| Bill subjects, amendments | govinfo BILLSTATUS — CRS legislative subjects and floor amendment text |
| Roster and portraits | @unitedstates/congress-legislators (CC0); bioguide.congress.gov; Wikimedia Commons |
All four are public and none requires an API key. The intermediate data this site consumes is published as JSON at congressvotetracker.org/data/, so the inputs can be checked independently of the output.
Known limitations
Outside spending is not scored. About 95% of independent-expenditure money cannot be attributed to an industry at all, because super PACs are named to conceal their backers. It is reported separately in the money data and excluded here rather than guessed at.
Direction calls are machine-assigned. Which side of a bill an industry is on is assigned by a language model, with the reasoning published for every call, including every case where no call could be made, and with no human sign-off. Low-confidence calls never score. These are ordinary data in a version-controlled file, and a correction is a commit.
The vote half is thinner than the money half. 43% of the industry-attributed roll calls have both parties above 98% unified, so they carry no within-party information and drop out after the peer adjustment. The industries where alignment is measurable at all are the ones with genuine intra-party fights.
Small dollar figures can produce large residuals. Roughly 4% of published pairs rest on under $10,000. They clear the floor but sit beside pairs backed by six figures, so every figure on the site shows its dollars and its roll-call count next to it. Read those, not just the index.
Coverage is a moment, not a verdict. The index covers the 119th Congress. A member with no number may simply not have cast enough measurable votes yet.
What the index does not mean
It is a statistical association between contributions received and votes cast, relative to comparable legislators. It is not a finding of corruption, bribery, or any other crime, and this site makes no such allegation about any person named on it. Accepting lawful contributions from an industry whose position you already hold is ordinary politics: a legislator from a farm state who votes for farm programmes and takes agribusiness money may simply be representing their constituents. Causation cannot be read off this data in either direction. A high index is a reason to look more closely at a relationship, and nothing more than that.
Corrections
If you are a public official listed here, or anyone else, and believe a figure or a direction call is wrong, contact AXIA Enterprises with the specifics. The direction calls are published as reviewable data precisely so that they can be challenged.
The game is separate
PAC-MONEY™ is a maze arcade game attached to this site and is pure satire. Every donor corporation in it is a parody company that does not exist, dealt to each player at random; the dollar figures are invented; no real company is depicted. Nothing in the game feeds the index and nothing in it is a claim about anybody.
← Back to the index · Notes for AI assistants · The satire game