The Lib Dems gained a seat from the Conservatives in Hertfordshire.
The Lib Dems gained a seat from the Green Party in North Yorkshire.
Labour lost a seat to an independent in Newham. The Lib Dems gained a seat from an independent in Cambridge.
The Lib Dems gained a seat from the Conservatives in Bolton. The Green Party gained a seat from an independent in North Somerset. Labour gained a seat from the SNP in North Lanarkshire.
The Conservatives gained a seat from an independent in South Holland.
Labour gained a seat from the Green Party in Melton. The Lib Dems gained a seat from a residents group in Elmbridge and a seat from the Conservatives in Buckinghamshire.
The Green Party held seats in Burnley. Labour held seats in Coventry and Waltham Forest.
The Conservatives lost a seat to the Lib Dems in Shropshire and two seats to the Green Party in Worcester.
Even taking by-election turnouts into account, these results are terrible for Rishi Sunak, and suggest that Sir Keir is on course to win the next general election
The People Against Bureaucracy Group held a seat in Cheltenham. The Lib Dems held a seat in Suffolk.
Such was the state of the polls going into this race that even a narrow win would have seemed like a setback for Sir Keir Starmer and Anas Sarwar, the Scottish Labour leader. No fear of that now, and no comfort for Humza Yousaf.
Labour held seats in Haringey, Lambeth and Tamworth.
Shropshire Council, under Conservative control, has generally been satisfactory. Progress has been made in addressing road maintenance which has long been a source of frustration for residents. The Council was not the target of the voters’ ire.
An independent gained a seat from the Lib Dems on Highland Council.
If you want people to feel motivated to go out and vote Conservative, delivering some Conservative policies would be a good start.