Liberal Democrats › 2021
Liberal Democrats in 2021
Polling day: 6 May 2021. 227 councils held elections.
Summary
- Contested in 219 of 227 councils; ran for 4,623 seats.
- Won 588 seats (12.7% of seats up) on 15.1% of the vote.
- Net change vs each council's last appearance in this dataset: -572 seats across 33 councils up, 115 councils down, 62 flat, 9 new to the window.
- Council-control change: 0 gained, 2 lost.
Where Liberal Democrats led, as of 2021
Councils where Liberal Democrats was the largest single party in the most recent composition snapshot at or before 2021. Greens ring councils gained at this election; reds ring those lost. Click any hex to drill in.
As of 2021
29 councils led
−2 lost this cycle
Grey hexes are councils where another party led, or where we don't have a snapshot for that year.
Council-control changes
Councils where the largest party in the running composition changed at this election. How a flip is defined →
Lost (2)
- Arun to Conservative Party
- Portsmouth to Conservative Party
Where the seats came from
Per-council net seat change vs each council's prior appearance in our dataset (typically that council's previous all-out election or its last by-thirds slice). "Debut" rows are councils whose first cycle in our window is 2021 — usually the result of a boundary reorganisation or being a county outside our 2021 LEH coverage.
Seats gained (33 councils)
| Council | Won | Last cycle | Net | Vote share | Seat share |
|---|---|---|---|---|---|
| County Durham | 17 | 1 (2019) | +16 | 12.7% | 13.5% |
| Buckinghamshire | 15 | 4 (2017) | +11 | 20.1% | 10.2% |
| Cambridge | 15 | 7 (2019) | +8 | 26.2% | 27.8% |
| Wiltshire | 27 | 20 (2017) | +7 | 28.1% | 27.6% |
| Oxford | 12 | 5 (2018) | +7 | 18.2% | 19.4% |
| St Albans | 17 | 12 (2019) | +5 | 43.7% | 56.7% |
| Gloucester | 12 | 7 (2016) | +5 | 26.4% | 24.5% |
| Eastleigh | 16 | 12 (2019) | +4 | 44.0% | 80.0% |
| West Oxfordshire | 7 | 3 (2019) | +4 | 24.1% | 25.9% |
| Cheltenham | 20 | 17 (2018) | +3 | 42.3% | 66.7% |
| Watford | 13 | 10 (2019) | +3 | 41.9% | 68.4% |
| Three Rivers | 11 | 8 (2019) | +3 | 37.8% | 57.9% |
| Woking | 7 | 4 (2019) | +3 | 33.1% | 41.2% |
| Liverpool | 6 | 3 (2019) | +3 | 20.6% | 19.4% |
| Northumberland | 3 | 0 (2019) | +3 | 8.2% | 4.5% |
| Rotherham | 3 | 0 (2016) | +3 | 7.9% | 5.1% |
| Shropshire | 14 | 12 (2017) | +2 | 22.0% | 19.2% |
| Tunbridge Wells | 7 | 5 (2019) | +2 | 24.6% | 29.2% |
| Basingstoke & Deane | 6 | 4 (2019) | +2 | 18.3% | 9.4% |
| Tandridge | 5 | 3 (2019) | +2 | 24.0% | 22.7% |
| Stroud | 4 | 2 (2016) | +2 | 6.6% | 6.6% |
| Halton | 3 | 1 (2019) | +2 | 11.7% | 5.6% |
| Worcester | 2 | 0 (2019) | +2 | 9.3% | 9.1% |
| Kingston Upon Hull | 10 | 9 (2019) | +1 | 38.9% | 52.6% |
| Rugby | 4 | 3 (2019) | +1 | 15.8% | 16.0% |
| Stevenage | 3 | 2 (2019) | +1 | 15.5% | 15.0% |
| Bradford | 3 | 2 (2019) | +1 | 7.7% | 9.1% |
| Rochford | 2 | 1 (2019) | +1 | 15.3% | 10.0% |
| Ipswich | 2 | 1 (2019) | +1 | 10.8% | 6.5% |
| North East Lincolnshire | 2 | 1 (2019) | +1 | 9.9% | 14.3% |
| Swindon | 1 | 0 (2019) | +1 | 7.7% | 4.8% |
| Lincoln | 1 | 0 (2019) | +1 | 7.6% | 5.3% |
| Salford | 1 | 0 (2019) | +1 | 6.2% | 1.7% |
Seats lost (115 councils)
| Council | Won | Last cycle | Net | Vote share | Seat share |
|---|---|---|---|---|---|
| Chelmsford | 4 | 31 (2019) | -27 | 29.0% | 44.4% |
| North Norfolk | 4 | 30 (2019) | -26 | 35.7% | 36.4% |
| Cornwall | 13 | 38 (2017) | -25 | 19.2% | 14.9% |
| Teignbridge | 4 | 26 (2019) | -22 | 36.0% | 40.0% |
| Vale Of White Horse | 10 | 31 (2019) | -21 | 46.4% | 83.3% |
| Oadby & Wigston | 4 | 24 (2019) | -20 | 41.7% | 80.0% |
| Arun | 2 | 22 (2019) | -20 | 20.2% | 15.4% |
| North Devon | 2 | 21 (2019) | -19 | 22.6% | 25.0% |
| Hinckley & Bosworth | 3 | 21 (2019) | -18 | 32.6% | 33.3% |
| South Cambridgeshire | 13 | 30 (2018) | -17 | 45.6% | 86.7% |
| Dacorum | 4 | 19 (2019) | -15 | 30.0% | 40.0% |
| Cotswold | 4 | 18 (2019) | -14 | 36.7% | 50.0% |
| Chesterfield | 3 | 17 (2019) | -14 | 24.7% | 33.3% |
| Eastbourne | 6 | 18 (2019) | -12 | 43.1% | 66.7% |
| Guildford | 5 | 17 (2019) | -12 | 26.8% | 50.0% |
| New Forest | 2 | 13 (2019) | -11 | 22.6% | 20.0% |
| Mid Devon | 1 | 12 (2019) | -11 | 20.6% | 16.7% |
| Waverley | 4 | 14 (2019) | -10 | 30.2% | 44.4% |
| East Cambridgeshire | 3 | 13 (2019) | -10 | 34.2% | 37.5% |
| Mid Sussex | 3 | 13 (2019) | -10 | 28.8% | 25.0% |
| Horsham | 3 | 13 (2019) | -10 | 27.6% | 25.0% |
| Test Valley | 2 | 12 (2019) | -10 | 32.2% | 28.6% |
| Broadland | 2 | 12 (2019) | -10 | 19.7% | 15.4% |
| Harborough | 1 | 11 (2019) | -10 | 26.8% | 14.3% |
| Surrey Heath | 0 | 10 (2019) | -10 | 32.1% | 0.0% |
| Ribble Valley | 0 | 10 (2019) | -10 | 12.3% | 0.0% |
| West Lindsey | 3 | 12 (2019) | -9 | 25.7% | 33.3% |
| Stratford On Avon | 2 | 11 (2019) | -9 | 29.7% | 15.4% |
| Chichester | 2 | 11 (2019) | -9 | 21.2% | 20.0% |
| South Norfolk | 1 | 10 (2019) | -9 | 19.9% | 8.3% |
| South Oxfordshire | 4 | 12 (2019) | -8 | 23.3% | 30.8% |
| South Hams | 2 | 10 (2019) | -8 | 24.0% | 28.6% |
| Malvern Hills | 1 | 9 (2019) | -8 | 13.1% | 12.5% |
| Tonbridge & Malling | 1 | 9 (2019) | -8 | 10.7% | 14.3% |
| Spelthorne | 0 | 8 (2019) | -8 | 16.1% | 0.0% |
| Warwick | 2 | 9 (2019) | -7 | 17.0% | 14.3% |
| Preston | 2 | 9 (2019) | -7 | 14.6% | 8.0% |
| Derbyshire Dales | 1 | 8 (2019) | -7 | 19.1% | 16.7% |
| East Hampshire | 0 | 7 (2019) | -7 | 25.1% | 0.0% |
| Uttlesford | 0 | 7 (2019) | -7 | 10.7% | 0.0% |
| Tewkesbury | 2 | 8 (2019) | -6 | 30.6% | 28.6% |
| Huntingdonshire | 1 | 7 (2018) | -6 | 16.5% | 5.9% |
| Broxtowe | 1 | 7 (2019) | -6 | 12.4% | 11.1% |
| Rother | 1 | 7 (2019) | -6 | 11.1% | 11.1% |
| East Devon | 0 | 6 (2019) | -6 | 8.9% | 0.0% |
| Lewes | 3 | 8 (2019) | -5 | 25.8% | 33.3% |
| Canterbury | 1 | 6 (2019) | -5 | 15.7% | 12.5% |
| East Hertfordshire | 1 | 6 (2019) | -5 | 14.7% | 10.0% |
| Blaby | 1 | 6 (2019) | -5 | 13.8% | 12.5% |
| Mole Valley | 7 | 11 (2019) | -4 | 37.6% | 36.8% |
| Wychavon | 1 | 5 (2019) | -4 | 14.3% | 8.3% |
| South Ribble | 1 | 5 (2019) | -4 | 13.3% | 12.5% |
| Swale | 1 | 5 (2019) | -4 | 9.3% | 14.3% |
| North West Leicestershire | 0 | 4 (2019) | -4 | 9.5% | 0.0% |
| Warrington | 8 | 11 (2016) | -3 | 16.0% | 13.8% |
| Mid Suffolk | 2 | 5 (2019) | -3 | 17.0% | 20.0% |
| Wealden | 1 | 4 (2019) | -3 | 17.9% | 6.7% |
| Peterborough | 1 | 4 (2019) | -3 | 10.8% | 4.3% |
| Lancaster | 0 | 3 (2019) | -3 | 8.8% | 0.0% |
| Babergh | 0 | 3 (2019) | -3 | 8.7% | 0.0% |
| Wyre Forest | 0 | 3 (2019) | -3 | 7.7% | 0.0% |
| North East Derbyshire | 0 | 3 (2019) | -3 | 7.7% | 0.0% |
| Rushcliffe | 0 | 3 (2019) | -3 | 7.5% | 0.0% |
| High Peak | 0 | 3 (2019) | -3 | 6.3% | 0.0% |
| Newcastle-Under-Lyme | 0 | 3 (2018) | -3 | 4.8% | 0.0% |
| Sheffield | 9 | 11 (2019) | -2 | 20.9% | 31.0% |
| Stockport | 8 | 10 (2019) | -2 | 30.6% | 38.1% |
| Gosport | 7 | 9 (2018) | -2 | 33.3% | 31.8% |
| Wokingham | 6 | 8 (2019) | -2 | 35.4% | 33.3% |
| Newcastle Upon Tyne | 6 | 8 (2019) | -2 | 19.5% | 21.4% |
| North Hertfordshire | 4 | 6 (2019) | -2 | 21.1% | 16.7% |
| Welwyn Hatfield | 3 | 5 (2019) | -2 | 22.2% | 12.0% |
| Milton Keynes | 3 | 5 (2019) | -2 | 16.3% | 14.3% |
| Sefton | 2 | 4 (2019) | -2 | 14.0% | 8.3% |
| Kirklees | 2 | 4 (2019) | -2 | 10.7% | 8.0% |
| Sevenoaks | 1 | 3 (2019) | -2 | 17.5% | 16.7% |
| Hertsmere | 1 | 3 (2019) | -2 | 15.0% | 14.3% |
| Runnymede | 1 | 3 (2019) | -2 | 13.6% | 5.3% |
| Southend On Sea | 1 | 3 (2019) | -2 | 11.4% | 5.3% |
| Bromsgrove | 1 | 3 (2019) | -2 | 11.3% | 11.1% |
| East Suffolk | 1 | 3 (2019) | -2 | 10.0% | 3.8% |
| Bolton | 1 | 3 (2019) | -2 | 9.7% | 4.8% |
| Reigate & Banstead | 1 | 3 (2019) | -2 | 9.6% | 3.6% |
| Torridge | 0 | 2 (2019) | -2 | 13.7% | 0.0% |
| Epsom & Ewell | 0 | 2 (2019) | -2 | 13.6% | 0.0% |
| Folkestone & Hythe | 0 | 2 (2019) | -2 | 11.0% | 0.0% |
| Tendring | 0 | 2 (2019) | -2 | 8.8% | 0.0% |
| Fenland | 0 | 2 (2019) | -2 | 7.2% | 0.0% |
| Newark & Sherwood | 0 | 2 (2019) | -2 | 6.9% | 0.0% |
| Gedling | 0 | 2 (2019) | -2 | 5.7% | 0.0% |
| South Kesteven | 0 | 2 (2019) | -2 | 2.4% | 0.0% |
| Brentwood | 4 | 5 (2019) | -1 | 30.1% | 25.0% |
| Derby | 2 | 3 (2019) | -1 | 15.4% | 11.1% |
| Burnley | 2 | 3 (2019) | -1 | 13.6% | 9.5% |
| Leeds | 2 | 3 (2019) | -1 | 8.5% | 5.9% |
| Norwich | 2 | 3 (2019) | -1 | 8.2% | 7.7% |
| Solihull | 1 | 2 (2019) | -1 | 12.2% | 5.6% |
| St Helens | 1 | 2 (2019) | -1 | 8.6% | 5.9% |
| Forest Of Dean | 1 | 2 (2019) | -1 | 8.3% | 12.5% |
| Trafford | 1 | 2 (2019) | -1 | 8.0% | 4.0% |
| Bury | 1 | 2 (2019) | -1 | 8.0% | 5.3% |
| Isle Of Wight | 1 | 2 (2017) | -1 | 5.2% | 2.6% |
| Rushmoor | 0 | 1 (2019) | -1 | 14.9% | 0.0% |
| Manchester | 0 | 1 (2019) | -1 | 10.2% | 0.0% |
| Lichfield | 0 | 1 (2019) | -1 | 9.4% | 0.0% |
| Fylde | 0 | 1 (2019) | -1 | 8.4% | 0.0% |
| West Devon | 0 | 1 (2019) | -1 | 8.0% | 0.0% |
| Exeter | 0 | 1 (2019) | -1 | 7.8% | 0.0% |
| Erewash | 0 | 1 (2019) | -1 | 7.1% | 0.0% |
| Blackburn With Darwen | 0 | 1 (2019) | -1 | 5.0% | 0.0% |
| Bassetlaw | 0 | 1 (2019) | -1 | 4.8% | 0.0% |
| Bolsover | 0 | 1 (2019) | -1 | 3.7% | 0.0% |
| Staffordshire Moorlands | 0 | 1 (2019) | -1 | 2.4% | 0.0% |
| East Staffordshire | 0 | 1 (2019) | -1 | 1.9% | 0.0% |
| Cannock Chase | 0 | 1 (2019) | -1 | 1.8% | 0.0% |
Debut councils (9)
| Council | Won | Vote share | Seat share |
|---|---|---|---|
| Bristol, City Of | 8 | 14.7% | 11.4% |
| West Northamptonshire | 5 | 15.8% | 5.4% |
| Maldon | 0 | 9.3% | 0.0% |
| North Northamptonshire | 0 | 6.9% | 0.0% |
| Kings Lynn & West Norfolk | 0 | 5.8% | 0.0% |
| South Derbyshire | 0 | 3.2% | 0.0% |
| North Warwickshire | 0 | 0.7% | 0.0% |
| Hyndburn | 0 | 0.6% | 0.0% |
| Nuneaton & Bedworth | 0 | 0.1% | 0.0% |
No change (62)
- Winchester 11 seats (unchanged from 2019)
- Portsmouth 6 seats (unchanged from 2019)
- Colchester 6 seats (unchanged from 2019)
- Maidstone 6 seats (unchanged from 2019)
- Gateshead 5 seats (unchanged from 2019)
- Pendle 5 seats (unchanged from 2019)
- Sunderland 5 seats (unchanged from 2019)
- Hart 4 seats (unchanged from 2019)
- Elmbridge 3 seats (unchanged from 2019)
- Fareham 3 seats (unchanged from 2018)
- Oldham 3 seats (unchanged from 2019)
- Barnsley 3 seats (unchanged from 2019)
- Cherwell 2 seats (unchanged from 2019)
- Calderdale 2 seats (unchanged from 2019)
- Wirral 2 seats (unchanged from 2019)
- Rochdale 1 seats (unchanged from 2019)
- Epping Forest 1 seats (unchanged from 2019)
- Worthing 1 seats (unchanged from 2019)
- Reading 1 seats (unchanged from 2019)
- Knowsley 1 seats (unchanged from 2019)
- Wakefield 1 seats (unchanged from 2019)
- Havant 0 seats (unchanged from 2019)
- Basildon 0 seats (unchanged from 2019)
- Southampton 0 seats (unchanged from 2019)
- Breckland 0 seats (unchanged from 2019)
- Ashford 0 seats (unchanged from 2019)
- Broxbourne 0 seats (unchanged from 2019)
- Adur 0 seats (unchanged from 2018)
- Charnwood 0 seats (unchanged from 2019)
- North Tyneside 0 seats (unchanged from 2019)
- Redditch 0 seats (unchanged from 2019)
- Melton 0 seats (unchanged from 2019)
- Hastings 0 seats (unchanged from 2018)
- Gravesham 0 seats (unchanged from 2019)
- Dover 0 seats (unchanged from 2019)
- Crawley 0 seats (unchanged from 2019)
- Braintree 0 seats (unchanged from 2019)
- Walsall 0 seats (unchanged from 2019)
- Wigan 0 seats (unchanged from 2019)
- Coventry 0 seats (unchanged from 2019)
- Dudley 0 seats (unchanged from 2019)
- Thanet 0 seats (unchanged from 2019)
- West Lancashire 0 seats (unchanged from 2018)
- Harlow 0 seats (unchanged from 2019)
- Amber Valley 0 seats (unchanged from 2019)
- Plymouth 0 seats (unchanged from 2019)
- Slough 0 seats (unchanged from 2019)
- West Suffolk 0 seats (unchanged from 2019)
- Wyre 0 seats (unchanged from 2019)
- Wolverhampton 0 seats (unchanged from 2019)
- Sandwell 0 seats (unchanged from 2019)
- North Kesteven 0 seats (unchanged from 2019)
- Great Yarmouth 0 seats (unchanged from 2016)
- Castle Point 0 seats (unchanged from 2019)
- Chorley 0 seats (unchanged from 2019)
- Boston 0 seats (unchanged from 2019)
- Doncaster 0 seats (unchanged from 2017)
- Stafford 0 seats (unchanged from 2019)
- Tameside 0 seats (unchanged from 2019)
- Hartlepool 0 seats (unchanged from 2019)
- Mansfield 0 seats (unchanged from 2019)
- Ashfield 0 seats (unchanged from 2019)
Net-change comparisons are versus each council's most recent appearance in our dataset (2021–2026). For all-out councils that's the previous all-out cycle (typically four years prior); for by-thirds councils it's last year's slice. Cross-cycle ward boundary changes can produce small artefacts — see methodology.