There are 73 parliamentary constituencies in London and at the last general election, in 2017, Labour won 49 of them, the Conservatives 21 and the Liberal Democrats 3. As voting began for this year’s national poll, there looked to be a chance of around a dozen of those changing hands, though it seemed more likely to be just a handful. Or maybe even none.
In the event, just four have changed hands. The Conservatives have gained two seats: Kensington from Labour and Carshalton & Wallington from the Liberal Democrats. Labour have gained Putney from the Conservatives. And the Liberal Democrats have gained Richmond Park from the Conservatives.
In other words, the Tories have gained two and lost two, and both Labour and the Lib Dems have gained one and lost one, meaning all three parties have ended up with exactly the same number of seats as two years ago. So the final tally is again Labour 49, Conservatives 21 and Lib Dems 3.
And while it a case of as you were in London, the Conservatives, led by former London Mayor Boris Johnson, have won a clear general election victory by making big gains in other parts of the country. Once again, the capital is different. Here are all 73 London results:
BARKING – Labour hold. Back in 2010, Margaret Hodge faced and defeated a challenge from British National Party leader Nick Griffin. Her seat has been safe ever since and she won with ease, despite a 6.6 per cent vote share reduction.
BATTERSEA – Labour hold. A surprise winner in 2017, Marsha de Cordova held her ground.
BECKENHAM – Conservative hold. Bob Stewart lost 5.4 per cent of his vote share in this Outer London seat.
BERMONDSEY & OLD SOUTHWARK – Labour hold. As you were for Corbynsceptic Neil Coyle, dashing Lib Dem comeback hopes.
BETHNAL GREEN & BOW – Labour hold. Rushanara Ali’s vote share was a massive 72.7 per cent.
BEXLEYHEATH & CRAYFORD – Conservative hold. Easy win for David Evennett, who slightly strengthened his position.
BRENT CENTRAL – Labour hold. Corbyn loyalist Dawn Butler took a 64.7 per cent vote share, though that was 8.4 per cent down on 2017.
BRENT NORTH – Labour hold. Barry Gardiner got more than half the votes, but lost 11.1 per cent of the share compared with two years ago.
BRENTFORD & ISLEWORTH – Labour hold. A drop of 7.2 per cent for Ruth Cadbury, but her seat remains well short of reverting to being the marginal it was until quite recently.
BROMLEY & CHISLEHURST – Conservative hold. Moderate Bob Neill comfortably maintained his majority.
CAMBERWELL & PECKHAM – Labour hold. Harriet Harman lost a little ground, but still got more than seven votes out of ten.
CARSHALTON & WALLINGTON – CONSERVATIVE GAIN. Tom Brake won this consistently marginal seat for the Lib Dems in 1997 and has fought off a succession of Tory challenges, but they have finally overhauled him in this Leave-leaning seat. Elliot Colburn won by 629 votes.
CHELSEA & FULHAM – Conservative hold. Greg Hands saw only a tiny fall in his vote share and took nearly twice as many as the Lib Dems in second place.
CHINGFORD & WOODFORD GREEN – Conservative hold. Labour finished only 1,262 votes behind, but Iain Duncan Smith was not unseated as planned.
CHIPPING BARNET – Conservative hold. Labour again came very close to defeating Theresa Villiers, though a little close than two years ago.
CITIES OF LONDON & WESTMINSTER – Conservative hold. Nickie Aiken will have to stand down as leader of Westminster Council having held off Lib Dem Chuka Umunna by nearly 4,000 votes with Labour finishing third.
CROYDON CENTRAL – Labour hold. Labour inched to victory in this long-standing ex-Tory target in 2017 and Sarah Jones has held it by a margin of nearly 6,000 votes. Both she and the runner-up Tory lost vote share while the Lib Dems, Greens and Brexit Party gained some, but the quantities in all cases were tiny.
CROYDON NORTH – Labour hold. The Libs Dems and the Tories made small inroads into Steve Reed’s lead, but the result was never in doubt.
CROYDON SOUTH – Conservative hold. Chris Philp’s big majority was barely disturbed.
DAGENHAM & RAINHAM – Labour hold. The Conservatives just failed to hit this Labour Leave London target, with Jon Cruddas hanging on to this persistently marginal seat by 293 votes.
DULWICH & WEST NORWOOD – Labour hold. Helen Hayes won with great ease. Green Party co-leader Johnathan Bartley finished second, a beneficiary of the Lib Dems standing aside.
EALING CENTRAL & ACTON – Labour hold. There was an 11.7 per cent vote share increase for the Lib Dems here, but they still finished third behind clear winner Rupa Huq.
EALING NORTH – Labour hold. James Murray won’t be Sadiq Khan’s housing deputy for much longer, having become an MP for the first time. Labour’s vote share slipped by 9.5 per cent, but still exceeded 55 per cent.
EALING SOUTHALL – Labour hold. Virendra Sharma, who was spared a reselection contest by the timing of the election, won with more than 60 per cent of the vote.
EAST HAM – Labour hold. Another gigantic win for Stephen Timms – 76.3 per cent and 41,703 votes – albeit a tiny portion less gigantic than last time.
EDMONTON – Labour hold. Though a hardcore Corbynite, Kate Osamor had been “triggered” by her local party but was saved from possible deselection by the election. She won easily.
ELTHAM – Labour hold. The Conservative came within 3,200 votes of capturing this Leave-ish marginal they’ve been after for years, but Clive Efford has triumphed again.
ENFIELD NORTH – Labour hold. The zany Corbynite local party might have selected a liability as its candidate, but ended up picking Hackney councillor Feryal Clark. She finished a tidy 6,492 votes ahead of a Tory in the seat formerly held by defector from Labour, Joan Ryan.
ENFIELD SOUTHGATE – Labour hold. Bambos Charalambous was in a degree of danger from the Conservatives but in the end they didn’t really threaten.
ERITH & THAMESMEAD – Labour hold. New candidate Abena Oppong-Asare suffer a 9.5 per cent share drop, enabling her Tory competitor to get within 3,758 votes with the Brexit Party taking 2,246 to finish third.
FELTHAM & HESTON – Labour hold. Seema Malhotra’s vote share fell by 9.2 per cent but she still won with room to spare.
FINCHLEY & GOLDERS GREEN – Conservative hold. In the end, it was pretty easy for MikeFreer, with Luciana Berger’s surge into second place as a Lib Dem still leaving her 6,562 votes behind.
GREENWICH & WOOLWICH – Labour hold. Over 30,000 votes for Matthew Pennycook in this very safe Labour seat.
HACKNEY NORTH & STOKE NEWINGTON – Labour hold. Nearly 40,000 votes and a 70.3 per cent vote share for Diane Abbott.
HACKNEY SOUTH & SHOREDITCH – Labour hold. Nearly 40,000 votes and a 73.3 per cent vote share for Meg Hillier.
HAMMERSMITH – Labour hold. Back in 201o, the Tories under David Cameron thought they could win this seat. They failed, and Andy Slaughter has remained firmly in place ever since.
HAMPSTEAD & KILBURN – Labour hold. Tulip Siddiq suffered one of the biggest drops in vote share – just over 10 per cent. But her Tory chief challenger shed 8.2 per cent of his own, and though the Lib Dems picked up ground they still finished third.
HARROW EAST – Conservative hold. Bob Blackman wins again, and with a larger majority than last time.
HARROW WEST – Labour hold. Another former marginal now insulated against minor adverse swings. Gareth Thomas won by 8,692 votes.
HAYES & HARLINGTON – Labour hold. Shadow chancellor John McDonnell lost 10.7 per cent of his vote share, but although his Tory challenger picked up 6.1 per cent it was nowhere near enough.
HENDON – Conservative hold. A small consolidation by Matthew Offord in this Barnet marginal.
HOLBORN & St PANCRAS – Labour hold. Keir Starmer still miles ahead.
HORNCHURCH & UPMINSTER – Conservatives hold. An easy wind for Julia Lopez at the Essex border, complete with 5.5 per cent vote share hike.
HORNSEY & WOOD GREEN – Labour hold. The Lib Dems picked up nearly 10 per cent, but Catherine West still won by nearly 20,000.
ILFORD NORTH – Labour hold. Wes Streeting has built a buffer of support and it held firm to the tune of over 5,000 votes.
ILFORD SOUTH – Labour hold. Sam Tarry, controversially selected, was one of the handful to lose more than 10 per cent vote share but still took more than 65 per cent. The man he replaced as Labout candidate, Mike Gapes, got 3,891 votes running for the Independent Group for Change.
ISLINGTON NORTH – Labour hold. A win for Jeremy Corbyn.
ISLINGTON SOUTH & FINSBURY – Labour hold. The Lib Dems came a rising second, but Emily Thornberry won without trouble.
KENSINGTON – CONSERVATIVE GAIN. Most opinion polling suggested that Felicity Buchan would restore this seat to Tory hands, but not all of it did and the Lib Dems ran one of its star converts, Sam Gyimah. In the end, though, incumbent Emma Dent Coad was a clear second, and only 150 votes behind the winner. In 2017, she’d won by just 20.
KINGSTON & SURBITON – Liberal Democrat hold. Ed Davey strengthened his grip, extending his winning margin to a sturdy 10,489.
LEWISHAM DEPTFORD – Labour hold. Over 39,000 votes and a 70.8 per cent vote share here for incumbent Vicky Foxcroft.
LEWISHAM EAST – Labour hold. Another seat where Labour’s share fell and the Lib Dems’ rose, but the Tory still came second and Janet Daby still finished a long way in front.
LEWISHAM WEST & PENGE – Labour hold. See above, but in relation to Ellie Reeves won again.
LEYTON & WANSTEAD – Labour hold. John Cryer stays in place, with over 20,000 votes to share.
MITCHAM & MORDEN – Labour hold. Siobhain McDonagh stays in place with over 16,000 votes to spare.
OLD BEXLEY & SIDCUP – Conservative hold. Ex-minster James Brokenshire was never in any danger.
ORPINGTON – Conservative hold. The successor to the Prime Minister’s brother Jo Johnson is leader of the London Assembly Conservative Group Gareth Bacon. he racked up nearly 31,000 votes.
POPLAR & LIMEHOUSE – Labour hold. Controversial Corbynite Apsana Begum has succeeded the long-serving Jim Fitzpatrick, winning 38,660 votes.
PUTNEY – LABOUR GAIN. Fleur Anderson’s capture of this formerly Tory seat was Labour’s one moment of triumph, as opposed to relief, on the night. She even increased her party’s vote share.
RICHMOND PARK – LIBERAL DEMOCRAT GAIN. Sarah Olney won her third contest with Zac Goldsmith in this very Remain seat by the handsome margin of 7,766, having been just edged out last time. The only seat where the “Lib Dem surge” was big enough to make a gain.
ROMFORD – Conservative hold. Arch Brexiter Andrew Rosindell won nearly 31,000 votes and consolidated his already comfortable position.
RUISLIP, NORTHWOOD & PINNER – Conservative hold. The Tories had a new candidate here in David Simmonds. He secured the seat without difficulty.
STREATHAM – Labour hold. Although Bell Ribeiro-Addy lost 13.7 per cent of Labour’s previous vote share – the biggest of the election in London – she still finished far ahead of the Lib Dem runner-up.
SUTTON & CHEAM – Conservative hold. the Lib Dems got a little closer to winning a seat they used to hold, but Paul Scully had 8,351 votes to spare.
TOOTING – Labour hold. Rosena Allin-Khan cruised to victory in this one-time marginal formerly held by Sadiq Khan.
TOTTENHAM – Labour hold. Impregnable fortress of David Lammy, who got 35,621 votes and a 76 per cent vote share.
TWICKENHAM – Liberal Democrat hold. Munira Wilson takes over from Vince Cable and has built on his majority too.
UXBRIDGE & SOUTH RUISLIP – Conservative hold. A victory for Boris Johnson, as expected. Labour fell further behind.
VAUXHALL – Labour hold. London Assembly Member Florence Eshalomi achieved one of Labour’s best performances, losing only one per cent of vote share in retaining the seat Kate Hoey has vacated.
WALTHAMSTOW – Labour hold. A 76.1 vote share percentage win for Stella Creasy and brand new baby.
WEST HAM – Labour hold. Lyn Brown stacked up a massive 42,181 votes in retaining this rock solid Labour seat.
WESTMINSTER NORTH – Labour hold. A small drop in Karen Buck’s majority, but she still got 54.2 per cent of the vote in this one-time marginal.
WIMBLEDON – Conservative hold. Lib Dem Paul Kohler came close to unseating incumbent Stephen Hammond, but fell short by 628 votes.
On London has been providing the fullest possible coverage of the 2019 general election campaign in the capital, along with other big issues for the city. The website depends on financial support from readers to pay its freelance writers. Just £5 a month makes an important difference. To donate to On London, click here. Thank you.