W-2 Box 12 codes, A to II: what each one means on your 1040
Every W-2 Box 12 code from the official 2026 IRS instructions — D, DD, W, the new TP and TT for tips and overtime — and which ones change your tax return.
Box 12 is the part of the W-2 that looks the most like a secret code, and for good reason: it is a two-letter (sometimes one-letter) shorthand that condenses dozens of distinct payroll situations into a single line. Most of what lands there has already been handled by your employer — added to Box 1, excluded from it, or flagged as simply not taxable — before you ever see the form. The confusion is not about the math. It is about not knowing, letter by letter, which of those three buckets a given code falls into.
The short answer. The IRS General Instructions for Forms W-2 and W-3 (2026 edition) define every Box 12 code from A through II, plus three brand-new codes — TA, TP, and TT — that appear on a W-2 for the first time this filing season. The majority of codes are informational: the dollars are either already folded into Box 1 wages, already excluded from them, or explicitly marked as not taxable, so there is nothing further to do with the number itself. A smaller set changes your return directly, either by adding to your income, triggering an additional tax, or pointing you toward a specific form. The table below sorts every code into one of those two groups.
The complete list of Box 12 codes
The “changes your 1040?” column means: does this code require you to do something beyond letting your employer’s Box 1 figure carry through as-is? A “No” does not mean the code is meaningless — it means the dollar amount is already accounted for, one way or another, before the number reaches your return.
| Code | What it reports | Changes your 1040? |
|---|---|---|
| A | Uncollected social security or RRTA tax on tips | No — informational |
| B | Uncollected Medicare tax on tips | No — informational |
| C | Taxable cost of group-term life insurance over $50,000 | Yes — already in Box 1 |
| D | Elective deferrals under a section 401(k) plan (and certain SIMPLE 401(k) arrangements) | No — already excluded from Box 1 |
| E | Elective deferrals under a section 403(b) salary reduction agreement | No — already excluded from Box 1 |
| F | Elective deferrals under a section 408(k)(6) salary reduction SEP | No — already excluded from Box 1 |
| G | Elective deferrals and employer contributions to a section 457(b) plan | No — already excluded from Box 1 |
| H | Elective deferrals under a section 501(c)(18)(D) tax-exempt plan | Yes — included in Box 1, but deducted on Form 1040 |
| J | Nontaxable sick pay | No — informational |
| K | 20% excise tax on excess golden parachute payments | Yes — flags an excise tax |
| L | Substantiated employee business expense reimbursements | No — informational |
| M | Uncollected social security/RRTA tax on group-term life over $50,000 (former employees) | No — informational |
| N | Uncollected Medicare tax on group-term life over $50,000 (former employees) | No — informational |
| P | Excludable moving expense reimbursements (Armed Forces / intelligence community) | No — informational |
| Q | Nontaxable combat pay | No — informational |
| R | Employer contributions to an Archer MSA | No — informational |
| S | Salary reduction contributions under a section 408(p) SIMPLE plan | No — already excluded from Box 1 |
| T | Adoption benefits | Yes — amounts above the $17,670 exclusion are reportable |
| V | Income from the exercise of nonstatutory stock option(s) | Yes — already in Box 1 |
| W | Employer contributions to a health savings account (HSA) | No — informational |
| Y | Deferrals under a section 409A nonqualified deferred comp plan | No — informational |
| Z | Income under a 409A plan that fails to satisfy the section 409A requirements | Yes — in Box 1, plus an additional tax on your 1040 |
| AA | Designated Roth contributions under a section 401(k) plan | No — informational |
| BB | Designated Roth contributions under a section 403(b) plan | No — informational |
| DD | Cost of employer-sponsored health coverage | No — not taxable |
| EE | Designated Roth contributions under a governmental section 457(b) plan | No — informational |
| FF | Permitted benefits under a qualified small employer HRA (QSEHRA) | No — informational |
| GG | Income from qualified equity grants under section 83(i) | Yes — includible in gross income |
| HH | Aggregate deferrals under section 83(i) elections, as of year-end | No — informational (running total) |
| II | Medicaid waiver payments excluded from gross income (Notice 2014-7) | No — excluded from income |
| TA | Employer contributions to a Trump account (section 128 program) | No — excluded from gross income |
| TP | Total cash tips reported to the employer | Yes — subject to withholding and payroll tax |
| TT | Total qualified overtime compensation | Yes — subject to withholding and payroll tax |
Code D — the 401(k) deferral that is already out of Box 1
Code D shows your elective deferrals into a section 401(k) plan, including deferrals under a SIMPLE retirement account that is part of a 401(k) arrangement. The instructions describe the amount as “only the part of the employee’s salary (or other compensation) that they did not receive because of the deferrals” — in other words, that money never became taxable wages in the first place, so it is not sitting inside your Box 1 total waiting to be subtracted. Treat it as a receipt, not a deduction. If you are working out your AGI from your W-2, do not subtract the code D figure a second time; Box 1 already reflects the deferral, and double-counting it understates your income. For the dollar limits that cap how much can carry a D code in the first place, see retirement contribution limits.
Code DD — the health coverage line that alarms people for no reason
Code DD is the single line most likely to make someone open a return in a panic, because the dollar figure next to it is often larger than any other number on the form — sometimes larger than a paycheck’s worth of wages. It has nothing to do with tax owed. The instructions state plainly that this code reports “the cost of employer-sponsored health coverage” and that “the amount reported with code DD is not taxable.” It exists for transparency, not for taxation, and it does not flow anywhere on your 1040.
Code W — HSA contributions, and where they actually get used
Code W covers employer contributions to a health savings account, including amounts you elected to contribute through a section 125 cafeteria plan. Like the 401(k) deferral codes, this money is not itself taxed. Where it matters is reconciliation: every dollar coded W has to be accounted for against your annual HSA contribution limit, and that reconciliation happens on Form 8889, line by line — not by writing the code W figure anywhere on your 1040 directly. For the limits that cap how much can land under a W code before you owe an excise tax on the excess, see HSA contribution limits.
Code C — group-term life insurance that is already in your wages
Code C shows the taxable cost of employer-provided group-term life insurance coverage over $50,000. Unlike the deferral codes, this one is explicitly the opposite: the instructions direct employers to “also include this amount in boxes 1, 3 (up to the social security wage base), and 5.” The code C figure is not an addition you need to make — it already sits inside the wage totals you are copying onto your return. It is disclosed separately in Box 12 purely so you can see where part of your Box 1 total came from.
Code V — stock option income, and the cost-basis trap it leaves behind
Code V reports the income from exercising a nonstatutory stock option, and like code C, it is already included in boxes 1, 3, and 5. The complication is not the W-2 itself — it is what happens next, on your broker’s 1099-B, where the reported cost basis often leaves the code V amount out entirely, overstating your capital gain and taxing the same dollars twice unless you correct it. That correction has enough moving parts to deserve its own walkthrough: see W-2 Box 12 code V and the cost-basis adjustment on Form 8949.
TA, TP, and TT — three codes appearing for the first time this season
For most filers, TA, TP, and TT are the only genuinely new part of Box 12 this year. None of them existed on a W-2 before, and they trace directly to a single law: the One Big Beautiful Bill Act.
Code TA reports employer contributions under a section 128 Trump account contribution program, paid into a Trump account belonging to an employee or a dependent of an employee. Per the instructions, beginning July 4, 2026, employers may contribute up to $2,500 a year, counting toward the $5,000 overall contribution limit for the account, and that employer contribution “will be excluded from the gross income of the employee” when paid under a qualifying program.
Code TP reports the total amount of cash tips reported to the employer. The instructions are explicit that tips remain “generally subject to federal income tax withholding and both the employer share and employee share of social security tax and Medicare tax” once they hit $20 or more in a month. A code TP entry also triggers a second requirement: the employer must list an occupation code in Box 14b, the new Treasury Tipped Occupation Code box, describing the job in which the tips were earned.
Code TT reports the total amount of qualified overtime compensation. The instructions define qualified overtime narrowly — it is compensation paid under section 7 of the Fair Labor Standards Act that exceeds an employee’s regular pay rate, and only the “half” portion of “time-and-a-half” pay is what gets coded TT, not the whole overtime paycheck. Like tips, qualified overtime “is still generally subject to federal income tax withholding and both the employer share and employee share of social security tax and Medicare tax.” Both TP and TT show up as ordinary withheld, taxed compensation on the W-2 itself; whatever special treatment the tips-and-overtime provisions of the One Big Beautiful Bill Act give these amounts is worked out later, on the return, not inside Box 12.
The practical takeaway
Before assuming a Box 12 code changes what you owe, check which bucket it falls into. If the code is already folded into Box 1 — C, V, H, TP, TT — your tax software has already counted it once, correctly, and there is nothing to add. If it is excluded or marked nontaxable outright — D, DD, W, and most of the letter codes in between — there is nothing to subtract either, and doing so only creates an error the IRS will eventually flag. The codes actually worth double-checking are the small handful that require an active step: K’s excise tax, T’s adoption exclusion ceiling, Z’s additional 409A tax, and GG’s includible equity-grant income. Everything else on the list is there so you can see your own payroll clearly, not so you can do more arithmetic.
Sources
- IRS General Instructions for Forms W-2 and W-3 (2026 edition), Box 12—Codes (https://www.irs.gov/pub/irs-pdf/iw2w3.pdf)
Quick answers
What does code DD in W-2 Box 12 mean?
Code DD reports the cost of employer-sponsored health coverage. The IRS instructions state this directly — the amount reported with code DD is not taxable. It is purely informational, so it does not add anything to your taxable wages and does not change what you owe.
What are the new W-2 Box 12 codes TP and TT?
Code TP reports the total cash tips you reported to your employer, and code TT reports qualified overtime compensation, specifically only the extra half of time-and-a-half pay under the Fair Labor Standards Act. Both are new on the 2026 forms. Neither is exempt from tax — the instructions say tips and overtime reported this way are still generally subject to federal income tax withholding and to both the employer and employee share of social security and Medicare tax.
Does Box 12 code D reduce my taxable income?
Code D does not do anything extra on your return, because it is already reflected in a lower Box 1 figure. The instructions describe the code D amount as the part of your salary you did not receive because of the 401(k) deferral, meaning that money was diverted before it ever became taxable wages. It is not a separate deduction to claim, and subtracting it again from your Adjusted Gross Income would double count it.
Do I have to report every Box 12 code on my tax return?
No. Most Box 12 codes are informational, because the IRS instructions already route the relevant dollars through boxes 1, 3, and 5, or state directly that the amount is not taxable, as with code DD. A smaller group changes your return on its own — code Z income is included in Box 1 and is subject to an additional tax reported on your Form 1040, for example, and code K reports a 20 percent excise tax. Tax software generally handles each code correctly once you type in the letter and the amount, but knowing which codes are informational saves you from second-guessing a refund that has not actually moved.
Educational content only. finbarrow is an independent editorial publication, not a licensed financial advisor, broker, tax preparer, or attorney. Verify rates and terms with the issuer or relevant regulator. See disclaimers and funding disclosures.