TL;DR: The D0 tax code applies the higher rate of income tax (40 percent) to all pay from a particular source, with no personal allowance and no basic rate band. It is normally used on a second job or pension where the personal allowance and the basic rate band are already used in full by the main income source. The D1 code is the equivalent at the additional rate (45 percent), and the BR code applies basic rate (20 percent). D0 is correct where the taxpayer is a higher-rate taxpayer overall and the source in question falls entirely in the higher rate band; it is incorrect (and over-deducting) where the taxpayer is actually a basic-rate taxpayer or where the personal allowance is in fact available against the source.
Last reviewed May 2026
Most UK PAYE employees are on the standard 1257L code, which gives the personal allowance and applies the rate bands progressively. The "D" prefix codes are different: they apply a single tax rate to all pay from a particular source, with no personal allowance and no progressive bands. D0 applies higher rate (40 percent), D1 applies additional rate (45 percent), and BR applies basic rate (20 percent).
D0 turns up in payslips most often when an employee or pensioner has a second income source and HMRC has decided that the personal allowance and the basic rate band are already exhausted on the main source. Rather than apply BR (basic rate) and risk under-collecting tax, HMRC issues D0 so the second source is taxed at 40 percent from the first pound.
This guide explains how D0 works, when HMRC issues it, the differences between D0, D1, BR and 0T, and what to do if D0 has been applied wrongly.
What D0 does and how it differs from related codes
D0 applies the higher rate of income tax (40 percent in England, Wales and Northern Ireland) to every pound of pay from the source. There is no personal allowance and no portion of the pay taxed at the basic rate. The deduction is simply 40 percent of the gross pay each pay period.
D1 is the equivalent at the additional rate (45 percent). It is used where the taxpayer is in the additional rate band overall and the source in question falls entirely within that band. BR applies the basic rate (20 percent) to all pay from the source, with no personal allowance.
0T is similar in spirit but more nuanced: it gives no personal allowance but applies the rate bands progressively, so a high-paying source on 0T will see some pay taxed at the basic rate and some at the higher and additional rates as the bands are crossed. The choice between 0T and D0 depends on HMRC's view of the taxpayer's overall position.
When HMRC issues D0
The most common scenario is a higher-rate taxpayer with a second source of income. The taxpayer has a main job with a 1257L code that uses the personal allowance and the basic rate band in full. The second source might be a part-time job, a pension, a directorship or another role.
If HMRC believed the second source would fall entirely within the higher rate band (because the main income takes up the basic rate band), it would issue D0 on the second source. The result is that the second source is taxed at 40 percent from the first pound, matching the marginal rate the taxpayer would actually pay overall.
D0 is used as a deliberate allocation by HMRC, normally based on data submitted by the employer or pension provider through Real Time Information and on HMRC's wider view of the taxpayer's income. The personal tax account on GOV.UK shows the current allocation between sources and lets the taxpayer request a different split.
When D0 is right and when it is wrong
D0 is the right code when the taxpayer is genuinely a higher-rate taxpayer overall, the main income source uses the personal allowance and the basic rate band, and the second source falls entirely within the higher rate band. In that scenario, D0 collects approximately the right amount of tax in real time, avoiding a year-end underpayment.
D0 is the wrong code when one of those conditions is not met. If the taxpayer's main income is below the basic rate band, the second source should be taxed using BR (or 0T) rather than D0. If the personal allowance has not been allocated to the main source for some reason, the second source might be entitled to part of the allowance.
The most common error is leaving D0 in place after a change of circumstances. A taxpayer who reduced their main income (perhaps by going part-time, retiring early, or losing a job) might find that their second source is still on D0, taxing it at 40 percent when it should be taxed at 20 percent or below. Updating the personal tax account is normally enough to correct the position.
How D0 affects the take-home pay
Under D0, the deduction is 40 percent of gross pay each pay period. For a second job paying 1,000 pounds gross per month, the tax deduction is 400 pounds, leaving 600 pounds before National Insurance. National Insurance is calculated separately under its own rules.
Compared with BR (20 percent), D0 doubles the income tax deduction. Compared with 1257L (personal allowance plus progressive rate bands), D0 typically deducts substantially more, particularly on smaller pay amounts where 1257L would have given much of the pay tax-free.
The arithmetic is intentional: the second source under D0 is supposed to be the part of the taxpayer's income that falls in the higher rate band, so a flat 40 percent deduction from the first pound is broadly correct. Where the assumption no longer holds, the over-deduction can be substantial.
What to do if D0 looks wrong
The first step is to understand whether D0 actually is wrong. The personal tax account on GOV.UK shows the income sources HMRC is tracking, the codes applied to each, and the assumed total income for the year. If the assumed total looks too high, the figures can be corrected.
The next step is to ask HMRC to reallocate the personal allowance and the basic rate band, if appropriate. For a taxpayer whose main income is now lower than HMRC assumes, the personal allowance may need to be moved to a different source or the second source's code may need to change from D0 to BR, 0T or even 1257L.
Employers cannot change tax codes on their own initiative. They must apply the code HMRC sends them. Changes to a code must come from HMRC, normally via the personal tax account or a phone call to HMRC.
Year-end reconciliation if D0 was wrong all year
HMRC reconciles each PAYE taxpayer's position after the end of the tax year on 5 April. Where too much tax has been paid (because D0 was applied for several months and the actual marginal rate was lower), HMRC issues a P800 calculation showing the refund due. The refund is normally paid within around 5 working days if requested through the personal tax account, or by cheque within around 60 days otherwise.
Self assessment taxpayers see the position dealt with through their tax return rather than P800. The figures from each PAYE source feed into the return, and the right total tax is calculated, with any overpayment refunded after the return is processed.
Year-end reconciliation is automatic but takes months. Where the D0 application has been wrong throughout the year, requesting a code correction during the year and getting the refund through PAYE is normally the faster route.
Disclaimer: This article is general information about the D0 tax code and how UK PAYE codes are constructed. It is not personal tax advice. The right tax code in any individual case depends on the income sources, allowances and reliefs that apply. Anyone unsure about their code should check the personal tax account on GOV.UK or contact HMRC.
Frequently asked questions
What does the D0 tax code mean?
D0 means all pay from the source is taxed at the higher rate of income tax (40 percent in England, Wales and Northern Ireland). There is no personal allowance and no portion taxed at the basic rate. It is typically used on a second source of income for a higher-rate taxpayer where the main source has used the personal allowance and the basic rate band.
How is D0 different from BR?
BR applies the basic rate (20 percent) to all pay from the source, with no personal allowance. D0 applies the higher rate (40 percent). The two codes serve different positions: BR is correct where the taxpayer's overall position is basic rate; D0 is correct where the source falls entirely in the higher rate band.
Why am I on D0 if I only earn a small amount from this job?
D0 is applied based on HMRC's view of your overall position. If your main income uses the personal allowance and basic rate band in full, D0 on a second source is correct because that source falls in the higher rate band. If your main income has actually been lower than HMRC assumes, the code may need to be changed to BR or 0T through the personal tax account.
Will I get a refund if D0 was applied wrongly?
Yes. If a corrected code is issued during the tax year, the refund is normally given through subsequent pay packets (under cumulative operation). If the position is not corrected in-year, HMRC reconciles automatically after 5 April through a P800 calculation, with the refund paid by bank transfer or cheque.
Can I ask HMRC to use a different code?
Yes. The personal tax account on GOV.UK lets you check the income sources HMRC is tracking, view the assumed total income for the year, and request changes such as reallocating the personal allowance between sources. HMRC will issue a corrected code to the relevant employer or pension provider, normally within a few weeks.
How we verified this
The structure of UK tax codes, the meaning of D0, D1, BR and 0T, and the cumulative operation of PAYE codes reflect HMRC's published Pay As You Earn manual and the GOV.UK guidance on tax codes. The income tax rates of 40 percent (higher rate) and 45 percent (additional rate) reflect current published rates for England, Wales and Northern Ireland. Scottish income tax has different bands and the equivalent codes (S prefix) reflect Scottish rates set by the Scottish Parliament. Year-end reconciliation through P800 reflects current HMRC processes. Figures should be reconfirmed on GOV.UK.