
Contents
Tax code D0 tells your employer or pension provider to tax every pound they pay you at the higher rate — 40% in England, Wales and Northern Ireland — with no Personal Allowance and no basic-rate band applied to that income. It almost always appears on a second job or a second pension, because HMRC believes your main income has already used up your £12,570 Personal Allowance and the whole £37,700 basic-rate band.
That is often right. But if your main income falls, or HMRC's estimate of it was too high in the first place, D0 can overtax you by hundreds of pounds a year — and nothing corrects it automatically until the year ends.
Key points
- D0 = all pay from that source taxed at the higher rate, with no tax-free allowance at all.
- It is used when your other income already covers the Personal Allowance and the full basic-rate band (roughly £50,270 of income in England, Wales and Northern Ireland).
- BR means 20% on everything; D0 means 40%; D1 means 45%. The letters describe a rate, not a personality.
- Scottish codes work differently: SD1 is the 42% higher rate, while SD0 is the 21% intermediate rate.
- You can ask HMRC to split your Personal Allowance and basic-rate band across two jobs instead of loading one job with D0.
What D0 actually means
Most people have a code like 1257L on their main job. The numbers represent tax-free pay — £12,570 spread evenly across the year, so about £1,047.50 a month is untaxed. Codes beginning with D work in a completely different way: there are no numbers, because there is no tax-free pay and no lower rate band attached to that employment. The letter after the D sets the rate.
For England, Wales and Northern Ireland in 2026/27:
| Code | What the payroll does | Typical reason |
|---|---|---|
| BR | Taxes all pay at 20% | Second job; main job uses the Personal Allowance only |
| D0 | Taxes all pay at 40% | Second job or pension; main income already above £50,270 |
| D1 | Taxes all pay at 45% | Main income already above £125,140 |
| 0T | No allowance, but bands applied in order (20%, then 40%, then 45%) | New job with no P45, or Personal Allowance fully used elsewhere |
D codes are also flat and non-cumulative in effect: every payslip is taxed at the same percentage, so there is no gradual catch-up or repayment through the year the way there is with a cumulative code. If the code is wrong in April, it is still wrong in March.
Scotland: SD0 is not the same as D0
Scottish taxpayers have codes prefixed with S, and because Scotland has six bands on non-savings income the letters map to different rates. SBR is the 20% basic rate, SD0 is the 21% intermediate rate, SD1 is the 42% higher rate, SD2 is the 45% advanced rate and SD3 is the 48% top rate. So a Scottish taxpayer whose second job should be taxed at higher rate would expect SD1, not SD0. Seeing a plain D0 on a Scottish payslip is worth querying, because it suggests HMRC does not have you flagged as a Scottish taxpayer.
When D0 is the right code
D0 is correct when your other income already fills the Personal Allowance and the entire basic-rate band, so the first pound of this second income genuinely falls in the higher-rate band.
Example 1 — D0 is right. Alex earns £75,000 from a main job (code 1257L) and £6,000 from evening work with a D0 code.
- Total income: £81,000. Less the £12,570 Personal Allowance = £68,430 taxable.
- The first £37,700 of that is basic rate, which the main job has more than used up.
- So the £6,000 second income sits entirely in the higher-rate band: £6,000 × 40% = £2,400.
D0 collects exactly £2,400. Nothing to reclaim, nothing owed.
Other situations where D0 is usually appropriate:
- A second occupational or private pension where the first pension plus State Pension already exceed £50,270.
- Income over £100,000, where the Personal Allowance tapers away by £1 for every £2 of income and there is simply no allowance left to give anyone.
- Part-time or freelance-style employment alongside a well-paid main role.
When D0 is wrong — and what it costs
HMRC sets the code on a second source using an estimate of your main income. That estimate can be out of date the moment you reduce your hours, change jobs, lose a bonus, or make a large pension contribution that pushes income back below the higher-rate threshold.
Example 2 — D0 on a basic-rate earner. Priya's main job pays £40,000. Her weekend job pays £8,000 and carries a D0 code.
- Total income £48,000, less £12,570 = £35,430 taxable — all inside the £37,700 basic-rate band.
- Correct tax on the second job: £8,000 × 20% = £1,600.
- D0 deducts £8,000 × 40% = £3,200.
- Overpaid: £1,600 across the year, about £133 a month.
Example 3 — D0 is only half right. Tom earns £48,000 in his main job and £6,000 in a second job with D0. The higher-rate threshold is £50,270 (£12,570 + £37,700), so £2,270 of the second job should be taxed at 20% and £3,730 at 40%.
| Slice of second income | Correct rate | Tax |
|---|---|---|
| £2,270 | 20% | £454 |
| £3,730 | 40% | £1,492 |
| £6,000 | £1,946 | |
| £6,000 under D0 | 40% | £2,400 |
D0 takes £454 too much. A 0T code would have got this right, because 0T applies the bands in order rather than forcing everything to one rate.
Note that National Insurance is unaffected by your tax code. Class 1 NI is worked out separately for each employment, at 8% on earnings between £12,570 and £50,270 a year and 2% above, per job. That is why a low-paid second job can pay no NI at all while still suffering 40% income tax under D0.
D0 vs BR: which should be on your second job?
Both codes strip out the Personal Allowance; the only question is the rate. Compare your total expected income for the year against the thresholds:
| Your total income (England, Wales, NI) | Code you'd expect on the second source |
|---|---|
| Under £12,570 | Part of your allowance could be moved across |
| £12,570 – £50,270 | BR (20%) |
| Straddling £50,270 | 0T, or a split basic-rate band |
| £50,270 – £125,140 | D0 (40%) |
| Over £125,140 | D1 (45%) |
If your second job has BR but your combined income is well over £50,270, the opposite problem applies: you are underpaying during the year and HMRC will ask for the difference later. Our guide to the BR tax code walks through that side of it.
Splitting your allowance between two jobs
You are not stuck with an all-or-nothing code. HMRC can divide both your Personal Allowance and your basic-rate band across two employments, which is worth doing if both jobs pay a reliable amount every month.
Say you earn £20,000 in one job and £14,000 in another. Leaving the whole allowance on job one and BR on job two works out roughly right overall, but you can ask HMRC to give, for example, £8,000 of allowance to the first job and £4,570 to the second, so each payslip looks closer to the final answer. The total tax for the year is the same — the point is cash flow and avoiding a lump-sum surprise.
Where the split really matters is a straddling case like Example 3. Asking HMRC to allocate part of the basic-rate band to the second job replaces a blunt D0 with a code that charges 20% on the part that belongs in the basic-rate band and 40% only on the rest.
Two practical warnings:
- Splitting relies on stable earnings. If one job's hours swing about, you can end up with an underpayment in the job that holds the allowance.
- Every change to one job triggers a recalculation of the other, so expect a run of coding notices.
Getting a wrong D0 changed
Check your codes on all sources first — your payslips, your P60s and your HMRC record should agree. Then update HMRC's estimate of each job's pay using the Personal Tax Account or the HMRC app, or by using the check your Income Tax for the current year service. HMRC issues a revised code to your employer, and because most codes operate cumulatively once the D is removed, the refund usually appears in your next payslip rather than months later.
If the tax year has already ended, the correction comes through a P800 calculation or a simple assessment, or through your Self Assessment return if you file one. Overpayments can normally be reclaimed for the four previous tax years, so an old second job taxed at D0 in error is still worth chasing.
What to do next
Work out what your two jobs should actually cost you in tax with the second job tax calculator, then compare the figure with what your payslips are deducting. If the gap looks wrong in either direction, run the underpaid tax check to see whether the difference points to an incorrect code, a stale income estimate, or tax you will owe at the end of the year.
Frequently asked questions
What is the D0 tax code meaning in simple terms?
Why does my D0 second job get taxed at 40% when I'm not a higher-rate taxpayer?
D0 vs BR — what is the difference?
Can I have my Personal Allowance split between two jobs instead of a D0 code?
Is D0 the same in Scotland?
How far back can I reclaim tax overpaid under a D0 code?
Read next
More Taxes →UK Income Tax Rates and Bands 2026/27: A Plain-English Guide
Understand UK income tax rates and bands for 2026/27, including the Personal Allowance, the basic, higher and additional…
The Personal Allowance Explained: How the £12,570 Tax-Free Amount Works (2026/27)
Your personal allowance is the £12,570 you can earn tax-free in 2026/27. Here's how it works, who gets it, and where it…
Why Pensioners Are Getting Surprise HMRC Tax Bills in 2026
Rising State Pension, a frozen £12,570 allowance and higher savings rates mean many retirees now owe tax. Why it happens…
Rather someone else did it?
Partner linksFixed-fee services where a qualified accountant prepares and files your return.
TaxScouts
A real accountant files your return for one fixed fee.
Fixed fee, typically about £169 per return
Get my return doneGoSimpleTax
DIY Self Assessment software that checks for missed savings.
From about £54.99 per tax year
File it myselfWe may earn a commission if you sign up through one of these links. It never changes what we calculate, what we recommend, or the order they appear in.


