Pre-registration
The Tax Cuts and Jobs Act 2017 produced after-tax income gains that were monotonically increasing in pre-tax income decile through 2019, with the top decile capturing more than 35 percent of cumulative after-tax income gain over 2018-2019 — orthogonal to the existing TCJA growth-effect spec which targets aggregate output. The discriminating test is the share of the after-tax-income-gain pie captured by deciles 9-10 vs deciles 1-5, using JCT/CBO distributional tables and CEX/SCF microdata.
Falsification criterion — what would disprove this
This hypothesis is considered falsified if:
SUPPORTED if top-decile share of cumulative after-tax-income gain over 2018-2019 exceeds 35 percent AND the gradient (decile 10 minus decile 1 percentage-point change in after-tax income) exceeds 1.5 percentage points at p<0.10. REFUTED if top-decile share is below 25 percent or the gradient is below 0.5 percentage points at p<0.10.
formal test & threshold
test: US descriptive panel of after-tax income change by decile 2017-2019 using TPC/JCT distributional tables, cross-validated with CEX-SCF microdata.
Method
- Template
descriptive- Sample
- 1 countries · 2015 – 2020
- Evidence type
- descriptive
Descriptive comparison of top-decile vs bottom-decile after-tax income change pre vs post 2018. Cross-validated against TPC/JCT distributional tables. Robustness with event_study around 2018Q1 break.
Data
| Variable | Source | Transform |
|---|---|---|
top_decile_after_tax_income_share outcome | owid:top-10-share-of-total-incometier 2 | level |
top_1pct_pretax_income_share outcome | owid:top-1-share-of-total-incometier 2 | level |
gini_disposable_income outcome | world_bank_wdi:SI.POV.GINItier 2 | level |
tcja_2018_post_indicator treatment | constructed:indicator = 1 for year >= 2018tier 5 | indicator |
top_marginal_income_tax_rate treatment | owid:top-marginal-income-tax-ratetier 2 | level |
log_real_gdp control | fred:GDPC1tier 1 | log |
unemployment_rate control | fred:UNRATEtier 1 | level |
● ready · ● pending · ● reconstruct-needed
Detailed result card
Result card — tax_inequality_tcja_2017_decile_incidence
Verdict: PARTIAL — shape=pre_post, sign matches but magnitude below threshold; |Δ_log|=0.07; threshold 35.0%, observed 7.0%
Pre-registration
- Claim: The Tax Cuts and Jobs Act 2017 produced after-tax income gains that were monotonically increasing in pre-tax income decile through 2019, with the top decile capturing more than 35 percent of cumulative after-tax income gain over 2018-2019 — orthogonal to the existing TCJA growth-effect spec which targets aggregate output. The discriminating test is the share of the after-tax-income-gain pie captured by deciles 9-10 vs deciles 1-5, using JCT/CBO distributional tables and CEX/SCF microdata.
- Falsification rule: SUPPORTED if top-decile share of cumulative after-tax-income gain over 2018-2019 exceeds 35 percent AND the gradient (decile 10 minus decile 1 percentage-point change in after-tax income) exceeds 1.5 percentage points at p<0.10. REFUTED if top-decile share is below 25 percent or the gradient is below 0.5 percentage points at p<0.10.
- Falsification test: US descriptive panel of after-tax income change by decile 2017-2019 using TPC/JCT distributional tables, cross-validated with CEX-SCF microdata.
Comparison
- shape: pre_post
- country: USA
- cut_year: 2017
- pre_mean: 38.47222222222223
- post_mean: 41.2625
- delta: 2.7902777777777743
- log_delta: 0.07001761701398213
- n_pre: 54
- n_post: 8
Extracted threshold: {'percent': 35.0}
Variables resolved
world_bank_wdi:SI.POV.GINI→ gini_disposable_income (outcome, publisher=world_bank_wdi, n=2430)
Variables missing data
owid:top-10-share-of-total-income(outcome, name=top_decile_after_tax_income_share)owid:top-1-share-of-total-income(outcome, name=top_1pct_pretax_income_share)constructed: indicator = 1 for year >= 2018(treatment, name=tcja_2018_post_indicator)owid:top-marginal-income-tax-rate(treatment, name=top_marginal_income_tax_rate)fred:GDPC1(controls, name=log_real_gdp)fred:UNRATE(controls, name=unemployment_rate)
Generated by scripts/run_descriptive.py at 2026-04-30T10:11:18+00:00
Notes
Tax-inequality candidate, swarm-S6 batch 2. Orthogonal angle to existing fiscal/tcja_2017_growth_effect.yaml — tests incidence by decile rather than aggregate output.