Labour leader Sir Keir Starmer said it was “good news for the country” that Mr Johnson was stepping, adding: “It should have happened long ago.”
There has been intense pressure on Mr Johnson to quit after more than 50 resignations from all levels of government, and waves of backbenchers appealing for him to go.
The mass rebellion began on Tuesday after Downing Street admitted the PM knew about allegations of inappropriate behaviour against disgraced former Deputy Chief Whip Chris Pincher in 2019, but still appointed him in February.
Before the admission, government ministers had been sent out to defend Mr Johnson on the airwaves, and told to say their boss was unware of “specific” allegations.
Minutes after Mr Johnson apologised, saying appointing Mr Pincher was a “mistake”, Health Secretary Sajid Javid announce his departure, followed swiftly by Chancellor Rishi Sunak.
And their exits began an avalanche of resignations, from cabinet ministers to trade envoys.
But speaking at Prime Minister’s Questions on Wednesday, the PM dismissed calls to quit, saying it was “the job of a prime minister in difficult circumstances when he has been handed a colossal mandate is to keep going, and that’s what I am going to do”.
After the news broke, Scotland’s First Minister Nicola Sturgeon tweeted there would be “a widespread sense of relief” that the “chaos” was coming to an end.
But the SNP leader added: “[The] notion of Boris Johnson staying on as PM until autumn seems far from ideal, and surely not sustainable?”