Check what a tax code means
Every UK tax code explained, with exact tax-free pay for each pay schedule.
The 0T tax code gives an employee no tax-free Personal Allowance at all, against the £12,570 allowance that most people receive in the 2026-27 tax year [1] [5]. Every pound of pay is taxed, starting at 20% and moving to 40% and 45% as earnings rise through the normal bands [4].
HMRC gives 0T two distinct meanings. Either the Personal Allowance has been used up, or the employee has started a new job and the employer does not hold the information it needs to work out a proper code [1]. The first is a deliberate coding decision. The second is a temporary holding position that should disappear within a few pay periods.
For payroll teams, 0T is one of the codes that generates the most employee queries. A new starter sees a large deduction on a first payslip, a high earner sees the allowance vanish mid-year, or a pensioner finds that a second source of income is taxed from the first pound. Each case has a different cause and a different fix.
This article explains what 0T means, the situations in which HMRC or an employer applies it, how the calculation works on the cumulative and Week 1 or Month 1 bases, how it compares with BR and the emergency code, the Scottish and Welsh variants, worked figures, and the steps an employer should take when a 0T code lands on a payroll record.
Key takeaways
- 0T means no Personal Allowance: all pay from that job or pension is taxed, using the normal 20%, 40% and 45% bands [1] [4].
- An employer must use 0T on a Week 1 or Month 1 basis when a new starter has no P45 and does not tick any statement on the starter checklist [3].
- HMRC issues 0T deliberately when adjusted net income reaches £125,140, the point at which the Personal Allowance is fully withdrawn [5].
- Unlike BR, 0T can deduct tax at the higher and additional rates once pay passes the relevant thresholds [4].
- Scottish and Welsh equivalents are S0T and C0T [2].
- 0T affects income tax only. National Insurance and student loan deductions follow their own thresholds [15].
What the 0T tax code means
A standard PAYE code tells payroll how much tax-free pay to give the employee in each period. The number in the code is the allowance divided by ten, so 1257L represents £12,570 of tax-free income spread across the year [1] [14]. A code of 0T sets that number to zero, so there is no tax-free pay in any period.
The T suffix normally signals that the code includes other calculations, or that HMRC wants to review it individually rather than through a bulk uplift [1]. In practice, the combination "0T" is read as a single instruction: tax everything, through the bands.
The two situations HMRC describes
GOV.UK lists two reasons for a 0T code [1]. They look identical on a payslip but have different consequences, so payroll teams should know which one applies.
| Situation | Who sets the code | Typical basis | Expected duration |
|---|---|---|---|
| Personal Allowance used up (high income, or allowance used elsewhere) | HMRC, through a coding notice | Usually cumulative | For as long as the circumstances last, often the whole tax year |
| New starter with no P45 and no starter checklist statement | The employer, under the starter procedure | Week 1 or Month 1 | Until HMRC issues a replacement code |
The employer's guidance on GOV.UK confirms both uses, describing 0T as the code applied when an employee has not provided a P45 or enough details, or when the allowance has been used up [2]. It also confirms the Welsh (C0T) and Scottish (S0T) equivalents [2].
What 0T does not change
0T has no effect on National Insurance. Employee contributions remain at 8% between the Primary Threshold of £12,570 and the Upper Earnings Limit, and 2% above it, calculated period by period for each job [15] [5]. Employer NI at 15% above the Secondary Threshold is also unaffected.
Student loan and postgraduate loan deductions are equally independent of the tax code. The starter checklist captures student loan details separately, and the employer must start those deductions where a late P45 or checklist shows them [3] [9].
When an employer must apply 0T to a new starter
Most 0T codes seen on payroll come from the new starter procedure, not from HMRC. When an employee joins without a P45, the employer relies on the starter checklist to choose a code [9] [10]. Readers who want the full onboarding sequence will find it in the guide to the new starter checklist.
How the starter checklist statements map to codes
The table below sets out the code an employer uses for each answer on the checklist when no usable P45 is available [3] [10].
| Checklist answer | Meaning | Code to operate | Basis |
|---|---|---|---|
| Statement A | First job since 6 April, no taxable benefits or pension | 1257L | Cumulative |
| Statement B | Only job now, but had another job or taxable benefits since 6 April | 1257L | Week 1 / Month 1 |
| Statement C | Has another job or receives a pension | BR | Cumulative |
| No statement ticked | No information provided | 0T | Week 1 / Month 1 |
The logic is protective. If an employer knows nothing about the employee's other income, giving a full allowance risks a large underpayment at year end, so the procedure defaults to no allowance at all [3] [4]. Low-income advisers note that for a basic rate taxpayer, 0T produces the same result as BR [3].
When a P45 carries a 0T code
A P45 from a previous employer can itself show 0T. Where the employee left in the current tax year and started on or after 6 April, the new employer uses the code on the P45, and this includes BR, 0T and D-prefix codes [3]. The P45 is the best available evidence of what HMRC last authorised, so the employer copies it rather than substituting a starter checklist code.
If the employee hands over the P45 late, the rule is to use any code HMRC has already sent. Where HMRC has not sent one, the late P45 determines the code, and a late starter checklist means 0T continues until HMRC issues a new code [3]. More detail on how P45 codes carry across sits in the guide to using a P45 with a new employer.
0T compared with the emergency code
0T on a Week 1 or Month 1 basis is often called an emergency code, but it is not the emergency code in the strict sense. HMRC's emergency code for 2026-27 is 1257L, and the P9X instructions confirm "the emergency code is 1257L for all employees" [12]. GOV.UK lists the emergency markers as W1, M1, X and NONCUM [1].
Advisers acknowledge that BR, 0T and Week 1 or Month 1 codes are sometimes all referred to loosely as emergency codes [4]. The distinction matters in practice: 1257L W1 gives a period's share of the allowance, while 0T W1 gives none. The full picture of temporary codes is covered in the article on emergency tax codes.
When HMRC issues 0T deliberately
Outside the starter procedure, 0T is HMRC's way of saying that no allowance is left for this source of income. It arrives through a coding notice, which employers view as a P6 or P9 in PAYE Online or receive through their payroll software [13] [2].
High earners and the £100,000 taper
The Personal Allowance falls by £1 for every £2 of adjusted net income above £100,000, and reaches zero once income hits £125,140 [5]. The table shows how the code steps down as estimated income rises.
| Adjusted net income | Personal Allowance | Indicative code |
|---|---|---|
| £100,000 or less | £12,570 | 1257L |
| £105,000 | £10,070 | 1007L |
| £110,000 | £7,570 | 757L |
| £120,000 | £2,570 | 257L |
| £125,140 or more | £0 | 0T |
HMRC bases these codes on its estimate of the employee's income for the year, so a bonus, a pay rise or a benefit in kind can tip the code to 0T part-way through the year [11] [5]. Where the change creates an underpayment for the year to date, HMRC's in-year adjustment process can collect it over the remaining months [11].
Allowance used against other income
The allowance can also be exhausted by income HMRC collects through the code. The State Pension, for example, is paid gross, so the tax on it is usually collected through the PAYE code on another job or pension [17]. Where taxable State Pension, benefits in kind or untaxed income approach the size of the allowance, the code falls towards 0T, and beyond that point HMRC moves to a K code [1] [2].
Pension providers meet 0T and other temporary codes when an individual first draws on a pension flexibly. Advisers note that an emergency code might apply when someone starts drawing on a pension in this way [4] [17].
How payroll calculates tax on 0T
Payroll software applies 0T exactly like any other suffix code, with zero free pay. The engine still runs the full bands, which is the key difference from flat-rate codes [4].
The bands that apply without an allowance
With no allowance, the bands start from the first pound. In England, Wales and Northern Ireland, the basic rate band of £37,700 applies to the first £37,700 of pay, the higher rate to income from £37,700 to £125,140, and the additional rate above that [5] [1].
| Annual pay on 0T (England, Wales, NI) | Rate | Monthly equivalent |
|---|---|---|
| £0 to £37,700 | 20% | £0 to about £3,141.67 |
| £37,700 to £125,140 | 40% | About £3,141.67 to £10,428.33 |
| Above £125,140 | 45% | Above about £10,428.33 |
The higher rate on 0T therefore starts at £37,700 of pay from that employment, not at the familiar £50,270 [5]. That is why 0T can feel punitive for a well-paid new starter.
Cumulative versus Week 1 or Month 1
The basis printed with the code decides whether payroll looks at the year to date. On the cumulative basis, tax is calculated on total pay since 6 April and can produce refunds if a later code is more generous. On a Week 1 or Month 1 basis, each period stands alone, so no refund can flow through until a cumulative code arrives [4] [3].
| Feature | 0T cumulative | 0T Week 1 / Month 1 |
|---|---|---|
| Typical source | HMRC coding notice | Starter checklist with no statement |
| Looks at pay since 6 April | Yes | No |
| Refunds through payroll after a new cumulative code | Yes | Only once a cumulative code replaces it |
| Bands applied | Annual bands, to date | One period's share of the bands |
Worked example: a new starter on Month 1
A new employee in England earns £2,500 a month and leaves the starter checklist blank. The employer operates 0T Month 1 [3]. All £2,500 falls within the monthly basic rate band, so tax is £500.
Had the employee ticked Statement A, payroll would have operated 1257L cumulative. In month 1 the free pay is £1,048.25, leaving £1,451 of taxable pay after rounding down, and tax of £290.20 [1] [5]. The 0T payslip shows £209.80 more tax, roughly one month's share of the allowance at 20%.
| Code | Taxable pay in month 1 | Tax deducted |
|---|---|---|
| 1257L cumulative | £1,451 | £290.20 |
| BR | £2,500 | £500.00 |
| 0T Month 1 | £2,500 | £500.00 |
At this salary BR and 0T produce the same figure, which matches the advice that 0T gives the same result as BR for a basic rate taxpayer [3].
Worked example: a higher earner
The picture changes above the basic rate band. On £6,000 a month on 0T Month 1, about £3,141.67 is taxed at 20% (around £628.33) and the remaining £2,858.33 or so at 40% (around £1,143.33), giving roughly £1,772 [5] [4].
Under 1257L the same month would cost roughly £1,352, and under BR a flat £1,200 [1]. The gap between 0T and BR at this level, around £572 a month, is why advisers stress that "code BR is different from code 0T" [4]. Figures here are approximate, because payroll rounds band limits and taxable pay according to HMRC's tax table routines.
The 50% overriding limit
Whatever the code, the tax deducted in any pay period cannot exceed half of the employee's pre-tax pay or pension [2]. With 0T the limit is rarely reached, since the top rate is 45%, but it becomes relevant when HMRC replaces 0T with a K code or an in-year adjustment, where any balance beyond the cap is carried into the following year [11] [2].
0T in Scotland and Wales
Residence decides which rates apply, and the prefix carries that instruction to payroll. S0T applies Scottish rates and C0T applies Welsh rates [2] [1].
S0T and the Scottish bands
Scotland has six income tax bands, so an S0T code runs pay through all of them from the first pound [1] [5]. Using the band widths in HMRC's tax table specification for 2026-27, the cumulative thresholds for S0T are as follows.
| Annual pay on S0T | Scottish rate |
|---|---|
| £0 to £3,967 | 19% (starter) |
| £3,967 to £16,956 | 20% (basic) |
| £16,956 to £31,092 | 21% (intermediate) |
| £31,092 to £62,430 | 42% (higher) |
| £62,430 to £125,140 | 45% (advanced) |
| Above £125,140 | 48% (top) |
A Scottish new starter on S0T Month 1 earning £3,000 a month reaches the 42% band sooner than an English colleague on 0T, so the first payslip can look markedly different. More on how the regional bands compare sits in the guide to UK income tax bands.
C0T and Welsh rates
Welsh rates for 2026-27 mirror those in England and Northern Ireland, at 20%, 40% and 45% [5]. A C0T code therefore produces the same deduction as 0T, but the C prefix must still be held and reported exactly as HMRC notified it, because it identifies the employee as a Welsh taxpayer [2] [12].
What employers should do when 0T appears
The employer's duty is to operate the code HMRC issues, or the code the starter procedure requires, and nothing else. Payroll cannot substitute a "fairer" code on its own initiative, even when the employee is unhappy with the deduction [2] [6].
Checks on the payroll record
A short set of checks avoids most 0T errors:
- Confirm the source: an HMRC notice (P6 or P9) or the starter procedure [13] [3].
- Confirm the basis. A starter-procedure 0T must be Week 1 or Month 1; an HMRC 0T is usually cumulative unless the notice says otherwise.
- Confirm the prefix (S or C) matches the employee's residence as notified by HMRC [2].
- When a new code arrives, apply it from the next payday and discard any older notice for that employee [12].
- At the start of a new tax year, do not carry Week 1 or Month 1 markings forward [12].
HMRC-recognised UK payroll software for SMEs applies these rules automatically, imports coding notices and switches the basis when a cumulative code replaces 0T.
Helping the employee get the code corrected
The fastest route for the employee is the Check your Income Tax service or the HMRC app, which shows the current code and lets the employee update employer and income details [7] [14]. HMRC advises someone who has just started a new job to wait 35 days before contacting it [6].
Once HMRC has the information, it tells the employee and the employer the new code within 15 working days. The change should appear on the next or following payslip for monthly pay, or by the third payslip for weekly pay [6]. If it does not, the employee should check that the employer has received the notice [6].
Overpayments after the code is fixed
When a cumulative code replaces 0T Week 1 or Month 1, the next payslip usually returns the excess tax through payroll, because the calculation looks back to 6 April [4]. If the employment ends before that happens, HMRC reconciles the year and sends a P800 tax calculation between June and March of the following tax year [8].
The same reconciliation catches underpayments where a deliberate 0T arrived late in the year. Amounts HMRC cannot collect through the code, including debts above £3,000, are handled through a Simple Assessment letter instead [8] [11].
Bureaux and platforms handling volume
For accountants running dozens of client schemes, starter-procedure 0T codes tend to build up wherever hiring is frequent and paperwork arrives late. A multi-client payroll dashboard that flags every starter-procedure 0T still in force after three or four periods makes it easy to chase missing checklists [3] [13].
Software platforms that embed payroll face the same logic at scale. An HMRC-recognised payroll API needs to accept S0T and C0T prefixes, store the basis flag separately from the code, and recalculate cumulatively the moment HMRC's notice changes the basis [2] [12].
Check a tax code in seconds
Before querying a payslip, an employer or employee can decode any code, including 0T, S0T and C0T, with the Moonworkers tax code checker, which applies the 2026-27 allowance and bands.
On your payslip, P45 or P60. Suffixes W1, M1 or X welcome.
What you'll get
Enter any UK tax code to see:
- · what each letter and number means
- · which nation's rates apply (S and C prefixes)
- · cumulative vs emergency W1/M1/X basis
- · the exact tax-free pay for every pay schedule, to the penny
Try 1257L, a K code, or an emergency W1 code.
Payroll that applies every tax code correctly
Moonworkers runs the full HMRC exact percentage method on every payslip, including K codes, emergency codes and in-year code changes, and files RTI automatically.
Conclusion
0T is two codes in one. As a starter-procedure default, it is a temporary safeguard that protects employees from a year-end bill while HMRC catches up, and it normally clears within weeks once a P45, a completed checklist or a coding notice arrives. As an HMRC coding decision, it is an accurate reflection of income that has already absorbed the whole Personal Allowance, most often for earners above £125,140.
The more joined-up HMRC's real-time data becomes, the less often the first type should appear, and the faster the second will follow pay changes during the year. For employers, the discipline does not change: record the starter checklist properly, operate the exact code and basis notified, and let cumulative recalculation do the reconciling. Readers who want the full picture of how allowances translate into codes can continue with the guide to tax code 1257L.
Frequently asked questions
Why is a new job using the 0T tax code?
The employer has not received a P45 or a completed starter checklist statement, so it does not know whether the employee has another job or pension [3]. HMRC's procedure tells the employer to operate 0T on a Week 1 or Month 1 basis until better information arrives [1]. Completing the starter checklist or updating details with HMRC usually replaces it within a few pay periods.
Is 0T the same as BR?
No. Both give no Personal Allowance, but BR taxes all pay at 20%, while 0T runs pay through the full bands, so 40% and 45% apply once pay passes the relevant thresholds [4]. For someone whose pay stays within the basic rate band, the two codes produce the same deduction [3].
How long does a 0T tax code last?
A starter-procedure 0T lasts until HMRC issues a new code, which it notifies to the employee and employer within 15 working days of having the right information [6]. A 0T issued because income exceeds £125,140 lasts for as long as HMRC estimates income at that level, often the whole tax year [5].
Is overpaid tax on 0T refunded automatically?
Usually yes. When a cumulative code replaces 0T, payroll recalculates tax from 6 April and returns the excess on the next payslip [4]. If that does not happen before the job ends or the tax year closes, HMRC sends a P800 tax calculation between June and March of the following year [8].



