One of the questions arising from today’s immigration figures is the discrepancy between how many National Insurance numbers were handed out to Romanians and Bulgarians, and the number of immigrants from Romania and Bulgaria.

For the year to March 2015, the Office for National Statistics (ONS) reported that there were 53,000 new Romanian and Bulgarian immigrants – “a statistically significant increase and almost double the 28,000 in the previous 12 months”.

Indeed such a rise is significant, but the question is – why are the National Insurance numbers (NINos) so different, at a total of 214,000 registrations of Romanians and Bulgarians (EU2) to the year ending June 2015.

Indeed the question has already been raised by UK Independence Party leader Nigel Farage on Twitter:

Given 192,000 from Romania/Bulgaria registered for NI in year period, how can we believe ONS figure of 53,000 from same 2 countries? — Nigel Farage (@Nigel_Farage) August 27, 2015

Mr Farage is actually using old data in his tweet, so he’s being generous in the discrepancy. The real number now stands at 214,000 – made up of 170,000 Romanians and 44,000 Bulgarians.

So how can this be?

Well, there is a combination of problems that are causing some confusion about the UK immigration figures.

Firstly, we know that the ONS numbers rely on the International Passenger Survey (IPS), which is a long-standing, entry-point survey of people travelling into the United Kingdom. The numbers are then extrapolated outwards to estimate those settling and those leaving the United Kingdom. Of the millions of people travelling in and out of the country every year, the IPS interviews around 750,000. The IPS cannot account for illegal immigration, as a result, and this is the first problem we have with our migration figures.

As they are estimates, the IPS numbers are far less reliable than NINO figures, which, as an ONS statistician told me, is hard data. This means that we should be looking more to the number of people registering for National Insurance in the United Kingdom. But we can’t. Because the number of people registering for National Insurance in any given year doesn’t necessarily mean that they entered the country in that year.

For instance, while 59,000 Spanish people registered for a UK National Insurance number to the year ending June 2015, some of them may have been here for years already.

But as people are noticing, the discrepancy between EU2 countries immigration figures and the NINo figures are particularly striking. There were 917,000 registrations in the year to June 2015, an 62 per cent increase (352,000) on the previous year. A whopping 76 per cent of these (697,000) were from within the European Union.

Within the EU the number of NINo registrations in the year increased by 66 per cent (277,000) on the previous year.

The number from Romania and Bulgaria has increased by 151 per cent on the previous year.

It stretches credulity to believe that immigration can stand at just 53,000 while National Insurance registrations can be at 214,000. Especially when you consider that Romanian and Bulgarian migration into the UK in mid-2012 was below 10,000 on the year, and still only around 20,000 at the end of 2013 (the problem is of course I’m quoting IPS data).

The reality is the number of Romanians and Bulgarians is probably a lot higher than the IPS estimates. It isn’t going to be 214,000 for the year. But reading the data tells me that it is likely to be closer to that number than 53,000.

At the heart of all this is point that government data is all over the place. The National Insurance numbers are compiled by the Department for Work and Pensions, while the IPS stands alone and provides data to them, as well as the ONS, the Home Office, and more. It would be a gargantuan task to make the data more reliable and more accurate, taking into account population changes, NINo registrations, IPS data and more. But when a problem is this large, one might argue that the solution has to be of a similar scale.