W-2 box 12 code TT: how to calculate qualified overtime for 2026
Updated November 12, 2026. A plain-language walkthrough with worked examples. Not tax advice.
Starting with 2026 Forms W-2, employers must report qualified overtime compensation in box 12 with code TT. For 2025 the IRS allowed approximations and other reporting methods; for 2026 the amount is mandatory and has to be computed. Employees use it to claim the federal "no tax on overtime" deduction, which runs for tax years 2025 through 2028.
Why code TT won't tie to your payroll register
The register shows the whole overtime payment. Code TT keeps only the FLSA-required half-time premium, figured workweek by workweek. These are the usual differences:
| Situation | Overtime paid | Code TT |
|---|---|---|
| $20/h, 5 h at time-and-a-half | $150.00 | $50.00 |
| $20/h, 10 h at double time | $400.00 | $100.00 |
| Four 10-hour days (daily overtime, 40 weekly hours) | $240.00 | $0.00 |
| 38 h worked + 8 h holiday, payroll paid 6 h OT | $180.00 | $0.00 |
| Salaried nonexempt, $600 for 40 h, worked 44 h | $90.00 | $30.00 |
| Same salary, fluctuating workweek method | $27.28 | $27.28 |
Step 1: work in workweeks, not pay periods
FLSA overtime is owed per fixed 168-hour workweek. A semi-monthly or biweekly pay period can hide overtime (45 hours one week, 35 the next) or create overtime the FLSA never required. Rebuild hours worked by workweek from timekeeping records. Paid time off, holidays not worked and sick time are not hours worked.
Step 2: compute the regular rate
The regular rate is all includable pay for the workweek divided by hours worked. Includable pay covers straight-time wages for every hour (including the straight-time part of overtime hours), shift differentials, nondiscretionary bonuses and commissions, and the tip credit for tipped employees. Discretionary bonuses, expense reimbursements and pay for hours not worked are excluded.
Example: 45 hours at $20 plus a $50 production bonus. Includable pay is $900 + $50 = $950. Regular rate: $950 ÷ 45 = $21.11.
Step 3: take half the regular rate for hours over 40
Required premium = 0.5 × regular rate × hours over 40. In the example: 0.5 × $21.11 × 5 = $52.78.
If your payroll paid overtime at 1.5 × the $20 base rate, it paid $50.00 of premium, not $52.78. Only the $50.00 actually paid is reportable. The $2.78 shortfall is an FLSA back-pay issue, and it becomes code TT in the year you pay it.
Step 4: add bonus true-ups in the year paid
A quarterly or annual nondiscretionary bonus raises the regular rate of every workweek it covers. Allocate it across those weeks (equally per week, or per hour worked), compute the extra half-time premium for weeks with overtime, and report what you pay in the year you pay it. A December workweek paid in January belongs on the next year's W-2.
Special cases
- Two rates in one week: use the weighted average of all straight-time pay over all hours, unless a rate-in-effect agreement applies.
- Tipped employees: the regular rate includes the tip credit and can't be lower than the applicable minimum wage.
- Salaried nonexempt, fixed salary for 40 h: regular rate = salary ÷ 40, and code TT is half of it for each hour over 40.
- Fluctuating workweek: regular rate = salary ÷ hours actually worked; the half-time payment is the whole premium.
- Public-sector comp time: code TT arises when comp time is paid out, not when it is earned.
The CSV columns Box12TT uses
| Column | What to put there |
|---|---|
| employee_id | Required. Any stable ID. |
| employee_name | Optional, shown in results. |
| week_ending | Required. Last day of the FLSA workweek (YYYY-MM-DD or MM/DD/YYYY). |
| pay_date | Check date; decides the tax year. Defaults to week_ending. |
| pay_type | hourly (default), salary_fixed or salary_fww. |
| hours_worked | Required. Hours actually worked in the workweek, excluding PTO and holidays not worked. |
| straight_time_pay | Hourly: straight-time wages for non-overtime hours. Salaried: the weekly salary. |
| overtime_pay | All time-and-a-half overtime earnings for the week (the full line, not just the premium). For salary_fww, the half-time pay. |
| doubletime_pay | Double-time earnings, if any. |
| overtime_hours | Hours paid as overtime. Needed for tipped employees. |
| other_includable_pay | Shift differentials, nondiscretionary bonuses and commissions earned in that week. |
| excluded_pay | PTO, holiday, discretionary bonus, reimbursements. Kept out of the regular rate. |
| tip_credit | Total tip credit taken that week. |
| min_wage | Applicable minimum wage floor for the regular rate (tipped employees). |
| salary_hours | Hours a fixed salary is meant to cover (default 40). |
Several rows for the same employee and workweek are added together, so a one-row-per-pay-item export works too. Bonus true-ups go in a separate file with the columns employee_id, bonus_amount, pay_date, period_start, period_end, allocation, ot_trueup_paid.
Sources
- IRS, General Instructions for Forms W-2 and W-3 (2026), box 12 code TT.
- IRS fact sheet FS-2026-13 on reporting qualified overtime compensation (updated August 2026), and Notice 2025-62 (2025 transition relief).
- 29 CFR Part 778, overtime compensation and the regular rate.
- "When Box 12, Code TT Will Not Tie to the Payroll Register," CPA Practice Advisor, October 13, 2026.