W-2 Box 12 Codes: Every Letter Explained, Plus New 2026 Additions

Box 12 of your W-2 uses one- or two-letter codes to report specific kinds of pay and benefits that don’t fit in the regular wage boxes. Each code sits next to a dollar amount, and together they tell you and the IRS how that amount should be treated: some codes lower your taxable wages, some flag tax you still owe, and some are informational only. Reading the W-2 Box 12 codes correctly matters because a misinterpreted entry can mean overpaying, underpaying, or missing a required form.

Every entry has two parts, the code and the amount. Match the code to what it represents below, then check whether that amount is already reflected in your Box 1 wages or needs separate handling on your return.

Retirement Plan Contributions

These codes track money your employer routed into a retirement account before figuring your taxable wages. For 2026, the base elective deferral limit across 401(k), 403(b), and 457(b) plans is $24,500.1Internal Revenue Service. 401(k) Limit Increases to $24,500 for 2026, IRA Limit Increases to $7,500

  • Code D — Elective deferrals to a 401(k), including a SIMPLE 401(k).
  • Code E — Salary reduction contributions to a 403(b), common at schools, hospitals, and tax-exempt organizations.
  • Code F — Elective deferrals to a SARSEP (Salary Reduction Simplified Employee Pension).
  • Code G — Elective and nonelective deferrals to a 457(b) deferred compensation plan, available to government workers and some nonprofit employees.
  • Code H — Elective deferrals to a Section 501(c)(18)(D) tax-exempt organization plan. Unlike the other retirement codes, Code H amounts stay in your Box 1 wages and are deducted elsewhere on your return.
  • Code S — Salary reduction contributions to a SIMPLE IRA. The 2026 deferral limit is $17,000, lower than the 401(k) cap.1Internal Revenue Service. 401(k) Limit Increases to $24,500 for 2026, IRA Limit Increases to $7,500

Amounts under Codes D, E, F, G, and S are excluded from Box 1, which reduces your federal taxable income. They still count as wages for Social Security and Medicare, so you’ll see them reflected in Boxes 3 and 5.2Internal Revenue Service. Common Errors on Form W-2 Codes for Retirement Plans

Catch-Up Contributions

If you’re 50 or older, you can defer an additional $8,000 beyond the $24,500 base for 401(k), 403(b), and 457(b) plans. SECURE 2.0 added a “super catch-up” for participants aged 60 through 63: those workers can contribute up to $11,250 above the base limit instead of the regular $8,000.1Internal Revenue Service. 401(k) Limit Increases to $24,500 for 2026, IRA Limit Increases to $7,500 SIMPLE IRA catch-ups are smaller: $4,000 at age 50 and $5,250 for ages 60 through 63.3Internal Revenue Service. COLA Increases for Dollar Limitations on Benefits and Contributions

Catch-up amounts don’t get their own Box 12 code. They’re folded into the regular code (D for a 401(k), E for a 403(b), and so on). If the number next to your code exceeds the base limit, the excess is likely your catch-up.

Designated Roth Contributions

Roth contributions get their own codes because they’re taxed differently. You’ve already paid income tax on these dollars, so they stay in Box 1. Qualified withdrawals in retirement come out tax-free.

  • Code AA — Designated Roth contributions to a 401(k).
  • Code BB — Designated Roth contributions to a 403(b).
  • Code EE — Designated Roth contributions to a governmental 457(b). Tax-exempt organization 457(b) plans cannot offer a Roth option.2Internal Revenue Service. Common Errors on Form W-2 Codes for Retirement Plans

The same dollar limits apply to Roth contributions as to pre-tax deferrals. Pre-tax and Roth share a single limit, so if you split between the two, the combined total cannot exceed the cap.4Internal Revenue Service. Retirement Topics – Contributions

Mandatory Roth Catch-Up for High Earners

Starting in 2026, if your FICA wages in the prior year were $150,000 or more, any catch-up contribution to your 401(k), 403(b), or governmental 457(b) must go into a Roth account. Pre-tax catch-ups are no longer allowed at that income level. The rule uses a one-year lookback, so your 2025 FICA wages determine whether it applies to your 2026 catch-up. Expect to see Code AA, BB, or EE on your W-2 if this rule reaches you, even if you previously contributed only pre-tax.

Healthcare and Insurance Benefits

Several codes report health-related benefits. Code W and Code DD are the ones that most often trip people up, because both can show large numbers but affect taxes very differently.

Code W — Health Savings Account Contributions

Code W reports HSA contributions, including your employer’s direct contributions and any pre-tax amounts you elected through a cafeteria plan.5Internal Revenue Service. General Instructions for Forms W-2 and W-3 For 2026, the combined annual limit is $4,400 for self-only coverage and $8,750 for family coverage, plus an extra $1,000 if you’re 55 or older. If Code W appears on your W-2, you must file Form 8889 with your return.6Internal Revenue Service. Instructions for Form 8889 Skipping that form is a common HSA mistake and can trigger an IRS notice.

Contributions above the annual limit face a 6% excise tax each year they remain in the account.7Office of the Law Revision Counsel. 26 U.S. Code 4973 – Tax on Excess Contributions to Certain Tax-Favored Accounts Withdraw the excess and its earnings before your tax filing deadline (including extensions) and the penalty doesn’t apply for that year.

Code DD — Employer-Sponsored Health Coverage Cost

Code DD shows the total cost of your employer-sponsored health insurance, combining what the company paid and what came out of your paycheck. This figure is informational and does not increase your taxable income or change your tax bill.8Internal Revenue Service. Reporting Employer-Provided Health Coverage on Form W-2 Employers filing 250 or more W-2s must report this; smaller employers may do so voluntarily.9Internal Revenue Service. Form W-2 Reporting of Employer-Sponsored Health Coverage

Code R — Archer MSA Employer Contributions

Code R reports employer contributions to an Archer Medical Savings Account.5Internal Revenue Service. General Instructions for Forms W-2 and W-3 Archer MSAs are largely a legacy product; new ones haven’t been established since 2007. If you still have one, Code R amounts get reported on Form 8853.

Code FF — Qualified Small Employer HRA

Code FF reports the total permitted benefit under a Qualified Small Employer Health Reimbursement Arrangement (QSEHRA). This is what’s available to you under the arrangement, not necessarily what you actually received. The reported figure isn’t taxable income. Your employer reports the full available benefit even if you didn’t use it, and you can’t decline participation to avoid the reporting.5Internal Revenue Service. General Instructions for Forms W-2 and W-3

Code C — Group-Term Life Insurance Over $50,000

The first $50,000 of employer-provided group-term life insurance is tax-free. Code C reports the taxable cost of coverage above that threshold, calculated from an IRS premium table rather than the actual premium your employer paid.10Internal Revenue Service. Group-Term Life Insurance This amount is already in your Box 1 wages, so you don’t add it separately. It also appears in Boxes 3 and 5 because it’s subject to Social Security and Medicare taxes.

Stock Compensation and Deferred Pay

Code V — Nonstatutory Stock Options

Code V reports the spread between the exercise price and the fair market value of shares when you exercise nonstatutory (nonqualified) stock options. That spread is already included in your Boxes 1, 3, and 5 wages.5Internal Revenue Service. General Instructions for Forms W-2 and W-3 Box 12 breaks it out so you can track your cost basis. When you sell the shares later, your capital gain or loss starts from the fair market value on the exercise date, not the exercise price.

Codes Y and Z — Section 409A Deferred Compensation

Code Y reports the total deferred during the year under a Section 409A nonqualified deferred compensation plan. It’s not currently taxable; the code simply alerts the IRS that the deferral exists.

Code Z appears when a 409A plan fails the law’s strict requirements around distribution timing, election procedures, or funding. The deferred income becomes immediately taxable, and you owe an additional 20% penalty tax plus potential interest.2Internal Revenue Service. Common Errors on Form W-2 Codes for Retirement Plans If Code Z shows up on your W-2, consider consulting a tax professional. The penalties are steep and the correction rules narrow.

Codes GG and HH — Qualified Equity Grants

Code GG reports income from qualified equity grants under Section 83(i), which lets eligible employees of private companies defer tax on stock received through options or restricted stock units for up to five years after vesting. The income is taxed at the highest individual rate when the deferral period ends.5Internal Revenue Service. General Instructions for Forms W-2 and W-3 Code HH tracks the aggregate amount you’ve deferred under Section 83(i) elections as of year-end. These codes are uncommon and apply mostly to employees of startups and private companies.

Uncollected Social Security and Medicare Tax

Four codes flag payroll taxes your employer couldn’t withhold from your pay. These come up when the taxable amount exceeded the cash wages available, and the tax gets paid when you file.

  • Code A — Uncollected Social Security tax on tips.
  • Code B — Uncollected Medicare tax on tips.
  • Code M — Uncollected Social Security tax on group-term life insurance over $50,000 for former employees.
  • Code N — Uncollected Medicare tax on that same coverage for former employees.5Internal Revenue Service. General Instructions for Forms W-2 and W-3

Codes A and B typically appear for tipped workers whose reported tips in a pay period exceeded their cash wages. Codes M and N usually show up for retirees who still receive employer-paid life insurance, since there’s no active paycheck from which to deduct the tax. For 2026, Social Security tax applies only on earnings up to $184,500.11Social Security Administration. Contribution and Benefit Base Medicare tax has no earnings cap.

Military, Adoption, and Other Special Benefits

Code Q — Nontaxable Combat Pay

Code Q shows nontaxable combat zone pay for service members. It’s not in Box 1 and isn’t subject to federal income tax. You can also elect to count it as earned income when calculating the Earned Income Tax Credit. You and your spouse can each choose independently whether to include your own combat pay, and the IRS recommends running the return both ways to see which produces a larger refund.12Internal Revenue Service. Military and Clergy Rules for the Earned Income Tax Credit If you include it, you must include all of it; partial elections aren’t allowed.

Code P — Military Moving Expense Reimbursements

Code P reports excludable moving expense reimbursements paid to active-duty Armed Forces members who move under military orders. Most civilian employees lost this exclusion after the 2017 Tax Cuts and Jobs Act, but the military exception remains.5Internal Revenue Service. General Instructions for Forms W-2 and W-3 The Code P amount is excluded from your taxable wages.

Code T — Adoption Benefits

Code T reports what your employer paid or reimbursed for qualified adoption expenses under an adoption assistance program. For 2026, up to $17,670 can be excluded from income.5Internal Revenue Service. General Instructions for Forms W-2 and W-3 The full amount, including any portion above the exclusion limit, appears in Box 12. You calculate the actual exclusion and any adoption tax credit on Form 8839.

Code L — Employee Business Expense Reimbursements

Code L reports the nontaxable portion of employee business expense reimbursements paid under an accountable plan. To qualify, the plan must require you to document a business connection, substantiate the amount, and return any excess advance within a reasonable time. Reimbursements meeting all three conditions don’t count as income and aren’t in Box 1.

Code J — Nontaxable Sick Pay

Code J shows sick pay from a third-party payer such as a short-term disability insurer that isn’t included in your income because you contributed to the plan with after-tax dollars.5Internal Revenue Service. General Instructions for Forms W-2 and W-3 This amount won’t appear in Boxes 1, 3, or 5. If you didn’t contribute to the plan, the sick pay would be taxable and would show up in Box 1 instead.

Code K — Excise Tax on Golden Parachute Payments

Code K reports the 20% excise tax on excess parachute payments, the large severance packages sometimes triggered by mergers or acquisitions.13Office of the Law Revision Counsel. 26 USC 4999 – Golden Parachute Payments It applies almost exclusively to corporate officers and highly compensated employees receiving change-in-control payments over three times their base salary.

Code II — Medicaid Waiver Payments

Code II reports Medicaid waiver payments that are excludable from income. These go to home caregivers who provide services under a state Medicaid waiver program and live with the person they care for.5Internal Revenue Service. General Instructions for Forms W-2 and W-3 The amount is excluded from Box 1 wages.

New Codes for 2026

The 2026 W-2 instructions added three codes you may see for the first time on forms issued in early 2027:

  • Code TA — Employer contributions to a Trump account under Section 128, a new savings account type. Box 12 will report contributions to your account or a dependent’s account.5Internal Revenue Service. General Instructions for Forms W-2 and W-3
  • Code TP — Total cash tips you reported to your employer during the year.
  • Code TT — Total qualified overtime compensation.

Because these codes are new, not every payroll system may implement them right away. If your W-2 is missing one you expected, contact your employer’s payroll department.

If a Code or Amount Looks Wrong

Payroll errors in Box 12 happen often enough that the IRS keeps a page dedicated to mistakes with retirement plan codes.2Internal Revenue Service. Common Errors on Form W-2 Codes for Retirement Plans If a code doesn’t match your benefits, or the dollar amount looks off, start with your payroll or HR department. They can issue a corrected W-2 (Form W-2c) if there’s an error. Don’t file with numbers you know are wrong: correcting a W-2 before filing is much simpler than amending a return afterward. Before assuming an error, check whether catch-up contributions or employer matching account for a figure that looks too high.