PayeRewind

PayeRewind

Replay any tax year and find out what your tax code really cost you.

England & Northern Ireland rates only · tax years 2016/17 to 2026/27 · works offline in any browser · nothing leaves your device

Start here — where to get your figures from HMRC (about 5 minutes)

Everything this tool needs sits on one HMRC page: PAYE Income Tax history, which lists every employer for the last five years with its taxable income, tax paid and tax code — more than the four years you can still claim for.

Worth knowing before you start: the HMRC app has no screen of its own for this. It opens the same web page inside itself, and that wrapper is what makes selecting text awkward on a phone and what turns the page's own “Print or download this page” into a file with no readable text in it. An ordinary browser avoids both problems.

Quickest — any browser, phone or computer

  1. Go straight to tax.service.gov.uk/check-income-tax/income-tax-history and sign in. (Or from gov.uk/personal-tax-account → Pay As You Earn → the income tax history link.)
  2. The page lists all five years, one block per employer.
  3. Select all the text and copy it. On a computer, click in the page and press Ctrl + A then Ctrl + C (⌘ on a Mac).
  4. Paste it into the box above. Done — exact figures, no recognition involved.

On a phone, where selecting text is fiddly

  1. Use your normal browser, not the HMRC app. The app opens this same page inside itself, where selecting text is usually blocked and its “print” flattens the words into pictures.
  2. iPhone: in Safari tap aA → Show Reader first — selecting the whole page is far easier there. Then long-press a word → Select All → Copy.
  3. If selecting still won't behave: Share → Print → pinch outwards on the preview → Share → Save to Files. That saves a PDF that still has real text in it, which this tool reads instantly.
  4. Last resort: use the page's own Print or download this page link. The file it makes usually has no readable text, but the PDF option above will offer to read it as an image instead.
Simplest of all if you have a computer to hand Email yourself the link, open it on a computer, and use Ctrl + A / Ctrl + C. Every phone route above is working around the fact that mobile browsers make selecting a whole page harder than it should be.

Which number goes where

Field in this toolWhere it comes from
Taxable pay for the yearPAYE → year → employer → Taxable income. Same as the “Pay” figure on your P60 or P45.
Tax deductedSame screen → Tax paid. Same as “Tax deducted” on the P60/P45. Income Tax only — no NI.
Tax code and basisShown against each employer. If it says non-cumulative, W1, M1 or X, choose Week 1 / Month 1 here.
Code changed mid-yearThe code history list under the code. Tick the box on the employment and enter each period.
Benefits not payrolledYour P11D from the employer, or the benefit lines in the code breakdown. If your payslips already showed the benefit, it was payrolled — leave this at 0.
HMRC's estimated payEstimated income in the tax code breakdown. This is the one most people never check.
Bonus / one-off paymentYour payslip for the month it was paid. A bonus, commission run, back pay or settlement is the most common trigger for a mid-year code change — enter it and the tool checks whether HMRC projected it forward as if it were recurring salary.
One screen to avoid: “Your income and taxes” / the Annual Tax Summary It looks like the right page but it is not. It shows Income Tax and National Insurance added together as a single figure, and a rounded “tax-free income” rather than your actual allowance. There is no way to split the tax out of that number, so it cannot be used as Tax deducted here. Use it only as a loose cross-check on total income — the real figures live in the PAYE income record described above.
The estimated-earnings trap — the reason this matters most HMRC does not know what you will earn, so it builds your tax code from an estimate. Everything in that code that depends on your marginal rate is priced off the estimate: benefits, untaxed income, and any underpayment being collected. If the estimate is too low, deductions get priced at 20% when they should be 40% and you end the year owing money. If it is too high, you overpay every month and wait for a refund.

It bites hardest between £100,000 and £125,140, where the Personal Allowance taper is set from the estimate. Every £1 the estimate is wrong moves your allowance by 50p — an effective 60p in the pound. An estimate that sits on the wrong side of £100,000 is the most expensive coding error there is.

Put HMRC's estimate into the “HMRC's estimated pay” box on each employment and this tool will tell you how far off it was and what that did. To correct it going forward: PAYE → view or update employment details → update your estimated taxable income (in the app, update your estimated income). Income HMRC has missed entirely goes under Non coded income → update or remove, or add missing income in the app.

If a figure genuinely isn't there, your P60 (end of year), P45 (leaving) and P11D (benefits) hold the same numbers, and HMRC can send you an employment history for the last five years. Repayment claims must reach HMRC within four years of the end of the tax year, so start with the most recent years.

How this differs from a normal tax calculator. It works out two separate numbers and compares them: (1) your correct liability for the year, which does not depend on your tax code at all, and (2) what PAYE actually took. Your tax code only explains the gap — it is never an input to what you owe. This is an estimate to help you frame a query to HMRC, not an HMRC calculation.

0 · Import five years at once from HMRC fastest route

HMRC's PAYE Income Tax history page lists every employment for the last five years with its taxable income, tax paid and tax code — which is most of what this tool needs. Get to it in the HMRC app or Personal Tax Account under Pay As You Earn. Then either save that page as a PDF and choose it below, or select all the text and copy it and paste it in. Either way every year is filled in at once.

When the print box asks where to send it, choose Save as PDF. On Windows the list also offers Microsoft Print to PDF, which looks like the same thing but flattens the page into a picture — the text stops being text, and nothing can read it back out. A photograph or a scan has the same problem. If you are unsure, open the file afterwards and try to select a line of text: if you can select it, this tool can read it.

Your file is never uploaded. Choosing a PDF opens it inside this page on your own device. It does not reach us, which means there is no copy of it for us to keep, to delete, or to lose. The same is true of anything you paste. Reading a PDF does fetch a PDF-reading library, so that one step needs a connection — your file is not part of that request, and never leaves this tab. The HMRC page carries your name, address and National Insurance number. Where they are present they fill in section 5 of the claim letter and go nowhere else — but be careful where you save or send the file itself.

1 · Tax year and personal circumstances

Extends your basic-rate band.

2 · Employments and pensions in that year

Add one row per P60 or P45. Two allowance-giving codes in the same year is the classic underpayment cause.

3 · Benefits, pension contributions and other income

Car, fuel, medical, interest-free loan. Leave at 0 if your benefits were payrolled — those are already inside your taxable pay above.
Grossed up by ÷0.8. Extends your basic-rate band and reduces income for the allowance taper. Do not enter salary-sacrifice or net-pay-arrangement contributions here.
Property profit, state pension, taxable benefits paid by DWP.
Untaxed bank/building society interest. Exclude ISAs.
Exclude ISA dividends.
Salary sacrifice and net-pay pensions need no entry. Salary sacrifice reduces your gross pay before it reaches the payslip, and a net-pay-arrangement contribution is taken before tax — both are already reflected in the taxable pay on your P60. Entering them again would understate your liability.

4 · What has already been settled for this year optional

Leave all four at 0 if nothing has changed hands outside your payslips. Fill them in if you have had a P800 or Simple Assessment (PA302) for this year, or if an underpayment is being collected through a tax code in a different year. The tool then shows a second, settled position underneath the main result.

A P800 or Simple Assessment bill you settled directly — bank transfer, card, direct debit.
A P800 repayment, cheque or bank credit already paid to you.
Shown on the P800 as “we will collect this through your tax code”. Counts as settled for this year.
The “underpayment restriction” or K-code element in this year's code. Stripped out, because it is not this year's tax.
These two are where double-counting happens. An underpayment is usually collected two years later through the code. If you count it as settled here and treat the extra deduction as an overpayment when you reconstruct that later year, you will count the same money twice. Enter it in both places — once as “collected later” here, once as “belongs to an earlier year” in that later year — and the two years stay consistent.

5 · Your details, if you want a claim letter optional

Only needed if the result shows a refund due and you want the tool to write the claim for you. A claim for overpayment relief has to be in writing and must carry your name, address and National Insurance number, so HMRC can match it to your record. Nothing here leaves your browser, and nothing is saved — close the tab and it is gone. If you want to prove that to yourself, save this page, switch off your internet and use it offline: everything except the PDF reader still works.

Two letters, six digits, then A, B, C or D. On your payslip, P60 or in the HMRC app.
One line each, ending with the postcode. This is where HMRC will write to.
HMRC requires every overpayment relief claim to say whether you have appealed before — a claim that doesn't is commonly rejected. Leave this unticked if you never have, which is the usual answer.
The tool never asks for your bank details, and never handles your money. A repayment claim you send yourself is paid straight to you by HMRC. If a company ever asks you to sign a nomination so a refund goes to them first, that is how the commission gets taken — you do not need one to claim.

Reference tables used

Income tax rates and allowances, England & NI
Employee Class 1 National Insurance (annual equivalents)

NI for a normal employee is worked out separately in every pay period and never re-cumulated over the year. The annual figure here is therefore indicative: it is only reliable if your pay was steady. NI errors are also corrected separately by HMRC and never appear in a P800 tax refund.

How each tax code is read

Numeric codes with a suffix (L, M, N, T, P, Y) — free pay for the year is (code number × 10) + 9. So 1257L gives £12,579 of free pay through the payroll, not £12,570. HMRC builds the extra £9 into Table A deliberately, in the employee's favour. Your actual Personal Allowance for the year is still £12,570 — which is one reason a perfectly-coded year can still end a few pounds out.

K codes — (code number × 10) + 9 is added to your pay before tax. K314 adds £3,149, not £31,400. A K code is a collection mechanism for benefits, untaxed income or an earlier underpayment. It is not income, so it never enters the correct-liability figure — only the deducted figure.

BR 20% on everything · D0 40% on everything · D1 45% on everything · NT no tax · 0T no free pay but the normal 20/40/45 bands still apply — 0T is not the same as BR.

Cumulative vs Week 1 / Month 1 — a cumulative code reconciles pay-to-date every period and self-corrects. A W1/M1 code treats each period in isolation, so it never catches up. W1/M1 affects only what was deducted, never what is owed.

Several codes in one year at the same employer — tick “my tax code changed part-way through the year” and list the periods in date order. If the last code ran cumulatively it recalculates on pay-to-date and settles the difference in that payslip, so it alone decides the year's total deduction; the earlier codes only affect timing. If the last code ran W1/M1, nothing re-bases and the periods simply add up. Either way the codes never change what you owe.

The 50% overriding limit — PAYE may never deduct more than 50% of the gross pay in a period, which caps what a large K code can actually collect.

S and C prefixes (Scotland, Wales) are out of scope here and will be rejected.