Tax Code Meter

How a tax code actually works

A tax code is not a description of your tax — it is an instruction to your employer. This is what the instruction says, in the words of the regulations that create it, and why the number on your payslip is not always the one you expect.

This site is an independent UK tax-code explainer. We explain the mechanics of the system. We do not hold your data or give personal tax advice.

A tax code is not a tax bill. It is an instruction sent to your employer’s payroll software. Its legal definition is established by reg 7(1) of the Income Tax (Pay As You Earn) Regulations 2003 (SI 2003/2682). This regulation defines a code as “a combination of letters, numbers or both for use in accordance with the tax tables to establish free pay, additional pay, total free pay to date or total additional pay to date”. This tells the employer precisely how much of your wage is protected from tax, or how much extra notional wage must be taxed.

The core concept is free pay. Under reg 2(1), “free pay” is an amount “to be subtracted from relevant payments to arrive at taxable payments”. On payday, the payroll software takes your gross wage. It then subtracts the free pay dictated by your code. The remaining amount is your taxable payment. The tax rates are only applied to that remaining amount. This subtraction happens before any tax is calculated.

Some codes work in reverse. reg 2(1) defines “additional pay” as an amount “to be added to the relevant payments made to an employee in order to determine the taxable payments”. Instead of protecting a portion of your wage, it adds a notional amount to your gross wage to collect tax you owe on other income.

Your employer does not invent the code. HMRC “must determine the code” as stated in reg 13. Your employer is legally obliged to use the exact instruction HMRC provides. They cannot alter it, even if you ask them to, and even if it seems incorrect to you.

HMRC decides the code based on a strict list. Under reg 14(1), HMRC must have regard to: reliefs the employee is entitled to; other PAYE income; tax overpaid in earlier years not yet repaid; tax remaining unpaid from earlier years; over-repaid tax; other non-PAYE income unless the employee objects; and “such other adjustments as may be necessary”. HMRC aggregates these facts into a single instruction.

Employers do not simply take an annual allowance figure and divide it by the paydays. Instead, they use tax tables. Under reg 2(1), these are tax tables “prepared by the Board of Inland Revenue under section 685 of ITEPA”. The tables dictate the precise deductions. Because of how these tables handle rounding and period-by-period calculation, the figure on your payslip might differ from a simple fraction of the yearly amount. This difference does not mean the payslip is wrong, nor does it mean the annual figure is wrong. They are two different expressions of the same instruction.

The code letters are HMRC administrative naming. They appear nowhere in the legislation as code designations, with the exception of an administrative literal under reg 7(3)(ca). The regulations name codes purely by their function, such as “the basic rate code” or “the nil tax code”.

The letters act as a flag to the payroll software about how your free pay is constructed or which set of tables to apply. They do not alter the statutory tax bands themselves.

It is important to remember that the payroll software operates automatically based on these instructions. The software does not know your personal circumstances; it only knows the data HMRC has transmitted. If the data transmitted is outdated, the deduction will be mathematically accurate according to the instruction, but factually wrong for your life. This is why maintaining accurate records with the authorities is the only way to ensure the system operates as intended.

Because only HMRC determines the code based on the reg 14(1) factors, the only place a person’s actual code can be viewed securely is HMRC’s authenticated Personal Tax Account. This site cannot know it, and does not try to.

Independent tool not affiliated with HMRC. For your official code, log in to your Personal Tax Account. Check your tax code on GOV.UK.

Tax codes are not the same across the UK. A code starting with S uses the Scottish rates, which have more bands than the rest of the UK; a code starting with C uses the Welsh rates, which are built by a different rule even in a year when they come to the same figures. Check the first letter of your code before you read any rate on this site.

Letters and law are not the same thing. The PAYE Regulations create these codes by describing what they DO — “the basic rate code”, “the nil tax code” — and, with one exception, never write down the letters HMRC prints on your payslip. The letters are HMRC’s naming for those functions. This site labels which is which on every page, and the sources page shows the search behind that statement.

The figures and rules on this site are taken from the Income Tax (Pay As You Earn) Regulations 2003, the Income Tax Act 2007 and HMRC’s published guidance, and are shown as they were found. They have not been signed off by a reviewer. Where the law and HMRC’s naming differ, the page says which is which rather than blending them. For anything that affects a decision, the cited document governs and this site does not.