Jonathan Portes, director of the National Institute for Economic and Social Research, said immigrants were "significantly less likely" to claim benefits than people born in the UK - and that those coming from EU countries put more into the economy than they took out.
He told the BBC Radio 4 Today programme arrivals were mostly younger people whereas the bulk of spending went on healthcare and pensions for older people.
"All the evidence suggests that people who come here from within the European Union make a substantial net contribution to the public finances - they pay in far more than they take out," he said.
He also played down the impact of health tourism as a "minuscule" part of a wider funding issue.
More top news
Parliamentary inquiry finds thousands of children could fall prey to sexual exploitation and gangs because of flawed warning systems.
David Cameron said the June 23 referendum is the most important vote young people will place in their lifetimes.
Plan would leave steelworkers worse off in retirement - but not as worse off as those in other pension schemes.