UK election: Six key lessons from a surprise result
Rather than producing a "strong and stable" government, Theresa May's election gamble has created uncertainty. So, what can we learn?
There was a Brexit effect - but not the one Theresa May wanted
Areas where most people voted Remain swung very differently from those where most voted Leave.
On the one hand, the Conservatives often secured a swing to themselves in constituencies where the Leave vote was highest.
These were nearly all places where UKIP performed best in 2015 - and so were the areas where there were most UKIP votes for the Conservatives to snatch away.
But seats which voted Remain last year - and where there were relatively few UKIP voters in 2015 - saw Labour pull off some of its best performances.
It seems to be the case that Mrs May's brand of Brexit may have helped to squeeze the UKIP vote, but that at the same time it put off some Remain voters.
As a result of these patterns, while, at just under 44%, the Conservative Party secured its highest share of the vote since Mrs Thatcher's first election victory in 1979, it was not enough for an overall majority.
This was because, at 41%, Labour's vote also rose to its highest level since Tony Blair's first victory in 1997.
A question of class
One consequence of this divergent pattern between Remain and Leave areas is that there has been a marked change in the social geography of the Conservative vote.
Traditionally, the party holds most appeal for middle class voters.
But Leave voters were disproportionately working class.
Consequently, at this election the Conservative vote increased least in middle class seats, rising only two points in the constituencies with the highest proportion of middle class voters.
In contrast, the party's vote rose by no fewer than nine points in seats with the highest proportion of working class voters.
Brexit has therefore served to undermine one of the traditional features of the geography of voting in Britain.
Jeremy Corbyn won over young voters
Labour has seemingly been highly successful in getting young voters and other former abstainers to turn out and vote - and for them - just as Jeremy Corbyn intended.
More generally, in England and Wales there was only a 2.5% swing to Labour in seats where fewer than 7% of the population is aged 18-24, but a swing of 5% in seats where at least one in 10 people is of that age.
Meanwhile, turnout increased most in constituencies where Labour was strongest last time, and, at the same time, its vote increased most where the turnout went up by the highest amount.
But although Labour will be delighted at having denied the Conservatives an overall majority, its own success should not be exaggerated.
Its tally of 262 seats is only a handful higher than the total that the party won in 2010, when Gordon Brown's administration was ejected from office.
Labour is still a long way away from winning a majority for itself.
SNP snipped back
Although the SNP is still the largest party in Scotland, it lost more than a third of its Westminster seats - falling back to 35 seats overall.
This will be a severe blow to the party's morale as it supposedly tries to embark on a second independence referendum.
|Constituency (out of 650 so far)||Result||2015 Majority||2017 Majority|
|Banff & Buchan||CON GAIN FROM SNP||14339||3693|
|Coatbridge, Chryston & Bellshill||LAB GAIN FROM SNP||11501||1586|
|Ayr, Carrick & Cumnock||CON GAIN FROM SNP||11265||2774|
|Angus||CON GAIN FROM SNP||11230||2645|
|Stirling||CON GAIN FROM SNP||10480||148|
|Ochil & South Perthshire||CON GAIN FROM SNP||10168||3359|
|Rutherglen & Hamilton West||LAB GAIN FROM SNP||9975||265|
|Kirkcaldy & Cowdenbeath||LAB GAIN FROM SNP||9974||259|
|Midlothian||LAB GAIN FROM SNP||9859||885|
|Canterbury||LAB GAIN FROM CON||9798||187|
|Oxford West & Abingdon||LD GAIN FROM CON||9582||816|
|Glasgow North East||LAB GAIN FROM SNP||9222||242|
|Moray||CON GAIN FROM SNP||9065||4159|
|Gordon||CON GAIN FROM SNP||8687||2607|
|Battersea||LAB GAIN FROM CON||7938||2416|
|Kensington||LAB GAIN FROM CON||7361||20|
|Aberdeen South||CON GAIN FROM SNP||7230||4752|
|Aberdeenshire West & Kincardine||CON GAIN FROM SNP||7033||7949|
|East Lothian||LAB GAIN FROM SNP||6803||3083|
|Warwick & Leamington||LAB GAIN FROM CON||6606||1206|
|Reading East||LAB GAIN FROM CON||6520||3749|
|Dumfries & Galloway||CON GAIN FROM SNP||6514||5643|
|Foyle||SF GAIN FROM SDLP||6046||169|
|South Down||SF GAIN FROM SDLP||5891||2446|
|Colne Valley||LAB GAIN FROM CON||5378||915|
|Mansfield||CON GAIN FROM LAB||5315||1057|
|Portsmouth South||LAB GAIN FROM CON||5241||1554|
|Stockton South||LAB GAIN FROM CON||5046||888|
|Bristol North West||LAB GAIN FROM CON||4944||4761|
|High Peak||LAB GAIN FROM CON||4894||2322|
|Stroud||LAB GAIN FROM CON||4866||687|
|Enfield Southgate||LAB GAIN FROM CON||4753||4355|
|Caithness, Sutherland & Easter Ross||LD GAIN FROM SNP||3844||2044|
|Bath||LD GAIN FROM CON||3833||5694|
|Ipswich||LAB GAIN FROM CON||3733||831|
|Renfrewshire East||CON GAIN FROM SNP||3718||4712|
|Crewe & Nantwich||LAB GAIN FROM CON||3620||48|
|Clacton||CON GAIN FROM UKIP||3437||15828|
|Edinburgh West||LD GAIN FROM SNP||3210||2988|
|Ceredigion||PC GAIN FROM LD||3067||104|
|Keighley||LAB GAIN FROM CON||3053||249|
|Leeds North West||LAB GAIN FROM LD||2907||4224|
|Kingston & Surbiton||LD GAIN FROM CON||2834||4124|
|Warrington South||LAB GAIN FROM CON||2750||2549|
|Stoke-on-Trent South||CON GAIN FROM LAB||2539||663|
|Sheffield Hallam||LAB GAIN FROM LD||2353||2125|
|Middlesbrough South & Cleveland East||CON GAIN FROM LAB||2268||1020|
|Dunbartonshire East||LD GAIN FROM SNP||2167||5339|
|Cardiff North||LAB GAIN FROM CON||2137||4174|
|Twickenham||LD GAIN FROM CON||2017||9762|
|Walsall North||CON GAIN FROM LAB||1937||2601|
|Peterborough||LAB GAIN FROM CON||1925||607|
|Derbyshire North East||CON GAIN FROM LAB||1883||2861|
|Lincoln||LAB GAIN FROM CON||1443||1538|
|Southport||CON GAIN FROM LD||1322||2914|
|Bedford||LAB GAIN FROM CON||1097||789|
|South Antrim||DUP GAIN FROM UUP||949||3208|
|Belfast South||DUP GAIN FROM SDLP||906||1996|
|Weaver Vale||LAB GAIN FROM CON||806||3928|
|Eastbourne||LD GAIN FROM CON||733||1609|
|Brighton Kemptown||LAB GAIN FROM CON||690||9868|
|Fermanagh & South Tyrone||SF GAIN FROM UUP||530||875|
|Plymouth Sutton & Devonport||LAB GAIN FROM CON||523||6807|
|Bury North||LAB GAIN FROM CON||378||4375|
|Berwickshire, Roxburgh & Selkirk||CON GAIN FROM SNP||328||11060|
|Vale of Clwyd||LAB GAIN FROM CON||237||2379|
|Croydon Central||LAB GAIN FROM CON||165||5652|
|Derby North||LAB GAIN FROM CON||41||2015|
|Gower||LAB GAIN FROM CON||27||3269|
The party suffered the misfortune of finding that its vote fell most where the party was previously strongest, such as the 21 point drop from 60% in 2015 to 39% now in Bannff and Buchan, enabling the Conservatives to win the seat.
Key losses included its former leader Alex Salmond and its current deputy leader Angus Robertson.
Liberal Democrats' mixed bag
It was a mixed night for Tim Farron's party - gaining eight seats but losing four.
The party has on average seen a small increase in its support in constituencies with the largest number of those with degrees, most notably in London.
But otherwise it has typically fallen back.
The damage that the party suffered from its involvement in the coalition in the 2010-15 parliament has not begun to be repaired.
Almost everybody lost
This is a result that brought disappointment to all parties.
The Conservatives lost their majority.
Labour suffered its third defeat in a row.
The Liberal Democrats found themselves treading water.
The SNP's independence bandwagon came to a juddering halt.
And UKIP imploded.
It is not only Conservatives who will be asking why Mrs May changed her mind about holding a snap election.
The only winners are perhaps the DUP - to whom she seems to have awarded the role of kingmakers.
Sorry, your browser cannot display this content.
Find your constituency and candidates
Enter a postcode or seat name