Tax codes

What if I told you two people earning exactly the same salary could pay £100s apart in income tax every year?

The difference can come down to five characters on their payslips: their tax codes. Read one, follow £24,000 through it, see what one change to the code costs, then put in your own code and pay.

1257L on £24,000tax a year?
1000L, same payextra a year?

1 · Five characters on your payslip

Two people earn exactly the same: £24,000 a year, £2,000 a month. Yet one of them pays £514 more Income Tax every year.

The difference is five characters on their payslips: the tax code. For most people it's 1257L. Put the two codes side by side: the numbers differ, the letter is the same.

Your payslip says 1257L. What do you think the 1257 is?

2 · Reading 1257L

Most people can earn £12,570 a year before paying any Income Tax. That's the Personal Allowance.

Your tax code is how HMRC tells your employer how much tax-free pay to give you, so the right tax comes off each payslip.

To read it, take the number and multiply it by ten: 1257 × 10 = £12,570. The number is your tax-free pay for the year, with the last digit dropped.

The letter says what kind of allowance it is. L means you get the standard Personal Allowance. Others you might see: M and N (Marriage Allowance), T (HMRC has other calculations in it).

3 · Your £24,000, split in two

Here's a year's pay of £24,000. With 1257L, the first £12,570 is tax-free.

That leaves £11,430 that Income Tax is charged on.

At the basic rate of 20%, that's £2,286 a year taken off your pay.

Spread over twelve payslips: about £190 a month. (A real payslip shows £190.20: payroll gives 1257L £12,579 of tax-free pay and rounds down.)

Scotland sets its own rates. A Scottish code starts with S: on S1257L the same £24,000 pays £2,246, about £40 less, because the first £3,967 above the allowance is taxed at 19%.

your turn

4 · Same pay, different code

Now the second payslip: the same £24,000, but the code is 1000L. That's £10,000 tax-free instead of £12,570.

The line between tax-free and taxed drops, so £2,570 more of the same pay is taxed.

At 20%, that's £514 more a year: nearly £43 less in your pocket every month.

Every point off the code is £10 more of your pay taxed: £2 a year at the basic rate. 1257L to 1000L is 257 points: 257 × £2 = £514.

your turn

5 · Why a code changes

A different code doesn't necessarily mean something is wrong. HMRC sets it from what it knows about you, and changes it when that changes.

Another job. Your allowance is usually used up on your main job, so a second job often gets BR: all of its pay taxed at 20%.

Benefits from work, like a company car or medical insurance, are taxed through your code. GOV.UK's example: £1,570 of medical insurance turns 1257L into 1100L.

Tax owed from an earlier year can be collected through your code, a bit each payday. If what's added is more than your allowance, the code starts with K (K475 adds £4,750 to your taxable pay).

It can work in your favour too. With Marriage Allowance, a partner who earns under £12,570 can pass you £1,260 of theirs: 1383M, up to £252 a year less tax.

But mistakes do happen, especially when you change jobs. Without your P45 you can be put on an emergency code (1257L W1, M1 or X) until HMRC catches up, which can take up to 35 days.

6 · Check yours

Next time you get your payslip, find your tax code. It's also in the HMRC app and your online account.

If it's a standard code ending in L, multiply the number by ten: that's roughly how much you can earn tax-free each year.

If it doesn't look right, check it in the HMRC app or online, and tell HMRC if any of your details are wrong: a new job, a benefit that's ended, a partner's allowance.

Every point off your code costs you £2 a year at the basic rate.

1257L to 1000L is 257 points: £514 a year, on the same pay.

Before you call HMRC: three checks

Most codes that look odd have a reason. These three questions sort out most of them.

1

Does × 10 match what you'd expect?

For a code ending in L, the number × 10 is your tax-free pay for the year. With one job, no benefits and pay under £100,000, that's usually £12,570 (1257L). Lower usually means HMRC is taking something into account; higher, an allowance you've been given.

2

Is there a reason it changed?

A second job (BR, D0), a company car or medical insurance, tax owed from an earlier year, a Marriage Allowance claim (M or N), or pay over £100,000, where the allowance shrinks by £1 for every £2. The HMRC app shows how your code is worked out.

3

Are you on an emergency code?

W1, M1 or X after the code (or NONCUM) means each payday is taxed on its own. Give your new employer your P45. HMRC usually sorts it within 35 days of starting; after that, update your details with HMRC. Overpaid tax normally comes back through your pay.

The calculator

What does your tax code mean?

Type the code from your payslip and what that job pays you. See your code piece by piece, what you get tax-free, the Income Tax it takes, and whether it's the usual code for your pay.

As it's printed on your payslip or in the HMRC app.

try
Pay from this job, before tax
Where you live

England, Wales and Northern Ireland pay the same Income Tax rates this year. Scotland sets its own.

Tax-free pay a year

£12,570

Your code, piece by piece

    Tax a year

    Tax a month

    Share of pay

    How this code splits your pay

      Against the usual code for your pay

      1257L

      What this checker covers

      Every tax code format HMRC uses: a number with L, M, N or T (1257L, 1383M, 1131N, 1100T); 0T; BR, D0 and D1; NT; K codes (K475); the S (Scotland) and C (Wales) versions of all of them, including SBR and SD0 to SD3; and the emergency endings W1, M1, X and NONCUM.

      What it doesn't do: National Insurance, student loans or pension contributions; tax on savings, dividends or rent; more than one job added together; a code that changes partway through the year; payroll's exact pennies (it uses the code × 10; payroll adds £9 and rounds to the pound).

      Assumptions: 2026/27 rates. The code applies all year to this job's pay, and the tax is worked over the year (each payday's share is the same when pay is steady; an emergency code can make individual paydays differ). The "usual code" is what someone with this pay and nothing else to adjust would normally have where you live: 1257L (S1257L in Scotland, C1257L in Wales), or a smaller code above £100,000, where the allowance shrinks by £1 for every £2. Your code is HMRC's estimate: if it's wrong, the difference is usually put right through your pay or after the year ends. Education, not financial advice.

      The video

      Watch it in 3 minutes

      The same story, drawn: two payslips with the same pay and different codes, the 1257L tag that becomes £12,570, the £24,000 stack and its income-tax slice, the friend's 1000L stack, HMRC with the reasons a code changes, and the payslip under a magnifying glass.

      The newsletter

      Get the next story by email

      Each new video and essay in your inbox when it's out.

      No spam. Unsubscribe any time. Kit stores your address for us: see our privacy page.

      Sources and calculation notes

      How the numbers on this page are made. One model drives every drawing, readout and sentence, and a test checks it against each worked number. 1257 × 10 = £12,570. £24,000 − £12,570 = £11,430 taxed; × 20% = £2,286 a year; ÷ 12 = £190.50 (a payslip shows £190.20: payroll gives a 1257L code £12,579 of free pay, £1,048.25 a month, and rounds taxable pay down to the pound). 1000L: £24,000 − £10,000 = £14,000 × 20% = £2,800; £2,800 − £2,286 = £514 (= £2,570 × 20%); ÷ 12 = £42.83. Each point of an L code is £10 of tax-free pay, £2 a year at 20% (£4 at 40%). Scotland, same pay: £3,967 × 19% + £7,463 × 20% = £753.73 + £1,492.60 = £2,246.33. Marriage Allowance: £1,260 × 20% = £252. K475 on £27,000: £31,750 × 20% = £6,350. The tool works over the year: the tax-free pay comes off first (or a K code's amount is added), then the year's bands apply to what's left; BR, D0, D1 and the SD codes tax all the pay at one rate; NT takes nothing.