The problem could affect any of the 30 million people in the pay-as-you-earn (PAYE) system, where tax is automatically deducted from employees' salaries. Each year, the Revenue gives everybody in PAYE a tax code, so employers know how much to take out of their pay. But the NAO says the Revenue routinely gets the codes wrong - and asks for too much tax.
The good news is that it's simple to check you're not being overcharged. "This isn't all the Revenue's fault; it can only act on the information it's been given, which isn't always accurate," says Mike Warburton, senior tax partner at the accountants Grant Thornton. "People need to take responsibility for checking their tax codes."
Each year, the Revenue sends out millions of code notices to taxpayers, usually in February or March. But for those who can't find their notice - or don't receive one - your code is printed on every payslip you receive. It should consist of several numbers and letters - 489L is the standard code in the 2005-06 year.
The number element of the code is your personal allowance - the amount you may earn tax-free this year - divided by 10. The Revenue then uses a series of letters to explain the type of code you have. L means you get the basic personal allowance, while P and V denote a taxpayer who is getting extra personal allowance because they are 65 or older. Other letters have different meanings.
This year's standard personal allowance is £4,890, which is why the most common code is 489L. "If your code is anything other than 489L, something is going on and you need to identify what that is," says John Whiting, a partner at PricewaterhouseCoopers.
To check that you're not losing out, go back to your tax code notice, or ask the Revenue to send you a copy. Your employer can tell you which Revenue office deals with your pay - it may not be anywhere near where you live - but any inquiry centre (in the phonebook under HM Revenue & Customs) should be able to help.
These notices explain your tax code in detail. Employees' personal allowances can be adjusted up or down for various reasons, and these modifications are becoming more common. The Revenue is not keen to collect small amounts of tax - or pay small rebates - through the self-assessment system, so it often tries to make sure people pay the right amount by adjusting their tax codes instead.
If you drive a company car or receive benefits in kind, such as health insurance or gym membership, your tax code will be adjusted downwards. Income from savings and investments or pensions may also be taken into account. In the credits column, charitable donations and private pension contributions you have made may increase your personal allowance.
You can only work out whether your tax code is correct by studying the explanation the Revenue gives for it. If it includes inaccurate information, you'll end up paying the wrong amount of tax.
"The thing that goes wrong most often is that your code takes account of information that is no longer applicable," Warburton says. "If you tell the Revenue that you are receiving a particular type of income or benefit, it will go on assuming you're getting that until you tell it otherwise."
The people most likely to be wrongly billed are those who move jobs, or begin receiving different pay and benefits for another reason. But anyone whose circumstances change is at risk. Pensioners, who are supposed to receive larger personal allowances, are often caught out in the years after retirement, for example. So are people who change tax brackets - by moving into the higher rate of tax, for example.
To challenge your tax code, go back to the Revenue with details of your correct circumstances. Depending on why the bill is wrong, you should receive the right form to claim a refund, which may be paid as a lump sum or through a new adjustment to your code. You have five years from the 31 January following the tax-year end in which to claim refunds, so you may be able to ask for money going back several years.
However, Whiting has a final warning. "Although the NAO says we overpay by £300m, it also thinks that we underpay by £600m each year, so challenging your tax code could cause you trouble," he says. "If you are paying too little tax, it's better to find out now, rather than facing a large bill in the future, but a bill may not be what you were expecting."
- More about: