Methodology
Two published inputs drive everything on this site: an annual cost figure and a concentration score. The four rankings are plain arithmetic on those two numbers. There is no composite index and no tuned weighting, because a reader who disagrees with a ranking should be able to identify precisely which input they disagree with.
Annual cost
Tax expenditure costs come from the Joint Committee on Taxation’s annual estimates, with Treasury figures used where JCT does not publish a comparable line. Direct spending comes from CBO baseline projections and agency outlay reporting.
Two caveats apply throughout. First, tax expenditure estimates are not additive: repealing two provisions rarely raises the sum of their individual scores, because taxpayer behaviour and interaction effects change. The combined figure on the homepage is a scale indicator, not a revenue estimate. Second, some provisions defer tax rather than forgive it, and cash-flow estimates overstate their long-run cost relative to present-value measures. Where that applies, the detail page says so.
One entry does not sit on the same basis as the rest. Carried interest is not scored as a separate tax expenditure by JCT, so its figure is CBO’s estimate of the revenue raised by taxing it as ordinary income, which is a repeal-side revenue estimate rather than a revenue-forgone calculation. The two are not the same quantity and should not be read as interchangeable. It is included because the provision is structurally central to what this site tracks, and its cost note says plainly which measure it uses and for which year.
Concentration score
A 0–100 score where 0 means the benefit is spread across taxpayers roughly in proportion to their number, and 100 means it is captured by a narrow, structurally identifiable class. It is built from distributional tables where those exist, and from the statutory eligibility structure where they do not.
It is a judgement, not a measurement, and the interface is built to keep it honest about that: the score renders as a marker on a track rather than as a chart, and the reasoning behind it appears next to it everywhere it is shown. A Lorenz curve would imply a precision the underlying evidence does not support.
Where possible the score reflects asset position, entity form and form of return rather than income percentile, because that is what the statutes actually key on. A provision that rewards holding appreciated assets is not well described by an income decile.
One consequence is worth stating outright, because it can invert what a reader expects. A provision confined to a single occupation scores high on this measure even if its benefit skews less toward high earners than a broadly available provision does. Narrowness of the class and skew toward the top are different properties, and this score tracks the first. Where a published distribution exists, the share going to a named income band is shown beside the score, and that is the figure to read for the second question.
The four rankings
Writing c for the concentration score as a fraction:
- Total costAnnual taxpayer cost, largest first.sort by: cost
- Most cost, least goodAnnual cost multiplied by the concentration score, the dollars flowing to a narrow structural class.sort by: cost × c
- Most narrowly capturedHow narrow and identifiable the benefiting class is, ignoring size. Note that this is not the same as how much goes to high earners: a provision confined to one occupation ranks high here even where its benefit skews less to the top than a broadly available one does. The softest of the four views, since it drops the cost figure, which is verified, and ranks on the concentration score, which is a judgement. Rows whose score is grounded in a published distribution are marked.sort by: c
- Most good, least costAnnual cost multiplied by how broadly the benefit spreads, shown for contrast, not as criticism.sort by: cost × (1 − c)
The second and third measures sum back to total cost, which is a deliberate constraint: a transfer cannot score badly on both without being large in the first place, and a large, broadly-distributed transfer will rank near the top of the third view rather than disappearing. That is the check on the tool measuring its own selection criteria.
The fourth is different in kind and should be read with more caution than the others. It drops the cost figure entirely, and the cost figure is the verified half of the pair. What remains is the concentration score on its own, so the ranking is a ranking of judgements. Only a minority of scores are currently anchored to a published distribution, and that view marks which ones those are on every row. It answers a narrow question, which provisions are written for the smallest group, and it deliberately does not answer whether the money is well spent, because nothing on this site measures the public benefit a provision produces.
Freshness
Freshness is computed from each source document’s publication date at render time rather than stored as a field, so it cannot silently go out of date. Thresholds are deliberately generous because the underlying documents are annual or biennial: an eighteen-month-old JCT figure is normal, not neglected. Anything over four years old is marked stale and should be read as historical context.
Every measure, and what will misread it
Each figure on this site is one of four things, and the difference matters more than any single number. Published means a named organisation printed it and you can check it against them. Judged means it is this project’s reading: arguable by design, and never marked verified. Derived is arithmetic over those, carrying every input’s caveats. Structural is a classification rather than a measurement.
The caveats below are not hedging. Each one was found the expensive way, by an analysis that produced a plausible wrong answer before someone noticed why.
Revenue the Treasury does not collect, or outlays it makes, in one year. Source: JCT JCX-45-25, except crop insurance and carried interest (CBO).
- Not all one fiscal year. Carried interest is an FY2027 figure sitting in a list ranked on FY2025 ones, because CBO scores it on a repeal basis over a different window and no FY2025 equivalent exists.
- JCT tax expenditure estimates are income tax only. The payroll tax effect is excluded, which is why combined estimates published elsewhere for the employer health exclusion run substantially higher than the figure here.
- A tax expenditure is not a revenue forecast. It measures the cost of a provision against a baseline without it, and does not model how behaviour would change if it were repealed, so it is not what repeal would raise.
How narrow and identifiable the benefiting class is, 0 to 100. Source: This project, from distributional evidence and statutory structure.
- Structural narrowness, not income skew. The tips deduction reaches 2.6% of tax units and scores 58; the employer health exclusion is broader, sends more of its benefit to the top quintile, and scores 32. Correct on the definition, backwards to anyone reading it as a proxy for going to the rich.
- Where a distribution exists the two agree, but that is calibration rather than confirmation: four of the six grounded scores were revised against those very distributions when they landed.
- Grounded for 6 of 33 and stuck there. JCT distributes only ten items, the Tax Policy Center licence forbids publishing anything derived from theirs, and IRS SOI measures a different quantity.
The published share of a provision's benefit going to a named income band. Source: JCT JCX-45-25 Table 3.
- The bands are not the same across rows. Most are returns over $200,000; the Social Security exclusion is over $500,000. Two shares with different denominators are not comparable and must not be ranked against each other.
- JCT's income concept is AGI plus tax-exempt interest, employer health and life contributions, the employer FICA share, nontaxable Social Security, the insurance value of Medicare and more. It is not AGI, so a SOI band and a JCT band count overlapping but different populations.
- Table 3 distributes selected individual items only. Absence means JCT did not distribute it, not that a provision is broadly shared.
Returns reporting the thing a provision turns on, over all returns filed. Source: IRS Statistics of Income Tables 1.4 and 2.1.
- Two years behind the cost figure. Dividing an FY2025 dollar amount by a TY2023 return count mixes vintages, and no field on the site does that division for you.
- Returns, not people. A joint return is one row and two taxpayers, so a per-person reading overstates narrowness.
- The denominator is all returns filed, deliberately. Counting itemised deductions against itemisers instead would report the charitable deduction as reaching 78% rather than 7.3%.
- Claiming is not benefiting in proportion. Capital gains reaches 19.4% of filers while roughly 89% of the dollars sit above $200,000 of AGI.
- Counts a reported item, not the provision. The IRA line counts this year's deductible contributions, while that entry's concentration rests on accumulated balances and rollovers, so the two describe different populations.
Reported lobbying by the sectors most directly interested in a provision. Source: Senate LDA filings.
- Sector aggregates covering many issues. Nothing attributes a dollar of it to the provision on the same row, and the interface says so.
- Not campaign money and not broken out by member, party or bill. A figure placed beside a party tally would assert a link the filings cannot carry.
- 0 of 11 verified against the filings themselves.
Party splits on the vote that enacted a provision. Source: House Clerk and Senate LIS roll-call XML.
- The vote is usually on a vehicle, not the provision. Three of these are omnibus packages where the tracked provision was never separately voted on, so a tally measures support for the package.
- A transfer's current annual cost is not attributable to any one roll call. Most have enabling statutes decades older than the vote recorded here.
- In the raw evidence the House prints Aye and No on some question types and Yea and Nay on others. A filter on one vocabulary silently drops whole roll calls.
- House XML carries a member identifier only from the 108th Congress. Four roll calls between 1992 and 2001 can be counted by party but not joined to members at all.
Party character of the enacting coalition where no roll call is attached. Source: This project, from the legislative history.
- Superseded by a tally wherever one exists, so on 34 of 81 links it is stored but never rendered.
- The 26 that still render are all pre-1990, where no electronic roll call exists to check them against. All 26 are unverified and marked as such.
- The link's own summary prose is a separate field and renders regardless. SECURE 2.0 described a bipartisan omnibus directly above a tally of 9 to 200 among House Republicans.
Classification for filtering: tax expenditure, credit, direct subsidy, and 14 sectors. Source: This project.
- Sector is where a provision lands, not who lobbied for it.
- The type boundary is the statute's mechanism, not its economics. A refundable credit and a deduction can deliver similar money by different routes.
Combining two of them
These traps belong to no single field. They appear only when two are put together, which is exactly when nobody is looking for them.
reach x costDifferent vintages. Reach is tax year 2023 and almost every cost figure is FY2025, so a cost-per-claimant ratio is two years out of alignment before any other objection.distribution.shareTop across rowsDifferent top bands, $200,000 for most and $500,000 for one. Ranking on shareTop compares shares of different populations.concentration x distribution.shareTopNot independent for the six that have both. Four of those scores were revised against the distribution when it arrived, so their agreement records a calibration rather than confirming the judgement.votes x costSumming transfer costs by which party supplied more yea votes produces a tidy total in a minute and means very little: it assigns a provision's entire current annual cost to one roll call, often on an omnibus vehicle, often decades after the enabling statute.
What Phase 1 does not do
It covers federal transfers only, and only the largest of them. It does not name individual beneficiaries, attempt to attribute lobbying spend to specific provisions, or model second-round economic effects. Lobbying figures shown are sector aggregates covering many issues, and should be read as an indicator of organised interest rather than as a price paid for a particular line of the tax code.