UK tax codes explained — what each letter means and how to check yours

The string of numbers and letters on your payslip — “1257L” for most people — is your tax code, and it tells your employer how much tax-free income to apply to your salary each pay period. Wrong codes are common, mostly because life events outpace HMRC’s records, and the difference between a right and wrong code can be hundreds or thousands of pounds a year.

This is what each part means, the most common codes, and how to check yours.

The structure: digits + letter(s)

A standard code is a number followed by one or more letters. The number represents the annual personal allowance, divided by 10.

For example: 1257L

  • 1257 = your personal allowance for the year is £12,570 (the standard amount). Multiply the digits by 10 to get the annual figure.
  • L = you’re entitled to the standard personal allowance with no special adjustments.

The number changes if your allowance is adjusted; the letter tells your employer how to handle the calculation. Both can change separately.

The most common letters

A non-exhaustive list of letter codes:

  • L: standard personal allowance, no adjustments. About 90% of UK employees.
  • M: you’re receiving a transferred personal allowance via Marriage Allowance — your allowance is increased by £1,260.
  • N: you’re transferring £1,260 of allowance to your spouse via Marriage Allowance — your allowance is reduced by that amount.
  • T: your code includes other calculations HMRC has applied — common where the personal allowance is being tapered toward the £100k trap, or where there are taxable benefits or untaxed income to be coded in.
  • 0T: no personal allowance — every pound is taxed from the start. Often used when starting a new job before HMRC has the right information.
  • BR: Basic Rate. Every pound earned is taxed at 20%, with no personal allowance applied. Common for a second job where the first job uses all your personal allowance.
  • D0: every pound earned at 40% (higher rate). Used for second jobs where your main income is already in the higher band.
  • D1: every pound earned at 45% (additional rate). Used for second jobs where you’re already in the additional-rate band.
  • NT: No Tax. Used in specific cases — sometimes for non-residents, sometimes for certain claims/payments. Rare and usually deliberate.

HMRC’s full list of tax codes →

K codes — when the allowance goes negative

If your taxable benefits exceed your personal allowance — common with company cars, large benefits-in-kind, or where you owe tax from previous years — the code becomes a K code.

For example: K500

  • The K prefix means the allowance is negative.
  • 500 means an additional £5,000 is added to your taxable income for the year.
  • So your tax calculation treats you as having earned £5,000 more than your salary actually shows.

K codes are unusual and worth understanding if you see one — they typically follow a tax-year reconciliation where HMRC realises you’ve been undertaxed.

Scottish tax codes

If you’re a Scottish taxpayer, the letter is prefixed with S:

  • S1257L: Scottish equivalent of the standard 1257L code.
  • SBR, SD0, SD1, SD2: Scottish equivalents of the second-job codes, calibrated to Scotland’s six income tax bands.
  • SK500: Scottish K code.

The Scottish income tax bands differ from the rest of the UK — see our take-home pay calculator for the bands.

Welsh tax codes

Welsh taxpayers get a C prefix (e.g. C1257L). Welsh income tax rates currently align with the rest of the UK, but the Welsh Assembly has the power to vary them.

Common errors and how to spot them

Errors fall into a few categories:

1. Multiple jobs not properly coded

If you have two jobs and both apply your full personal allowance, you’ll be undertaxed and end up owing HMRC at year-end. The correct setup is usually:

  • Main job: 1257L (or your normal code) — full personal allowance applied.
  • Second job: BR — every pound taxed at 20%, no allowance.

If you see two jobs both showing the standard 1257L, that’s likely wrong.

2. P11D benefits not coded

Company cars, private medical insurance and other benefits-in-kind are taxed via your tax code. If you’ve started receiving a benefit but your code hasn’t changed, you’re being undertaxed and owe at year-end.

A T or K suffix on your code usually means the benefits have been coded in. If you have benefits but a plain L code, check.

3. Personal allowance taper not applied

If your adjusted net income is above £100,000, your personal allowance should be tapering. The code should reflect that — usually as a T code with a lower number.

For income around £120,000, a typical code might be 314T (allowance of £3,140 remaining). For income above £125,140, it might be 0T or T with zero allowance.

If you’re a high earner with a plain 1257L code, you’re being undertaxed and there’ll be a reconciliation bill.

4. Marriage allowance not applied or wrongly applied

The M and N codes are common sources of confusion. If you’ve applied for marriage allowance, the recipient should see an M code (allowance up by £1,260) and the giver an N code (allowance down by £1,260). If neither code has shifted, the claim may not have processed.

5. Estimated tax for untaxed income

If you have rental income, savings interest above the PSA, or dividend income above the £500 allowance, HMRC sometimes codes the estimated tax due into your PAYE code rather than collecting it via Self Assessment. The code adjusts mid-year as HMRC’s estimate changes. This can be unsettling but is normal.

How to check your tax code

The authoritative source is your HMRC personal tax account:

Sign in to your personal tax account →

In the personal tax account you can:

  • See your current tax code and what makes it up.
  • See historic codes year by year.
  • Check coding notices HMRC has issued.
  • Estimate your tax for the year ahead.
  • Update HMRC if your circumstances change (new job, new benefit, change in income).

The personal tax account is also where you check your State Pension forecast, NI record and Self Assessment status — see our State Pension forecast guide.

When to raise it with HMRC

If you think your code is wrong, the steps are:

  1. Sign in to your personal tax account and check the most recent coding notice. The notice explains how the code was calculated.
  2. Compare to your current circumstances. Income? Benefits-in-kind? Marriage allowance? Untaxed income?
  3. If something is materially wrong, update HMRC online through the tax account or by calling 0300 200 3300.
  4. HMRC will usually issue a new coding notice within a few weeks. Your employer should pick it up automatically.

At tax year end, you’ll get a P800 calculation if HMRC owes you money or you owe HMRC. Don’t panic at a P800 — they’re common when codes have drifted during the year.

A reasonable annual check

Most years, the code adjusts smoothly. The cases worth a manual check:

  • You started a new job during the year. New employer + old code = often wrong for the first month or two.
  • You started or stopped receiving a benefit-in-kind. Code should reflect that.
  • Your income crossed a tax band. Particularly the £100k taper threshold.
  • You got married, divorced, or changed name. Personal allowance transfers may need updating.
  • You received a P800 last year. If you owed money last year, the code may have been adjusted to claw it back this year — check this is correct.

A 10-minute review in May (after the new tax year codes have settled) catches most errors before they compound.


Last updated 22 May 2026. Tax code rules and letters are set by HMRC — confirm any specific code interpretation on gov.uk. This guide is educational and is not personal financial advice. See our disclaimer.

One email a month. No spam.

The most-read calculators and the UK rule changes that matter. Unsubscribe anytime.

We store your email only to send the newsletter. See our privacy policy.