On Monday, 278 MPs voted in favour of a tri-partisan, no confidence motion tabled by a centrist party and others, just nine short of the 287 needed for it to succeed.
A second motion of no confidence, tabled by the populist National Rally (RN), had no chance of going through later on Monday as other opposition parties said they would not vote for it.
A successful no-confidence vote would have sunk the government and killed the legislation, which is set to raise the retirement age by two years to 64.
The outcome will be a relief to Macron but he still faces significant headwinds.
For one thing, the centrist president's failure to find enough support in parliament to put his pension reform to a vote has undermined his reformist agenda and weakened his leadership.
Barclays analysts said the government would remain in place, "although it would be significantly weakened, while social protests against the reform would likely continue for some weeks, which could negatively affect the French economy".
Union and protesters, angry with the reform and with the fact that the pension reform was adopted without a vote, said they would carry on with strikes and protests.
"We'll meet again on Thursday," Helene Mayans, of the CGT union, said at a rally in Paris.
Violent unrest has erupted across the country and trade unions have promised to intensify their strike action, leaving Macron to face the most dangerous challenge to his authority since the "Yellow Vest" uprising over four years ago.
A ninth country-wide day of strikes and protests is scheduled on Thursday.
Opposition parties will also challenge the bill in the Constitutional Council, which could decide to strike down some or all of it - if it considers it breaches the constitution.