W-2 Box 12 Codes: What Every Letter Means and Which Ones Affect Your Taxes
W-2 Box 12 reports specific pay and benefit items with a letter code and a dollar amount. The IRS lists 29 codes from A through HH, covering retirement deferrals, health savings account money, the cost of employer health coverage and several tax items. This guide decodes every code in plain English, shows how common codes such as D, W and DD change taxable wages, walks through a full numeric example and explains how to ask your employer to fix a wrong amount.
- The IRS lists 29 Box 12 codes, from A through HH, and each one pairs a letter with a dollar amount (IRS General Instructions for Forms W-2 and W-3, 2026).
- A paper Form W-2 can show up to 4 Box 12 entries, and extra coded items go on an additional W-2 (IRS General Instructions for Forms W-2 and W-3, 2026).
- Code DD combines the employer and employee shares of health coverage into 1 figure, and reporting it does not make the coverage taxable (IRS, Form W-2 Reporting of Employer-Sponsored Health Coverage, accessed 2026).
- The 2026 limit for code D 401(k) deferrals is $24,500, plus an $8,000 catch-up at age 50 and older (IRS Notice 2025-67, 2025).
- The 2026 HSA limit behind code W is $4,400 for self-only coverage and $8,750 for family coverage (IRS Revenue Procedure 2025-19, 2025).
Box 12 on a W-2 holds letters and dollar amounts that most employees have never seen before, and the first reaction is usually worry. The short answer is that Box 12 is a reporting box, and most of what appears there is either money you chose to set aside or a number the IRS wants shown for information only.
Reviewed by a licensed benefits professional. Last reviewed October 7, 2026.
What are the box 12 codes on a W-2?
The Box 12 codes are 29 letter codes from A through HH that the IRS uses to report specific items, such as retirement deferrals, health savings account contributions and the cost of employer health coverage (IRS General Instructions for Forms W-2 and W-3, 2026). Your employer picks the codes that apply to you, so most W-2s show only 1 to 3 of them.
Each entry has a code in the left box and an amount in the right box. A paper Form W-2 holds up to 4 entries, labeled 12a through 12d, and an employer with more than 4 coded items issues an additional W-2 (IRS General Instructions for Forms W-2 and W-3, 2026). That is why some employees get 2 W-2s from the same employer.
The tables below group the codes by what they do. Descriptions follow the IRS wording, shortened for readability.
| Code | What it reports |
|---|---|
| D | Elective deferrals to a 401(k) plan |
| E | Elective deferrals to a 403(b) plan |
| F | Elective deferrals to a 408(k)(6) SEP |
| G | Elective deferrals and contributions to a 457(b) plan |
| H | Elective deferrals to a 501(c)(18) plan |
| S | Employee salary reduction contributions to a SIMPLE plan |
| AA | Designated Roth contributions to a 401(k) plan |
| BB | Designated Roth contributions to a 403(b) plan |
| EE | Designated Roth contributions to a 457(b) plan |
| Code | What it reports |
|---|---|
| C | Taxable cost of group-term life insurance over $50,000 |
| M | Uncollected Social Security or RRTA tax on group-term life insurance cost |
| N | Uncollected Medicare tax on group-term life insurance cost |
| R | Employer contributions to an Archer MSA |
| T | Adoption benefits |
| W | Employer contributions to a health savings account, including amounts you elected through payroll |
| DD | Cost of employer-sponsored health coverage |
| FF | Permitted benefits under a qualified small employer health reimbursement arrangement |
| Code | What it reports |
|---|---|
| A | Uncollected Social Security or RRTA tax on tips |
| B | Uncollected Medicare tax on tips |
| J | Nontaxable sick pay |
| K | 20% excise tax on excess golden parachute payments |
| L | Substantiated employee business expense reimbursements |
| P | Excludable moving expense reimbursements |
| Q | Nontaxable combat pay |
| V | Income from exercise of nonstatutory stock options |
| Y | Deferrals under a section 409A nonqualified deferred compensation plan |
| Z | Income under a section 409A plan that fails the requirements |
| GG | Income from qualified equity grants under section 83(i) |
| HH | Aggregate deferrals under section 83(i) elections |
Most employees see D, W, DD or C. If your code is not in these tables, ask payroll which plan it belongs to.
What is box 12 DD on a W-2?
Box 12 code DD reports the total cost of the health coverage your employer sponsors, and it is for information only. The IRS states that reporting the cost of health coverage on the W-2 does not mean the coverage is taxable (IRS, Form W-2 Reporting of Employer-Sponsored Health Coverage, accessed 2026).
The DD amount includes both the employer share and the employee share of the premium (IRS, Form W-2 Reporting of Employer-Sponsored Health Coverage, accessed 2026). That is why it often looks much larger than the amount taken from your paycheck. Benecor's code DD guide shows how to check the number against your plan.
What is code D in box 12 of a W-2?
Code D reports the money you put into a 401(k) plan from your paycheck during the year. The IRS says 401(k) deferrals are reported as an information item in Box 12 of your W-2, and they are still included as wages subject to Social Security and Medicare tax (IRS Tax Topic 424, accessed 2026).
The 2026 limit on employee 401(k) deferrals is $24,500, and workers age 50 and older can add $8,000 more (IRS Notice 2025-67, 2025). If your code D amount is above your limit, ask payroll to check whether you switched employers during the year. A second employer's plan can push the combined total over the limit.
What does box 12 code W mean on a W-2?
Code W reports money that went into your health savings account through payroll, including the part you elected to contribute before tax through your employer's plan. The IRS limit for 2026 is $4,400 for self-only coverage and $8,750 for family coverage (IRS Revenue Procedure 2025-19, 2025).
Benecor's code W guide explains why your own payroll contributions appear in a code that says employer contributions.
How do box 12 codes change the wages on my W-2?
Some codes lower your Box 1 wages, some lower more than one wage box, and some change nothing. The table below uses a hypothetical employee so you can see each effect with real numbers. Your own numbers will differ.
The employee earns $60,000 and elects three things through payroll. A $6,000 401(k) deferral, a $2,400 health premium paid before tax through a Section 125 cafeteria plan, and $1,200 into an HSA through the same plan.
| Item | Amount | Box 12 code | Lowers Box 1 wages? | Lowers Box 3 and 5 wages? |
|---|---|---|---|---|
| 401(k) deferral | $6,000 | D | Yes | No |
| Section 125 health premium | $2,400 | None (Box 12 DD shows total coverage cost) | Yes | Yes |
| HSA through payroll | $1,200 | W | Yes | Yes |
| Total cost of health coverage, employer plus employee | $9,600 (hypothetical) | DD | No | No |
The Box 1 wages for this employee are $60,000 minus $6,000, minus $2,400, minus $1,200, which equals $50,400. The Box 3 and Box 5 wages are $60,000 minus $2,400 minus $1,200, which equals $56,400, because 401(k) deferrals stay in Social Security and Medicare wages (IRS Tax Topic 424, accessed 2026) while qualified Section 125 benefits are exempt from them (IRS Publication 15-B, 2026). Box 12 would show D $6,000, W $1,200 and DD $9,600.
On $56,400 of Medicare wages, the employee owes 7.65% Social Security and Medicare tax, which is $4,314.60. Without the Section 125 plan and the HSA, the same pay would carry $4,590 of that tax, so the pre-tax setup saves the employee $275.40 in payroll tax before any income tax effect. That is the same trade explained in Benecor's guide to the Box 14 Section 125 category.
Why does my W-2 show more than one Box 12 code?
Your W-2 shows more than one Box 12 code because you take part in more than one plan, such as a 401(k) and an HSA, and the employer must report health coverage cost too. Each plan gets its own line, so 3 codes on a W-2 is common.
If your employer has more than 4 coded items, it can issue an additional W-2, so you may have two forms from the same company (IRS General Instructions for Forms W-2 and W-3, 2026). Add the Box 12 entries across both forms before you file.
Do box 12 codes mean I owe more tax?
No. A Box 12 code is a label, not a tax bill. The tax effect depends on the code, and the wage boxes (Boxes 1, 3 and 5) already reflect it.
Code C is the main exception to watch. It reports the taxable cost of group-term life insurance over $50,000, which means that cost has been added to your wages (IRS General Instructions for Forms W-2 and W-3, 2026). Codes M and N are the Social Security and Medicare tax on that cost when it was not collected, which usually applies to former employees.
What should I do if a box 12 code or amount looks wrong?
Compare the Box 12 amount to your last pay stub of the year, then ask payroll to explain any difference before you file. A wrong amount is fixed with a corrected W-2, called a Form W-2c, not by editing your tax return.
- Find the year-to-date total. Open your final pay stub and look for the matching deduction, such as 401(k), HSA or medical.
- Match the code. Use the tables above to confirm the code belongs to that deduction.
- Check the limit. Compare codes D and W to the 2026 limits listed earlier on this page.
- Write to HR or payroll. Ask for the plan name, the pay periods included and a corrected W-2 if the amount is wrong.
- Keep both copies. File with the corrected form, and keep the original for your records.
Use the email below. Fill in the brackets and send it to your HR contact or payroll team.
If you would rather have a second set of eyes on the numbers, Benecor's team will go through them with you on a free call.
What should employers do to keep Box 12 clean?
Employers keep Box 12 clean by tying every payroll deduction code to a written plan and to the correct W-2 code before the year ends. A mismatch between a payroll code and the plan document is the most common source of employee questions and corrected forms.
Employers who offer a Section 125 cafeteria plan can see how Summit Health Benefits explains the related Box 14 entries in its W-2 Box 14 codes guide. For the full Box 12 and Box 14 picture, start with Benecor's W-2 Box 12 codes reference.
Sources: IRS, General Instructions for Forms W-2 and W-3, Box 12 codes and entry limits (2026); IRS, Form W-2 Reporting of Employer-Sponsored Health Coverage, code DD (accessed 2026); IRS, Tax Topic 424, 401(k) Plans (accessed 2026); IRS Notice 2025-67, 2026 retirement plan limits (2025); IRS Revenue Procedure 2025-19, 2026 HSA limits (2025); IRS Publication 15-B, Employer's Tax Guide to Fringe Benefits (2026); 26 CFR 1.125-4, permitted election changes (eCFR, accessed 2026); Summit Health Benefits, W-2 Box 14 codes explained (2026).
Frequently asked questions
- What are the box 12 codes on a W-2?
- Box 12 codes are 29 letter codes from A through HH that report specific pay and benefit items, such as 401(k) deferrals, HSA contributions and the cost of employer health coverage (IRS General Instructions for Forms W-2 and W-3, 2026). Each code is paired with a dollar amount.
- What is box 12 DD on a W-2?
- Code DD is the total cost of the health coverage your employer sponsors, including both the employer share and your share. It is reported for information only, and the IRS says it does not make the coverage taxable (IRS, Form W-2 Reporting of Employer-Sponsored Health Coverage, accessed 2026).
- What is code D in box 12 of a W-2?
- Code D is the amount you deferred into a 401(k) plan during the year. The 2026 employee deferral limit is $24,500, with an $8,000 catch-up for workers age 50 and older (IRS Notice 2025-67, 2025). The deferral is still included in Social Security and Medicare wages (IRS Tax Topic 424, accessed 2026).
- What is code E on a W-2?
- Code E is an elective deferral to a 403(b) plan, which is the retirement plan used by many schools, hospitals and nonprofit employers (IRS General Instructions for Forms W-2 and W-3, 2026). It is the 403(b) equivalent of code D.
- Why does my W-2 have more than one Box 12 code?
- You have more than one code because you take part in more than one plan, or because the employer reports health coverage cost in code DD. A paper W-2 holds 4 entries, so an employer with more coded items may issue a second W-2 (IRS General Instructions for Forms W-2 and W-3, 2026).
- Do box 12 codes mean I owe more tax?
- No. Box 12 is a reporting box, and the wage boxes already reflect the tax effect. Code C is the main code that adds to your wages, because it reports the taxable cost of group-term life insurance over $50,000 (IRS General Instructions for Forms W-2 and W-3, 2026).
Continue reading
- W-2 Box 12 Code W Explained for Employees — Employee Benefits
W-2 Box 12 code W reports HSA contributions made through payroll, both the employer's share and yours. See what it includes and why it is not taxed.
- W-2 Box 12 Code DD Explained for Employees — Employee Benefits
W-2 Box 12 code DD shows the total cost of your employer health coverage. It is not taxable and does not go on your return. See what it includes.
- What Category Is Section 125 in Box 14 When You File Taxes? — Employee Benefits
A Section 125, S125 or SEC125 entry in Box 14 usually belongs in a general Other category in tax software. See what it means, why most software treats it as informational, and when it actually needs action.
About the author
Muhammad Mudassir — Co-founder & Health Tech Sales Lead
Muhammad Mudassir, who goes by Moe, is a co-founder and health technology operator focused on Section 125 cafeteria plans and zero-cost employer benefits. He has spent years getting employers enrolled in compliant cafeteria plans, onboarding nationwide workforces into the WoW Health and UnifyWell ecosystems, and translating the mechanics of FICA recapture into language that HR, finance, and ownership can act on.