MTD mandatory · April 2026
TapTax
Tax Codes home

What does the D0
tax code mean?

D0 means all income from this source is taxed at 40% with no personal allowance. Usually applies to a second job or pension where you are already a higher rate taxpayer.

Forty per cent. Every pound you earn from this income source is taxed at the higher rate when HMRC assigns you the D0 tax code. There is no personal allowance, no basic rate band, no graduated scale. D0 is a flat-rate code, and it exists because HMRC has already allocated your tax-free allowance and basic rate band to another income source, usually your main job.

D0 Tax Code
D0 instructs your employer or pension provider to deduct income tax at 40% on all earnings from this source. No Personal Allowance or basic rate band is applied. HMRC uses D0 when your combined income from all sources exceeds the basic rate threshold (£50,270 in 2025/26) and your allowance is allocated to your primary income source.

When is D0 the correct tax code?

D0 is correct when your total income from all sources pushes you into the higher rate band and the income from this particular source falls entirely within that band. The most common scenarios are:

Second job for a higher rate taxpayer. Your main job pays £55,000 with a 1257L code (your full Personal Allowance). You take a second job paying £15,000. Since your main job already uses your allowance and basic rate band, every pound from the second job is taxed at 40%. HMRC assigns D0 to the second employer.

Second pension. Retired individuals often have multiple pension sources: a state pension, an occupational pension, and perhaps a personal pension. HMRC allocates the Personal Allowance to one pension and assigns D0 to any others where the total income exceeds £50,270.

Company directors with multiple directorships. If you direct two companies and draw salary from both, the second directorship salary may carry a D0 code.

40%
flat rate on all D0 income
{'£'}50,270
higher rate threshold 2025/26
12,100
monthly UK searches for D0

D0 vs BR: what is the difference?

This is the question most people ask first. Both D0 and BR are flat-rate codes with no personal allowance, but they apply at different rates.

FeatureBRD0
Tax rate applied20% (basic rate)40% (higher rate)
Personal AllowanceNoneNone
Typical scenarioSecond job, total income under £50,270Second job, total income over £50,270
Who gets itBasic rate taxpayers with a second incomeHigher rate taxpayers with a second income
Risk of overpaymentLower (20% is often too much if you have unused allowance)Higher (40% on every pound is steep if your total income is near the threshold)

The critical distinction: If your total income from all sources is below £50,270, HMRC should assign BR (not D0) to your second income. If your total income exceeds £50,270 but your second income partly falls within the basic rate band, D0 may be overtaxing you. In that case, HMRC should split the coding rather than applying a flat 40%.

Worked example: £60,000 earner with a second job

James earns £52,000 from his main employment and £8,000 from evening consultancy work. His total income is £60,000.

Main job (1257L code):

ItemAmount
Gross salary£52,000
Personal Allowance£12,570
Taxable at 20% (£12,571-£50,270)£37,700 x 20% = £7,540
Taxable at 40% (£50,271-£52,000)£1,730 x 40% = £692
Total tax on main job£8,232

Second job (D0 code):

ItemAmount
Gross consultancy income£8,000
Tax at 40% (all of it)£8,000 x 40% = £3,200

Total tax across both jobs: £8,232 + £3,200 = £11,432

This is correct because James's entire second income falls above the £50,270 threshold. Every pound of consultancy income genuinely belongs in the 40% band.

When D0 is wrong and you are overpaying

D0 can be incorrect in several situations, and the result is always the same: you pay too much tax through PAYE and need to reclaim the difference.

Your total income is below £50,270. If your main job pays £40,000 and your second job pays £8,000, your total is £48,000. All of this falls within the basic rate band. Your second job should be coded BR (20%), not D0 (40%). The difference on £8,000 is £1,600 per year in overpaid tax.

Your personal allowance is not fully used. If you started a new main job mid-year and did not provide a P45, HMRC may have assigned 1257L to your old employer and D0 to your new one. Your allowance should transfer to the new job.

You have stopped your main job. If you leave your primary employment but keep the second job, that job should now receive your Personal Allowance. HMRC may not update the code automatically.

Your income has dropped. A pay cut, reduced hours, or redundancy at your main job could mean your total income no longer reaches the higher rate threshold. D0 would then be incorrect.

How to fix a wrong D0 code

If D0 is incorrect, you are losing money with every payslip. Act quickly.

Option 1: Update online. Sign in to your Personal Tax Account on gov.uk. Navigate to "Check your Income Tax" and update your estimated income for the year. HMRC will recalculate and issue a revised code to your employer, usually within 2-4 weeks.

Option 2: Call HMRC. Phone the income tax helpline on 0300 200 3300 (Monday to Friday, 8am to 6pm). Explain your income sources and ask them to review your coding. Have your NI number and employer PAYE references ready.

Option 3: Wait for the P800 reconciliation. At the end of the tax year, HMRC automatically reconciles your PAYE records. If you overpaid, they issue a P800 tax calculation showing the refund due. This can take until October or November after the tax year ends, so you may wait up to 18 months. Calling or updating online is faster.

Key takeaways
  • D0 means 40% tax on every pound from this income source with no personal allowance applied
  • It is typically correct for second jobs or pensions where your total income exceeds £50,270
  • D0 and BR both give zero personal allowance but at different rates: BR is 20%, D0 is 40%
  • If your total income is under £50,270, D0 is wrong and you should have BR instead, meaning you are overpaying by 20% on every pound
  • Fix a wrong D0 code via your Personal Tax Account online or by calling HMRC on 0300 200 3300
  • If you do not fix it in-year, HMRC will reconcile via a P800 after the tax year ends, but this can take up to 18 months

D0 tax code on pension income

Retirees are among the most common D0 recipients, and the coding can be confusing when multiple pension sources are involved.

The State Pension is taxable but paid gross (no tax deducted at source). HMRC accounts for it by reducing the Personal Allowance available to your other pension sources. If the State Pension in 2025/26 is £11,502 (full new State Pension), HMRC reduces your occupational pension allowance to £12,570 minus £11,502 = £1,068. Your occupational pension would then receive a code like 106L.

If you also have a personal pension on top of both, that third source may receive D0 if your total pension income exceeds £50,270. In practice, many retirees with three pension sources find the coding confusing, particularly when HMRC splits the allowance in unexpected ways.

Pension sourceTypical codeTax treatment
State PensionNo code (paid gross)Taxable, accounted for via other codes
Occupational pension (primary)Adjusted L code (e.g., 106L)Allowance minus State Pension allocation
Personal pension (secondary)D040% on all income if total exceeds £50,270

Claiming back overpaid D0 tax

If you have been on D0 incorrectly for part or all of the tax year, you can reclaim the overpayment.

In-year correction. Update your income estimate on your Personal Tax Account. HMRC issues a new code that compensates for the overpayment already made by giving you a larger allowance for the remainder of the year.

After the tax year. HMRC sends a P800 calculation. If it shows a refund, you can claim online and receive payment within 5-10 working days by bank transfer. If HMRC does not send a P800 (they sometimes miss cases with multiple employers), you can call to request a manual review.

Via Self Assessment. If you file a Self Assessment return (because you have self-employment income, rental income, or income over £150,000), any PAYE overpayment is automatically reconciled through your return. The overpaid amount reduces your Self Assessment liability or generates a refund.

D0 and self-employed income

If you are a sole trader with a PAYE job on the side, the D0 code on your employment income does not directly affect your self-employment tax calculation. Self-employment income is taxed through Self Assessment, not PAYE.

However, your total income from all sources determines your effective tax rate. If your self-employment profits push you into the higher rate band, the D0 code on your PAYE income may actually be correct, because the PAYE system is trying to collect the right amount in real time rather than leaving a large Self Assessment bill.

From April 2026, Making Tax Digital requires sole traders with income above £50,000 to submit quarterly digital updates. If you have both PAYE and self-employment income, your quarterly updates cover only the self-employment portion. HMRC reconciles everything at the end of the year.

People also ask

Related tax codes

HMRC official guidance

Stop calculating manually.

TapTax connects to your bank, categorises expenses automatically, and submits quarterly updates to HMRC. Free plan, no card required.