Moonworkers
Blog

K tax code: how negative allowances work in payroll

The K tax code explained: why HMRC issues it, how the number becomes extra taxable pay, the 50% deduction limit, worked figures and employer duties.

K tax code: how negative allowances work in payroll

Check what a tax code means

Every UK tax code explained, with exact tax-free pay for each pay schedule.

A K tax code adds pay instead of removing it: the number in the code, multiplied by 10, is added to an employee's taxable income before tax is calculated [1]. An employee on £27,000 with the code K475 is taxed as if earning £31,750, and no single pay period can see more than 50% of pre-tax pay deducted in tax [1].

HMRC issues a K code when an employee has income or deductions that are higher than the tax-free Personal Allowance and are not already being taxed [2]. In the 2026-27 tax year the standard Personal Allowance is £12,570, so a K code means that the adjustments in the code exceed that amount [3]. The most common drivers are company benefits such as a car, the State Pension, and tax owed from earlier years [2].

For employees, a K code on a payslip often looks like an error. For payroll teams, it is a code that changes the direction of the calculation, introduces a statutory cap on deductions, and generates more queries per employee than almost any other prefix. Getting it wrong means either over-deducting, in breach of the 50% limit, or under-deducting and leaving the employee with a bill after the year end.

This guide explains what a K code is, how HMRC builds the number, how payroll applies it on the cumulative and Week 1 or Month 1 bases, the 50% regulatory limit, the Scottish and Welsh variants, worked examples at different salaries, and what the employer must do when a K code notice arrives.

Key takeaways

  • A K code means the employee's taxable deductions exceed the Personal Allowance, so pay is increased for tax purposes rather than reduced [2].
  • The number in the code multiplied by 10 shows how much is added to taxable income: K475 adds about £4,750 a year [1].
  • Common causes are company benefits, the State Pension or taxable state benefits, underpaid tax from a previous year and savings interest above the Personal Savings Allowance [2].
  • Tax deducted on any one pay day cannot exceed 50% of the gross pay for that period, and the shortfall is collected later if possible [4].
  • Scottish and Welsh taxpayers receive SK and CK codes, taxed at Scottish or Welsh rates [5].
  • Employers must apply a new code from a tax code notice (P6) before the employee's next pay day [6].

What a K tax code means

Most UK tax codes tell payroll how much tax-free pay to give. The standard code 1257L represents a Personal Allowance of £12,570, spread across the tax year [7]. A K code reverses the logic: there is no tax-free pay, and an extra amount of notional pay is added so that tax is collected on income that would otherwise go untaxed [1].

HMRC's PAYE Manual states that the primary intention of K codes is to collect tax on benefits in kind and on state benefits, but that the system "will allocate a K code in all cases where deductions exceed allowances" [5]. The GOV.UK letters table describes K as income the employee is "not paying tax on which is more than [their] Personal Allowance" [7].

K as a prefix, not a suffix

Ordinary codes carry a letter at the end: L, M, N or T [7]. The K sits at the front of the code, which is why it is described as a prefix code in HMRC's software specifications. The position matters for payroll systems, which parse the code to decide whether to subtract free pay or add additional pay [5].

Code typeExampleEffect on taxable payPersonal Allowance given
Suffix code1257LReduces taxable pay by about £12,570 a yearYes
Reduced suffix code1100LReduces taxable pay by about £11,000 a yearPartly
Flat-rate codeBRNo adjustment, all pay at 20%No
Zero code0TNo adjustment, all pay through the bandsNo
K codeK475Increases taxable pay by about £4,750 a yearNo, and extra pay is added

The table compares the main code families described by GOV.UK [7] [1]. The 1257L tax code remains the benchmark against which every other code is read.

Why HMRC issues a K code

A K code is the outcome of a calculation, not a penalty. HMRC adds up the allowances an employee is entitled to, subtracts the amounts it wants to collect through PAYE, and if the result is negative, a K code follows [5].

The four common causes

GOV.UK lists four situations that typically produce a K code [2]:

  1. Tax owed from a previous year being collected through wages or pension.
  2. The State Pension or taxable state benefits, which are paid gross and need tax collecting elsewhere.
  3. Company benefits that are taxable, such as a company car.
  4. Savings interest above the Personal Savings Allowance.

HMRC's own coding guidance adds other income it may collect through a code, including small fees and tips, casual profits, property income, higher-rate adjustments for income taxed at source and the High Income Child Benefit Charge [4]. If the individual objects to the coding out of income that is not PAYE income, HMRC removes the deduction from the code [4].

Benefits in kind and company cars

A company car is the classic trigger. The car benefit is a deduction from allowances, and for a well-paid employee with an expensive car it can exceed the full Personal Allowance [5]. The link between P11D benefits and coding is covered in detail in the Moonworkers guide on how the P11D affects a tax code.

Where an employer payrolls benefits instead of reporting them on a P11D, the benefit value is added to pay through the payroll itself, so in general HMRC no longer needs to collect it through a deduction in the code. Moving benefits onto payroll is therefore one of the few employer decisions that can make a K code disappear.

State Pension and pensioners in work

The State Pension is taxable but paid without deduction, so HMRC collects the tax through another source, usually an occupational pension or a job [8]. For a pensioner whose State Pension exceeds the Personal Allowance, the code on the other source becomes a K code. HMRC's guidance is explicit that where the State Pension is the only deduction in the code, it "should not be reduced": the correct amount must be coded [8].

Self Assessment debts collected through PAYE

An employee who owes less than £3,000 on a Self Assessment bill can have it collected through the tax code, provided the paper return was filed by 31 October or the online return by 30 December [9]. The amount is collected in equal instalments over 12 months alongside normal deductions [9]. HMRC will not code out the debt if the employee would pay more than 50% of PAYE income in tax, or more than twice the usual amount [9].

CauseTypical sourceEmployer visibility
Company car or other benefitP11D returnHigh, the employer reports the benefit
State PensionDWP paymentNone, the employer only sees the code
Underpaid tax from a previous yearHMRC reconciliationNone
Self Assessment debt under £3,000Employee's tax returnNone
Savings interestBank data held by HMRCNone

The causes above are those listed by GOV.UK and the PAYE Manual [2] [9]. The comparison between PAYE and self-assessed tax is set out further in the Moonworkers guide to PAYE versus Self Assessment.

How the number in a K code is calculated

HMRC's PAYE Manual gives a worked example. An employee has allowances of 12,570 and a company car benefit of 14,120. The calculation runs as follows [5]:

  1. 12,570 minus 14,120 equals minus 1,550.
  2. Drop the last digit and the minus sign: 155.
  3. Reduce the last digit by 1: 154.
  4. Add a K to the front: K154.

The reduction by 1 in the third step works in the employee's favour, slightly lowering the amount added to pay. HMRC rounds allowances up to the next pound and deductions down to the pound below when building any code [4].

Reading a K code the other way

For an employer reading a code that has already been issued, GOV.UK gives the reverse rule: multiply the number in the code by 10 to find how much should be added to taxable income before deductions are calculated [1]. K154 therefore adds about £1,540 a year, and K475 adds about £4,750 a year [1].

In practice, payroll software converts that annual figure into a per-period amount using HMRC's PAYE tables, so the pence in each period can differ slightly from a simple division by 12 or 52 [5]. The additional pay never appears on the payslip as cash. It exists only inside the tax calculation.

Worked examples of K codes in payroll

The examples below use the 2026-27 England and Northern Ireland bands: 20% on the basic rate band of £37,700, 40% above it, 45% above £125,140 [3]. Because a K code gives no Personal Allowance, the basic rate band starts from the first pound of taxable pay.

Example 1: basic rate employee with K475

An employee earns £27,000 a year, paid monthly, with the code K475. GOV.UK's own example puts taxable income at £31,750 [1]. At 20%, annual tax is £6,350, roughly £529.17 a month, against monthly gross pay of £2,250 [3].

Under 1257L, the same employee would pay 20% on £14,430, which is £2,886 a year [7]. The difference of £3,464 equals 20% of the lost £12,570 allowance plus the £4,750 of added pay. That is the tax HMRC is collecting on the benefit or debt behind the code.

Example 2: higher rate employee with K300

An employee earns £60,000 with the code K300, so about £3,000 is added, giving taxable pay of £63,000 [1]. Tax is 20% on £37,700 (£7,540) plus 40% on £25,300 (£10,120), a total of £17,660 a year [3].

On 1257L the same salary produces taxable pay of £47,430 and tax of £11,432. The £6,228 difference is 40% of the £15,570 swing between the two codes, which shows why K codes bite harder on higher-rate taxpayers.

SalaryCodeTaxable payAnnual taxTax on 1257LExtra tax from code
£27,000K475£31,750£6,350£2,886£3,464
£60,000K300£63,000£17,660£11,432£6,228

The calculations apply GOV.UK's multiply-by-10 rule and the 2026-27 bands [1] [3]. Figures are annual and ignore National Insurance, which a K code does not affect.

Example 3: hitting the 50% limit

A part-time employee earns £800 a month with the code K1500, adding about £1,250 a month. Taxable pay for the month is £2,050, and tax at 20% would be £410 [1]. The 50% limit caps the deduction at £400, half of the £800 gross pay, so the employer deducts £400 and the £10 shortfall carries forward to a later pay day [4].

Codes this large usually arise for pensioners, where a State Pension is coded against a small occupational pension or part-time job [8]. HMRC's internal guidance says that where the limit is exceeded in one year only, the underpayment may be collected by voluntary payment or coded, and where it is constantly exceeded, HMRC should consider moving the case into Self Assessment [8].

The 50% regulatory limit

The overriding limit is the most important safeguard in K code operation. Tax deducted on any one day cannot exceed 50% of the gross pay for that period [4] [5]. Originally the limit applied to K codes only. From 6 April 2015 it was extended to all tax codes [4] [10].

What the employer does when the limit bites

Where a K code would take tax above 50%, the code still operates, but the employer limits the deduction to 50% of the pay or pension [8]. The employer collects any shortfall on a later pay day if possible [4]. Any underpayment left at the end of the tax year is dealt with by HMRC through end-of-year reconciliation or Self Assessment [8].

The treatment differs for other codes. For non-K codes, HMRC's position reported by the CIPP is that a code hitting 50% should be operated on a Week 1 or Month 1 basis, with no requirement on the employer to collect the shortfall [11].

Code typeLimitShortfall handling
K codes (K, SK, CK)50% of gross pay in the periodCarried forward and collected on later pay days if possible
Other codes50% of gross pay in the periodNo employer duty to collect; HMRC reconciles

The table summarises HMRC's guidance and the CIPP's reporting of it [4] [11].

Why the carry-forward matters for software

The carry-forward is where manual payroll and spreadsheets fail. The uncollected amount must be tracked period by period and released when pay rises enough to absorb it, without breaching the limit in that later period [4]. Payroll software built on HMRC's tax table specifications handles this automatically, and Moonworkers' SME payroll platform applies the limit and the carry-forward on every K code payslip.

Cumulative, Week 1 and Month 1 operation

K codes can run on either basis, like any other code. On the cumulative basis, tax is worked out on total pay to date plus the additional pay to date, so an over- or under-deduction in one month is corrected in the next. On a Week 1 or Month 1 basis, each period is calculated on its own, using only that period's pay and that period's share of the additional pay [1] [12].

Codes marked W1, M1 or X

A code ending in W1, M1 or X tells the employer to use the non-cumulative basis [12]. For the 2026-27 tax year, the emergency codes are 1257L W1, 1257L M1 and 1257L X [14]. A K code can also carry a W1 or M1 marker when HMRC issues it partway through the year, and the marker must not be carried into the new tax year [15].

The Moonworkers guide to emergency tax codes covers the non-cumulative basis in more depth, including how it interacts with new starters without a P45.

Scottish and Welsh K codes

The S and C prefixes combine with K. From 6 April 2016, a code such as SK100 means tax is deducted at the Scottish rates, and from 6 April 2019 a code such as CK100 means tax is deducted at the Welsh rates [5]. HMRC sets the prefix automatically based on where the individual's main home is for most of the tax year [4].

PrefixExampleRates appliedEffective from
KK475England and Northern IrelandLong-standing
SKSK475Scottish rates and bands6 April 2016
CKCK475Welsh rates and bands6 April 2019

The dates come from HMRC's PAYE Manual [5] [8].

The 50% limit applies equally to Scottish codes, with the same principles as elsewhere in the UK [11]. Because Scotland has six bands, from the 19% starter rate to the 48% top rate, an SK code can reach higher marginal rates sooner than the equivalent K code [17].

What the employer must do when a K code arrives

The employer does not decide whether an employee has a K code. HMRC does, and the employer's duty is to operate the code it receives promptly and accurately.

Applying a tax code notice

HMRC sends an email alert when an employee's code changes. The employer accesses the new code through PAYE Online, the PAYE Desktop Viewer or its payroll software [6]. A tax code notice is sometimes called a P6 form [6].

The employer must update the payroll record with the new code as soon as possible and before the employee's next pay day, adding any previous pay and tax figures supplied [6]. If the notice arrives too late to use in the tax year, the employer uses it in the new tax year [6].

Timing seen from the employee's side

When an employee updates details with HMRC, HMRC tells the employee and the employer the new code within 15 working days [16]. For monthly-paid staff, the change should appear on the next or the following payslip, and for weekly-paid staff on the third payslip [16]. Employees often raise a query before the notice reaches payroll, which is a frequent cause of the question covered in the Moonworkers guide on why a tax code changes.

Handling employee queries

The employer cannot change a code on its own initiative. An employee who believes a K code is wrong should check the details through HMRC's online service, which is the quickest route, or contact HMRC directly [16]. The usual checks are the company benefit figures, the estimated taxable income and any income from other employments or pensions [16].

Accountants handling these queries across many client schemes benefit from a multi-client payroll dashboard that shows each employee's code history alongside the notices received. For platforms that run payroll inside their own product, a UK payroll API that accepts K, SK and CK codes as standard inputs and returns the 50% limit adjustment as a separate field avoids hard-coding the logic in each client.

Year-end and the new tax year

HMRC contacts employers between January and March about codes for the new tax year [15]. If a code is not changing, the employer carries it forward, dropping any W1 or M1 marker [15]. A K code that included a previous-year underpayment will normally change once the debt has been collected, because HMRC removes underpayments from the code calculation when they no longer apply [5].

Check a K code in seconds

An employer or employee can check what a code means, and whether the Personal Allowance has been removed, with the Moonworkers tax code checker, which applies the 2026-27 rules to any UK code, including K, SK and CK prefixes.

On your payslip, P45 or P60. Suffixes W1, M1 or X welcome.

What you'll get

Enter any UK tax code to see:

  • · what each letter and number means
  • · which nation's rates apply (S and C prefixes)
  • · cumulative vs emergency W1/M1/X basis
  • · the exact tax-free pay for every pay schedule, to the penny

Try 1257L, a K code, or an emergency W1 code.

Payroll that applies every tax code correctly

Moonworkers runs the full HMRC exact percentage method on every payslip, including K codes, emergency codes and in-year code changes, and files RTI automatically.

Conclusion

A K code is HMRC using the payroll as a collection channel for tax it cannot reach elsewhere: benefits, pensions paid gross, old debts. The code itself is simple arithmetic, a number multiplied by 10 and added to pay. The complexity lies in the operation around it: the loss of the Personal Allowance, the interaction with higher bands, the Scottish and Welsh rates, and above all the 50% limit with its carry-forward.

As more benefits move onto payroll and HMRC's coding draws on more real-time data, the number of employees with complex codes is unlikely to fall. Payroll processes that read the code correctly, apply the cap automatically and track the shortfall period by period turn the most queried prefix in PAYE into a routine calculation.

Frequently asked questions

How much tax-free pay does a K tax code give?

None. A K code means the employee's deductions exceed the Personal Allowance, so there is no tax-free pay at all. Instead, the number in the code multiplied by 10 is added to taxable pay. K475, for example, adds about £4,750 a year to the income on which tax is calculated.

Why does a pensioner have a K code on a workplace pension?

The State Pension is taxable but paid without any tax deducted. HMRC collects that tax through the pensioner's other income, usually a workplace pension or a job. When the State Pension exceeds the Personal Allowance, the code on the other source becomes a K code.

Can a K code take more than half of an employee's pay?

No. Tax deducted on any one pay day cannot exceed 50% of the gross pay for that period. The employer deducts up to the limit and collects the shortfall on later pay days where possible. Any balance left at the end of the tax year is dealt with by HMRC.

How long does a K code last?

A K code lasts until HMRC issues a new code. Codes caused by a previous-year underpayment usually change once the debt has been collected, while codes caused by a company car or the State Pension continue for as long as the benefit or pension is in payment. The employer must apply any new tax code notice before the next pay day.