W-2 Box 12 Code AA — Roth 401(k) contributions
Your designated Roth 401(k) contributions. Already included in Box 1 (taxed now), but qualified distributions in retirement are tax-free.
At a glance — Box 12 Code AA
- Box name
- Roth 401(k) contributions
- Reports to
- Already in Box 1. Feeds Form 8880 (Saver's Credit).
- Check against
- Your 401(k) plan's year-end statement, specifically the Roth (after-tax) contribution total — it should match code AA and be separate from any traditional pre-tax total shown as code D on the same statement.
What Box 12 Code AA means
Code AA reports your designated Roth 401(k) contributions — after-tax money that grows tax-deferred and comes out completely tax-free in retirement, including the earnings, as long as the distribution is 'qualified': the account has been open at least 5 years and the withdrawal is made at or after age 59½, on account of disability, or after death. Unlike traditional 401(k) code D contributions, code AA does NOT reduce Box 1 — you're paying federal income tax on this money in the year it's withheld, not when you eventually withdraw it.
Roth and traditional 401(k) contributions share one combined §402(g) elective deferral limit — code D plus code AA together cannot exceed the annual cap. You can split the year's limit between the two however you like (all Roth, all traditional, or any mix), but the sum is what's capped, not each type separately. The age-50 catch-up and the SECURE 2.0 super-catch-up for ages 60–63 apply to this combined total as well.
SECURE 2.0 §603 changes how catch-up contributions work for higher earners: once fully phased in, anyone whose prior-year FICA wages from the plan-sponsoring employer exceeded an inflation-indexed threshold must make their catch-up contributions as Roth — they can no longer choose pre-tax catch-ups. The IRS's final regulations, issued September 2025, apply this requirement to taxable years beginning after December 31, 2026, though plans may adopt it earlier under a good-faith compliance standard for 2026. It reaches 401(k), 403(b), and governmental 457(b) plans alike.
Code AA is easy to confuse with code DD, but they're unrelated: AA is money you chose to contribute to your retirement account, already taxed and already in Box 1. DD is the total cost of your employer health coverage — informational only, never taxed, and has nothing to do with retirement savings. If you're trying to figure out why your W-2 has both, they're simply two different boxes doing two different jobs.
Tax return implications
- No effect on Box 1 — Roth 401(k) contributions are already included in your taxable wages.
- Counts toward the Saver's Credit (Form 8880) the same as traditional 401(k) contributions, subject to the same AGI phase-out.
- If SECURE 2.0's high-earner mandate applies to you, your catch-up contributions must be routed to code AA (Roth) once the requirement phases in for your plan — you may not be able to elect pre-tax catch-ups once your wages cross the threshold.
- Employer matching contributions are traditionally deposited pre-tax even when your own contributions are Roth — some plans now let you elect a Roth match instead, which is itself taxable income to you in the year it's made.
- Qualified distributions in retirement — 5+ years since your first Roth 401(k) contribution and age 59½ or older — are entirely tax-free, including all the growth.
Common pitfalls & things to check
- Don't mix up code AA (Roth 401(k), retirement savings, already taxed) with code D (traditional 401(k), also retirement savings, pre-tax) — they're both 401(k) money but taxed at opposite ends.
- Don't mix up code AA with code DD — DD is your employer health coverage cost, not a contribution you made, and has zero tax impact. A W-2 showing both AA and DD is normal, and the two numbers are unrelated.
- The 5-year clock for qualified Roth 401(k) distributions is tracked per plan, starting from your first Roth contribution to that specific plan — a job change to a new employer's Roth 401(k) can start a new clock there, so check with each plan rather than assuming continuity.
- If you're subject to the SECURE 2.0 high-earner Roth catch-up mandate, confirm with your plan how it's applying the rule during the transition years — some plans adopted it early under the IRS's good-faith standard, others are waiting for the phase-in.
- A large code AA number doesn't mean you overcontributed — it only becomes a problem if code D plus code AA together exceed the annual §402(g) limit. Add the two together yourself rather than checking either one alone against the cap.
For 2025 returns (filed by April 15, 2026)
- §402(g) elective deferral limit
- $23,500
- Age-50 catch-up $7,500 · SECURE 2.0 ages-60–63 super-catch-up $11,250 · §415(c) total additions $70,000. Combined across code D + AA (traditional + Roth).
Values sourced from central tax-year config at build time — update automatically on FY rollover.
FAQ
What is the difference between codes AA and DD on my W-2?
Code AA is your Roth 401(k) contribution — money you chose to defer, already taxed, growing tax-free for retirement. Code DD is the total cost of your employer-sponsored health coverage — informational only, not a contribution you made, and not taxable. They're unrelated boxes that happen to sit near each other.
Is code AA taxable income?
It's already been taxed — code AA is included in Box 1 in the year you contribute. What you're avoiding is tax on the withdrawal: qualified distributions in retirement, including all growth, come out completely tax-free.
Can I have both code D and code AA on the same W-2?
Yes — many 401(k) plans let you split contributions between traditional (code D) and Roth (code AA) in the same year. The combined total of both still can't exceed the annual §402(g) elective deferral limit.
When did the SECURE 2.0 Roth catch-up rule take effect?
The IRS's final regulations, issued September 2025, apply the mandatory-Roth-catch-up rule to taxable years beginning after December 31, 2026, for higher earners above the wage threshold — though plans can choose to apply it earlier under a good-faith compliance standard for 2026.
Related W-2 boxes
Box 12 — Codes (401(k), HSA, health coverage, ISO, and more)
Up to four labeled amounts (12a–12d) using IRS codes. Common codes: D (401(k) elective deferral), DD (employer health coverage cost), W (employer + employee HSA contributions), AA (Roth 401(k)).
Box 12 Code D — Elective deferrals to a 401(k) plan
Your traditional (pre-tax) 401(k) elective deferrals. Reduces Box 1 dollar-for-dollar, up to the annual §402(g) elective deferral limit (higher with age-50 catch-up and SECURE 2.0 ages-60–63 super-catch-up).
Box 12 Code DD — Cost of employer-sponsored health coverage
The total cost (employer + employee share) of your employer-sponsored group health coverage. Informational only — does not affect your tax.
Box 12 Code E — Elective deferrals to a 403(b) plan
Your traditional (pre-tax) 403(b) elective deferrals. Reduces Box 1 up to the annual §402(g) limit, with a special 15-year catch-up for long-tenured employees of certain nonprofits.
Reconciling your W-2 at tax time? Use the paycheck calculator to verify expected federal, Social Security, and Medicare withholdings on your salary, and the federal income tax calculator to estimate your refund or balance owing before you file.
Related Calculators
Paycheck Calculator
Federal, state, FICA withholding, net take-home, W-4 alignment
Federal Income Tax Calculator
10–37% brackets, $15,750 standard deduction, progressive calculation
W-4 Withholding Calculator
Form W-4 steps, correct federal withholding, avoid penalties
FICA & Social Security
6.2% SS to $176,100, 1.45% Medicare, 0.9% additional Medicare
Tax Refund Estimator
Estimate federal refund, withholding vs liability, adjustments
401(k) Calculator
Contribution limits, employer match, tax-deferred growth
Sources
W-2 box definitions per IRS General Instructions for Forms W-2 and W-3 and IRC §6051. Rates and thresholds current for tax year 2025 (file by April 15, 2026); 2026 figures included where published.