Supporters were three votes short of the 60 needed to proceed to debate and a final vote on the bill that would have provided as much as $7.4 billion in health care and compensation to 9/11 responders and survivors. The bill failed on a test vote, 57-42.
Fifty-seven Democrats voted for the bill and 41 Republicans opposed it. Sen. Harry Reid, the Democratic leader, switched his vote to 'no' at the last moment, a parliamentary move that allows him to bring the measure up again for a vote.
Backers of the legislation see this lame-duck session of Congress as possibly its last chance. The bill has passed the House.
Republican senators have promised not to consider any other bills until the Senate acts on funding the government and extending tax cuts.
The defeat was a huge blow to New York and New Jersey lawmakers who have long fought for the measure, arguing it's morally wrong to not do more for the health needs of ailing 9/11 responders and survivors.
"We should not have to wait for tax deals to do what's right," said Sen. Kirsten Gillibrand, D-N.Y., a lead advocate of the bill.
Facing long odds, supporters will try to attach the 9/11 bill to the legislation that emerges from the tax deal. They'll also press for another vote once the tax issue is settled.
Critics questioned whether the bill is affordable and does enough to ensure that only people with illnesses related to trade center dust get help.