# 2026 IRS Tax and Contribution Limits

Last verified: 2026-07-04
Sources: IRS Revenue Procedure 2025-32 (tax brackets, standard deduction, capital gains thresholds) and IRS Notice 2025-67 (retirement plan and HSA contribution limits), cross-checked against irs.gov newsroom releases and independently corroborated with Tax Foundation and ustax.tools bracket tables.

This file is the single source of truth for any MyFIRE content (app code, blog posts, methodology page) that references 2026 IRS limits. When these figures change for a future tax year, update this file first, then propagate to the files listed in "Where these figures are used" below.

## Tax Brackets — Single Filer

| Rate | Income Range |
|---|---|
| 10% | $0 &ndash; $12,400 |
| 12% | $12,401 &ndash; $50,400 |
| 22% | $50,401 &ndash; $105,700 |
| 24% | $105,701 &ndash; $201,775 |
| 32% | $201,776 &ndash; $256,225 |
| 35% | $256,226 &ndash; $640,600 |
| 37% | $640,601+ |

## Tax Brackets — Married Filing Jointly (MFJ)

| Rate | Income Range |
|---|---|
| 10% | $0 &ndash; $24,800 |
| 12% | $24,801 &ndash; $100,800 |
| 22% | $100,801 &ndash; $211,400 |
| 24% | $211,401 &ndash; $403,550 |
| 32% | $403,551 &ndash; $512,450 |
| 35% | $512,451 &ndash; $768,700 |
| 37% | $768,701+ |

## Standard Deduction

| Filing status | Amount |
|---|---|
| Single | $16,100 |
| Married filing jointly | $32,200 |

## Long-Term Capital Gains — Full Brackets

| Filing status | 0% | 15% | 20% |
|---|---|---|---|
| Single | $0 – $49,450 | $49,450 – $545,500 | $545,500+ |
| Married filing jointly | $0 – $98,900 | $98,900 – $613,700 | $613,700+ |

Verified via Tax Foundation's 2026 federal tax brackets page (direct fetch) and cross-checked against an independent search-engine aggregation of the same IRS Revenue Procedure 2025-32 inflation adjustments; both agreed on all four threshold figures. The 0% top thresholds match the figures already in this file from the original verification pass; the 15%/20% breakpoints were added later, for the fire-calculator After-Tax/mo column fix.

## Contribution Limits

| Account | Limit | Catch-up |
|---|---|---|
| 401(k) / 403(b) / 457 employee deferral | $24,500 | $8,000 (age 50&ndash;59, 64+) &middot; $11,250 (age 60&ndash;63, SECURE 2.0 "super catch-up") |
| IRA (Traditional/Roth combined) | $7,500 | $1,100 (age 50+) |
| HSA &mdash; individual coverage | $4,400 | $1,000 (age 55+) |
| HSA &mdash; family coverage | $8,750 | $1,000 (age 55+) |
| Section 415(c) overall defined-contribution limit (employee + employer combined) | $72,000 | &mdash; |

## HDHP Requirements (to contribute to an HSA)

| | Individual | Family |
|---|---|---|
| Minimum annual deductible | $1,700 | $3,400 |
| Maximum out-of-pocket | $8,500 | $17,000 |

## Other

- RMDs begin at age 73 (SECURE 2.0 Act) — unchanged from prior years, not a 2026-specific inflation adjustment.

## Known limitation

The Section 415(c) figure and the two "super catch-up" ages (60&ndash;63) were cross-checked via search-engine synthesis of IRS Notice 2025-67 rather than a direct successful fetch of that notice's raw text (the PDF fetch failed due to binary encoding). All other figures in this file were confirmed via a direct fetch of irs.gov newsroom pages and cross-checked against at least one independent secondary source (Tax Foundation, ustax.tools) with full agreement. If precision on the 60&ndash;63 catch-up or 415(c) limit becomes load-bearing for a future calculation, re-verify directly against Notice 2025-67 before relying on it.

## Where these figures are used

- `app/fire-calculator/calculations.js` &mdash; `WD_BRACKETS`, `WD_STD_DED`, `LTCG_BRACKETS` (canonical source; moved here from app.js so the Withdrawal tab and the Plan-tab year-table After-Tax/mo column share one bracket source, both Node-testable)
- `app/fire-calculator/app.js` &mdash; `b12top` (Withdrawal tab tax engine), imports `WD_BRACKETS`/`WD_STD_DED` from calculations.js
- `app/methodology/index.html` &mdash; Tax Modeling section (bracket table), HSA Strategy section (contribution limits)
- `app/blog/roth-conversion-ladder.html` &mdash; bracket list, FAQ answer, inline JS tax calculator (`rlCalc()`)
- `app/blog/dual-income-fire.html` &mdash; bracket comparison paragraph
- `app/blog/healthcare-early-retirement.html` &mdash; HSA contribution limits and HDHP minimums

### Known remaining staleness (not fixed in this pass — flagged for follow-up)

- `app/blog/tax-planning-fire.html` &mdash; uses a stale MFJ 10% bracket figure ($23,200) and an internally-approximate 12%-bracket-top figure ($131,800) inside a narrative paragraph. Needs a rewritten explanation, not a single-number swap, since the surrounding sentence chains several approximate figures together.
- `app/blog/tax-efficient-withdrawals.html` &mdash; a "$90k spending" bracket-fill illustration uses stale 2024 bracket-width figures ($30,200 / $23,200 / $36,600) that are constructed to sum to $90,000. Needs the whole illustration recalculated with 2026 figures, not a single-number swap.
- `app/withdrawal/index.html` (the standalone withdrawal calculator page, separate from `fire-calculator`) has its own independent, still-stale 2024 bracket table (`BRACKETS`/`STD_DED` constants) that was out of scope for this pass.
