Income tax: a synthetic population built from IRS data
The IRS doesn't publish individual tax returns, but its Statistics of Income (SOI) division publishes detailed tables. The model splits returns into 19 income ranges × 4 filing statuses (Table 1.2). Within each cell it creates a handful of weighted "representative returns" ( in total). They're spread across the range so each cell reproduces SOI's number of returns, total AGI, number of returns with taxable income, and total taxable income. The top range ($10M+) uses SOI's top 0.01% and 0.001% cutoffs from Table 4.3, with a Pareto tail above $78.6M. Capital gains and qualified dividends are split across cells using Tables 3.5 and 3.6. Credits are allocated using Table 3.3. The child tax credit is modeled with its own formula (next section), and all other nonrefundable credits stay as fixed dollar amounts.
Next the 2023 brackets (Rev. Proc. 2022-38) are applied to every representative return. The results are checked against IRS totals the model was not forced to match: tax generated at each rate, tax by filing status, and top-percentile tax shares.
| Item (TY2023) | Model | IRS SOI | Difference |
|---|
Child tax credit: how children were estimated
The IRS publishes, by AGI range, the number of returns and dollars for the nonrefundable child tax credit / credit for other dependents and for the refundable additional child tax credit (SOI Table 3.3, TY2023). It also publishes national Schedule 8812 counts: 63.8 million qualifying children and 21.2 million other dependents (Publication 4801). It does not publish children per return by income, so the model builds an estimate:
- Claiming returns by income range = returns with the nonrefundable credit + returns with the refundable credit − returns with both. The 9.3 million returns with both come from Publication 4801 (38.6M + 17.4M − 46.7M with a positive credit) and are spread across ranges in proportion to the smaller of the two counts. That gives 47.2 million claiming returns. Within a range they're split across filing statuses in proportion to dependents per return from TY2017 IRS data (the last year with personal exemptions).
- Children per claiming return. Returns with children have 1, 2 or 3 children in the proportions of Census CPS 2023 Table F1 (43% / 36% / 21% of families with members under 18; "3 or more" counted as 3). Some claiming returns have only other dependents, like an older child or a parent. In each income range, that share is solved so the modeled credit (nonrefundable + refundable) equals the IRS total for the range.
- Earned income for the refundable part is set equal to AGI. In the lowest ranges, where IRS Table 1.4 shows wages plus business income exceeding AGI, the model uses that ratio. The no-AGI range uses wages per return. IRS data support this: the average refundable credit in the $10–15k range ($1,500) needs about $12,500 of earnings at the 15% rate.
- Above $500k the IRS shows almost no credit because it is fully phased out. So families there are imputed with the $200–500k range's claiming rate and mix of children. That's 1.1 million returns and 1.7 million children, and it only matters if you raise the phase-out.
Results the model was not forced to match: 62.9 million children under $500k (IRS: 63.8 million), 35.4 million returns with children (IRS: 37.4 million) and 23.2 million other dependents (IRS: 21.2 million). The nonrefundable/refundable split comes out of the formula. Other credits absorb the difference so income tax after credits still matches the IRS total.
Tariffs
For each category: revenue = rate × imports. Imports shrink as the rate rises, depending on the elasticity slider. Import values and "calculated duty" come from Census merchandise trade files (HTS-10 detail, grouped by end-use code). The summary compares them with actual customs receipts from the Monthly Treasury Statement.
Excise taxes
Receipts by type come from IRS SOI Historical Table 20 (FY2024). The taxed amount is worked out as receipts ÷ statutory rate. Taxes with many different rates (wine, tobacco, aviation, …) change through a "× current rates" multiplier.
Key simplifications (please read)
- Different years. Income tax uses tax year 2023 liabilities, tariffs use 2025 or 2026 imports, and excise uses fiscal 2024 receipts. The grand total is an illustration, not a forecast for any single year. Treasury actually collected $2.66T in individual income tax in FY2025, a different measure from SOI's $2.15T of 2023 liability, because it includes withholding timing, refunds and other items.
- Child tax credit (estimates). Children per return are estimated, not observed (see above). Each representative return uses its range's mix of 0–3 children. The set of claiming families is fixed at 2023 claimers, so families who got no credit in 2023 (for example, those with no earnings) are missing. That means fully refundable or larger credits are probably understated. Not modeled: the alternative refund rule for 3+ children, rounding of the phase-out to $1,000 steps, and the Social Security number and residency rules. The 2021 preset applies 2021 rules to 2023 incomes, ignores advance payments, and uses Census population shares for 17-year-olds and children under 6. The credit doesn't change how much people work. Refundable payments are outlays, and $2.1B of the 2023 refundable credit actually offset other taxes such as self-employment tax (Table 3.3). The model counts that as outlays too.
- Not modeled: AMT, phase-outs of credits other than the child credit, the EITC and other refundable credits, and payroll, corporate and estate taxes. Qualified business income deductions and other items stay at their 2023 amounts inside each return's taxable income. The pre-2018 preset inflates 2017 parameters with CPI-U and adds personal exemptions. People per return come from TY2017 SOI data, matched by nominal AGI range. It does switch the child credit to 2017 law. It doesn't bring back the pre-2018 AMT, the Pease limit or uncapped SALT deductions, and capital-gain thresholds stay at 2023 values.
- Deductions. Itemizers keep their average itemized amount for their cell. Nobody switches from the standard deduction to itemizing when the standard deduction is cut.
- Capital gains keep their 2023 dollar amounts. Realizations don't respond to rates (no "lock-in"), and the taxable income elasticity applies only to ordinary income.
- Net investment income tax ($39B) is held fixed.
- Tariffs: no retaliation, exchange-rate changes, trade diversion between categories, or evasion. The model also ignores the fact that tariffs and excises shrink the income and payroll tax base, which offsets part of their revenue. Official scorekeepers account for this.
- Excise: full pass-through to buyers. The derived bases for beer and spirits are approximate because of reduced rates for small producers.