Michael Gove warns by-elections will be difficult
Rishi Sunak escaped a triple by-election nightmare with the Tories hanging on to one of the three seats.
The Conservatives retained Boris Johnson's former Uxbridge and South Ruislip constituency.
But Labour won Selby and Ainsty in North Yorkshire and the Lib Dems took Somerton and Frome in Somerset, with both parties overturning majorities of around 20,000 in the previously safe Tory seats.
View the full results from the three by-elections below:
Trending
Uxbridge and South Ruislip - Tory hold
Conservative Steve Tuckwell managed to keep Boris Johnson's former seat but with a reduced majority of 495 despite Labour hopes to take the constituency.
London Mayor Sadiq Khan's ULEZ expansion is widely being blamed for Labour's failure to win Uxbridge and South Ruislip.
Newly elected Conservative MP Mr Tuckwell said: "My campaign has been incredibly single-minded and it's really been in complete opposition to ULEZ from the outset.
"That's not me saying that, it's not me that called the referendum on ULEZ. It is the people of Uxbridge and South Ruislip."
Join our free WhatsApp community for the latest politics news
Tory Steve Tuckwell held Uxbridge with a majority of 495 (Image: PA)
This interactive requires javascript to work.
Interactive
This interactive requires javascript to work.
Interactive
This interactive requires javascript to work.
Interactive
This interactive requires javascript to work.
Interactive
Interactive
Interactive
Interactive
Selby and Ainsty - Labour gain from Conservatives
Labour overturned a 20,137 Tory majority to take the North Yorkshire constituency of Selby and Ainsty.
New Labour MP Keir Mather, 25, will become the youngest MP in the Commons.
In a speech after he was declared the winner of the by-election, Mr Mather said he "understood the enormity of what has just happened".
He added: "We have rewritten the rules on where Labour can win. People have opened their doors to us and embraced our positive vision for the future."
SUBSCRIBE Invalid email
We use your sign-up to provide content in ways you've consented to and to improve our understanding of you. This may include adverts from us and 3rd parties based on our understanding. You can unsubscribe at any time. More info
SUBSCRIBE Invalid email
We use your sign-up to provide content in ways you've consented to and to improve our understanding of you. This may include adverts from us and 3rd parties based on our understanding. You can unsubscribe at any time. More info
SUBSCRIBE Invalid email
Labour's Keir Mather won Selby and Ainsty to become the youngest MP in the Commons (Image: PA)
This interactive requires javascript to work.
Interactive
This interactive requires javascript to work.
Interactive
This interactive requires javascript to work.
Interactive
This interactive requires javascript to work.
Interactive
Interactive
Interactive
Interactive
Somerton and Frome - Lib Dem gain from independent
The Liberal Democrats overturned a majority of more than 19,000 to win the Somerton and Frome by-election.
The Lib Dems lost the Somerset seat to the Conservatives in 2015 but Sarah Dyke won it back with a majority of 11,008.
The South West had been a heartland for the Liberal Democrats until the 2015 electoral disaster the party following the coalition years
Leader Sir Ed Davey said: "This stunning victory shows the Liberal Democrats are firmly back in the West Country."
Lib Dem Sarah Dyke won Somerton (Image: PA)
This interactive requires javascript to work.
Interactive
This interactive requires javascript to work.
Interactive
This interactive requires javascript to work.
Interactive
This interactive requires javascript to work.
Interactive
Interactive
Interactive
Interactive
Related articles Commons in stitches over Rishi Sunak's brutal Keir Starmer slap down in PMQs Boris Johnson voted most popular Tory politician by readers – ‘No contest’ Rishi Sunak warned triple by-election defeat will land Tories in 'deep trouble' When do we get by-elections results? Full timeline as Tories facing 3 defeats Rishi Sunak maps out path to victory with six-word rallying cry in Tory meeting