Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Tax Analysis — Bracket Strength and Inflation (1954–2025)

Does the federal income tax bracket create progressive strain as inflation rises? This repository compiles 70+ years of U.S. federal income-tax schedules, CPI-U, chained CPI-U, median family income, standard deductions, and marriage/demographic series, and decomposes the effective tax rate faced by households on constant real income across three distinct indexation regimes.

Paper: paper/main.pdf (6 pages, REVTeX twocolumn) Data: data/ — 30+ CSVs, all provenance in data/README.md and data/SOURCES_notes.md Analysis code: analysis/ — reproducible Python pipeline Figures: paper/figures/ — 10 publication-quality PDFs


The question

A progressive bracket schedule is defined in nominal dollars. Inflation pushes real incomes through successively higher brackets ("bracket creep") unless the schedule itself is re-indexed. Between 1954 and 2025 the U.S. schedule has passed through three distinct indexation regimes:

Regime Years Indexing rule
I — No indexation 1954–1984 Bracket boundaries fixed in nominal dollars; changed only by statute
II — CPI-U indexed 1985–2017 ERTA-mandated annual CPI-U adjustment
III — Chained CPI-U 2018–present TCJA switched to C-CPI-U, which runs ~0.25 pp/yr slower

We ask: on a constant real income, does the federal schedule now tax more or less than it used to?

The headline answer

Less. Much less, on average — but with important regime-specific detail.

The Bracket Strength Index — the effective average statutory tax rate on a household whose real income is held constant at a reference level (2025 dollars) — has fallen substantially across all reference income levels between the 1954–84 and 2018–25 windows.

Composite strength (mean of $50k, $100k, $250k, $500k 2025-$)

Regime Single filer Married filing jointly
I (1954–1984) 32.9% 27.1%
II (1985–2017) 23.0% 20.4%
III (2018–2025) 20.1% 16.0%
Change I → III −12.8 pp −11.1 pp

Statutory rate cuts (1964 Revenue Act, ERTA 1981, TRA86, EGTRRA/JGTRRA, TCJA) have been larger and more frequent than inflation-driven bracket creep. The long-run trajectory is one of a weakening schedule on constant real income.

But within each regime — especially Regime I — creep is visible

Between 1969 and 1976 the single-filer schedule was literally unchanged (25 brackets, 70% ceiling), yet the effective rate on a constant real $100k (2025-$) rose from 23.1% to 28.5% — a 5.3 pp jump, purely from inflation. The 1977 Tax Reduction and Simplification Act and 1981 ERTA then reset it back to ~23%. Bracket creep in this decade was economically significant; the mandatory indexation from 1985 onwards is what eliminated it.

At median family income

The effective rate faced by a family at real median income has fallen dramatically:

Year Single MFJ
1980 21.5% 21.5%
2024 17.4% 12.6%

(Gross-income basis; subtracting standard deduction lowers both further.)

Top-bracket compression

The top bracket's real threshold has shrunk even as its rate has fallen:

1954 2025
Top rate (single) 91% 37%
Top-bracket threshold (2025-$) $2.4M $626k

The top bracket today catches ~4× more real income than in 1954 even at less than half the rate.

The quiet erosion of Regime III

The TCJA switch to chained CPI-U (2018) has already opened a ~1.5% cumulative gap against CPI-U by 2025. Over a full 40-year career, this compounds to a ~10% real-threshold erosion — a mechanical, low-amplitude reintroduction of bracket creep half an order of magnitude weaker than Regime I.


Repository structure

tax analysis/
├── README.md                   ← this file
├── data/
│   ├── README.md               ← full data manifest & caveats
│   ├── SOURCES_notes.md        ← agent-compiled provenance for dedn/marriage/AWI
│   ├── tax_brackets/
│   │   ├── single_1954_2025.csv
│   │   ├── married_filing_jointly_1954_2025.csv
│   │   ├── head_of_household_1954_2025.csv
│   │   ├── pre1954_all_filers.csv            (1913-1953)
│   │   └── SOURCES_hoh_and_pre1954.md
│   ├── inflation/              6 series (CPI-U NSA/SA, core, PCE, GDP deflator, C-CPI-U)
│   ├── income_wages/           9 series (median family/household income, SSA AWI, avg hourly, compensation, min wage)
│   ├── demographics/           6 series (marriage/divorce history 1890-2023, population, unemployment, birth rate)
│   └── deductions_exemptions/  standard_deduction_and_exemption.csv 1913-2025
├── analysis/
│   ├── tax_calc.py             reusable marginal-tax calculator, with smoke tests
│   ├── analyze.py              full pipeline: loads data, builds metrics, writes figures
│   └── results/
│       ├── series.csv          one row per year 1954-2025, 48 metrics
│       └── summary.json        headline numbers for paper
└── paper/
    ├── main.tex                REVTeX twocolumn manuscript
    ├── main.pdf                compiled (6 pp)
    └── figures/                10 PDF figures referenced in paper

Reproducing

# Data downloads are already in data/; if rebuilding:
#   - FRED CSVs via https://fred.stlouisfed.org/graph/fredgraph.csv?id=<SERIES_ID>
#   - Tax Foundation historical brackets page (see paper refs)

# Run the analysis
python analysis/analyze.py

# Compile the paper
cd paper && pdflatex main.tex && pdflatex main.tex

Requires Python 3.10+ with pandas, numpy, matplotlib; any LaTeX distribution with revtex4-2.

Key sources

All per-file provenance, cross-checks, and caveats are in data/SOURCES_notes.md and data/tax_brackets/SOURCES_hoh_and_pre1954.md.

Scope and limits

  • Ordinary income only. Capital gains, dividends, AMT, phase-outs, credits are excluded.
  • Federal only. No state income tax.
  • No payroll tax. FICA is today a larger burden than the income tax for median workers; its inclusion would flatten the secular-decline finding.
  • Gross-income basis. Subtracting standard deduction lowers every BSI curve by 3–5 pp post-TCJA and 1–3 pp earlier. The deduction CSV is in the repo for readers who wish to re-run net of deductions.

The statements here are descriptive, not normative. "Weaker schedule on constant real income" is not equivalent to "lower real revenue" — nominal incomes grow faster than CPI over long horizons — nor to any claim about vertical equity.

License

Data is from public-domain federal sources and public secondary compilers. Code and paper released under MIT.

About

An analysis that looks at the strength of taxing and tax tables based on inflation and CPI

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages