A proposed "emergency brake" on European Union citizens claiming benefits in the UK has been rejected as "not good enough" by the Prime Minister after talks with senior figures in Brussels.
David Cameron insisted that progress was being made on his reform demands ahead of a crunch summit of EU leaders in February but the proposal on offer "needs more work".
The Prime Minister said he could not be "certain" that a deal would be reached with the 27 other EU leaders at the meeting and stressed that he would only reach an agreement that addressed his concerns.
During a hastily-arranged trip to Brussels, Mr Cameron held talks with European Commission president Jean-Claude Juncker and European Parliament president Martin Schulz in an effort to keep his reform agenda on track.
Mr Cameron had demanded an outright four-year ban on migrants from other EU countries claiming in-work benefits in the UK but the compromise mechanism proposed would apply across all 28 member states.
Speaking in the Belgian capital he said: "There is now a proposal on the table, it is not good enough, it needs more work but we are making progress."
He added: "At the moment today, you can come to Britain, get instant access to our in-work benefits system which is worth many thousands of pounds to people.
"But also it goes to a deeper issue which is the British people and I want a system where you have to pay in before you get out. We don't want a something for nothing society.
"That's what we are determined to deliver. We've made some progress today, it's not enough, it's going to be hard work. I can't be certain we will get there in February but I will work as hard as I can to deliver a good deal for the British people."
A deal at the February 18-19 summit is seen as vital if Mr Cameron wants to hold an early referendum on EU membership, because an agreement at a later date would make it hard to schedule a vote before the school summer holidays.
But there were signs of trouble in reaching an agreement as Poland's foreign minister Witold Waszczykowski indicated his country would not back the brake mechanism.
"It will not accept a mechanism that denies social benefits to Poles living in the European Union," he said.
It is thought that the proposed measure would be available to all EU states, and be activated when migration levels were deemed high enough to put public services or welfare systems under severe strain.
Migrants from the EU would then be barred from claiming in-work benefits for up to four years.
Crucially, it is believed that the decision on triggering the brake would be in the hands of national governments rather than EU officials.
Czech Europe minister Tomas Prouza said the plan had been discussed during Mr Cameron's visit to Prague earlier this month and he expected the brake on benefits to be applied "as soon as the deal is struck" between the UK and other EU leaders.
He told BBC Radio 4's World At One: "We think the emergency brake is the right solution because it would allow not only the UK now but also, later on, any other member state to apply this brake when they face the same pressure the UK is facing now.
"That is an important part of the compromise, it would be a tool available for everybody when or if they need it."
Ukip leader Nigel Farage rejected the Prime Minister's claim that access to benefits acts as a draw for migrants coming to the UK.
He said: "The progress isn't very good, is it? We get an emergency brake that we have to ask permission to use.
"The PM is being utterly disingenuous in pretending that migrants are coming to the UK to go on benefits, they don't, they come to Britain because the minimum wage in Britain is nine-times that in Romania.
"Given that between now and the end of this parliament there is a proposal for a massive increase in the minimum wage to a living wage, even if he succeeds in blocking the benefits the pull factors are still there and increasing.
"He will go to the summit in February, like Oliver going up to the table and saying 'please sir, can we have some more concessions?' It's all pretty thin gruel."