Council Control and Majorities
Who runs every council, by how much, and how close each majority is to falling. Provisional figures for the end of 2025 across 386 councils: No Overall Control 166, Labour 107, Liberal Democrats 41, Conservative 36, Other 17.
Find who holds each seat: For each ward, take the winners of the most recent elections within the last four years. After an all-out election, only the wards fought at that election count, so old wards drop out after a boundary change.
Apply by-elections: A by-election winner takes a seat in their ward, replacing the longest-serving holder.
Decide control: A party with more than half the seats controls the council; otherwise it is in No Overall Control. Seats to lose control = party seats minus half the council, rounded down.
Look ahead: Seats elected four years earlier are the seats up next year. We count how many of those the controlling party is defending.
| Council | Control | Majority | Seats |
|---|---|---|---|
| Aberdeen | No Overall Control | — | 45 |
| Aberdeen City | No Overall Control | — | 45 |
| Aberdeenshire | No Overall Control | — | 70 |
| Adur | Labour | 3 | 29 |
| Amber Valley | Labour | 4 | 42 |
| Angus | No Overall Control | — | 28 |
| Antrim and Newtownabbey | No Overall Control | — | 40 |
| Ards and North Down | No Overall Control | — | 40 |
| Argyll and Bute | No Overall Control | — | 36 |
| Armagh City, Banbridge and Craigavon | No Overall Control | — | 41 |
| Arun | No Overall Control | — | 54 |
| Ashfield | Other | 27 | 35 |
| Ashford | No Overall Control | — | 47 |
| Babergh | No Overall Control | — | 32 |
| Barking and Dagenham | Labour | 47 | 51 |
| Barnet | Labour | 15 | 63 |
| Barnsley | Labour | 33 | 63 |
| Basildon | No Overall Control | — | 42 |
| Basingstoke and Deane | No Overall Control | — | 54 |
| Bassetlaw | Labour | 24 | 48 |
| Bath & North East Somerset | Liberal Democrats | 21 | 59 |
| Bedford | No Overall Control | — | 46 |
| Belfast | No Overall Control | — | 60 |
| Bexley | Conservative | 15 | 45 |
| Birmingham | Labour | 23 | 101 |
| Blaby | Conservative | 2 | 36 |
| Blackburn with Darwen | Labour | 7 | 51 |
| Blackpool | Labour | 14 | 42 |
| Blaenau Gwent | Labour | 9 | 33 |
| Bolsover | Labour | 19 | 37 |
| Bolton | No Overall Control | — | 60 |
| Boston | Other | 16 | 30 |
| Bournemouth, Christchurch & Poole | No Overall Control | — | 76 |
| Bracknell Forest | Labour | 3 | 41 |
| Bradford | Labour | 4 | 90 |
| Braintree | Conservative | 1 | 49 |
| Breckland | Conservative | 9 | 49 |
| Brent | Labour | 41 | 57 |
| Brentwood | No Overall Control | — | 39 |
| Bridgend | Labour | 1 | 51 |
| Brighton & Hove | Labour | 18 | 54 |
| Bristol, City of | No Overall Control | — | 70 |
| Broadland | No Overall Control | — | 47 |
| Bromley | Conservative | 12 | 58 |
| Bromsgrove | No Overall Control | — | 31 |
| Broxbourne | Conservative | 20 | 30 |
| Broxtowe | Other | 2 | 44 |
| Buckinghamshire | No Overall Control | — | 97 |
| Burnley | No Overall Control | — | 45 |
| Bury | Labour | 13 | 51 |
| Caerphilly | Labour | 21 | 69 |
| Calderdale | Labour | 3 | 51 |
| Cambridge | Labour | 6 | 42 |
| Cambridgeshire | Liberal Democrats | 1 | 61 |
| Camden | Labour | 35 | 55 |
| Cannock Chase | Labour | 4 | 36 |
| Canterbury | No Overall Control | — | 39 |
| Cardiff | Labour | 31 | 79 |
| Carmarthenshire | No Overall Control | — | 75 |
| Castle Point | Other | 39 | 39 |
| Causeway Coast and Glens | No Overall Control | — | 37 |
| Central Bedfordshire | No Overall Control | — | 63 |
| Ceredigion | Plaid Cymru - The Party of Wales | 4 | 38 |
| Charnwood | No Overall Control | — | 52 |
| Chelmsford | Liberal Democrats | 9 | 57 |
| Cheltenham | Liberal Democrats | 32 | 40 |
| Cherwell | No Overall Control | — | 48 |
| Cheshire East | No Overall Control | — | 82 |
| Cheshire West & Chester | Labour | 4 | 70 |
| Chesterfield | Labour | 16 | 40 |
| Chichester | Liberal Democrats | 14 | 36 |
| Chorley | Labour | 34 | 42 |
| City Of London | Other | 117 | 125 |
| Clackmannanshire | No Overall Control | — | 18 |
| Colchester | No Overall Control | — | 51 |
| Conwy | No Overall Control | — | 55 |
| Cornwall | No Overall Control | — | 87 |
| Cotswold | Liberal Democrats | 8 | 34 |
| County Durham | Reform UK | 32 | 98 |
| Coventry | Labour | 26 | 54 |
| Crawley | Labour | 14 | 36 |
| Croydon | No Overall Control | — | 70 |
| Cumberland | Labour | 8 | 46 |
| Dacorum | No Overall Control | — | 51 |
| Darlington | No Overall Control | — | 50 |
| Dartford | Conservative | 16 | 42 |
| Denbighshire | No Overall Control | — | 48 |
| Derby | No Overall Control | — | 51 |
| Derbyshire | Reform UK | 20 | 64 |
| Derbyshire Dales | No Overall Control | — | 34 |
| Derry City and Strabane | No Overall Control | — | 37 |
| Devon | No Overall Control | — | 60 |
| Doncaster | Reform UK | 19 | 55 |
| Dorset | Liberal Democrats | 2 | 82 |
| Dover | No Overall Control | — | 32 |
| Dudley | No Overall Control | — | 72 |
| Dumfries and Galloway | No Overall Control | — | 43 |
| Dundee | SNP | 3 | 31 |
| Dundee City | SNP | 3 | 29 |
| Ealing | Labour | 48 | 70 |
| East Ayrshire | No Overall Control | — | 32 |
| East Cambridgeshire | No Overall Control | — | 28 |
| East Devon | No Overall Control | — | 60 |
| East Dunbartonshire | No Overall Control | — | 22 |
| East Hampshire | No Overall Control | — | 43 |
| East Hertfordshire | No Overall Control | — | 50 |
| East Lindsey | No Overall Control | — | 55 |
| East Lothian | No Overall Control | — | 22 |
| East Renfrewshire | No Overall Control | — | 18 |
| East Riding Of Yorkshire | No Overall Control | — | 67 |
| East Staffordshire | Labour | 5 | 37 |
| East Suffolk | No Overall Control | — | 55 |
| East Sussex | No Overall Control | — | 50 |
| Eastbourne | Liberal Democrats | 11 | 27 |
| Eastleigh | Liberal Democrats | 27 | 39 |
| Edinburgh | No Overall Control | — | 63 |
| Elmbridge | No Overall Control | — | 48 |
| Enfield | Labour | 11 | 63 |
| Epping Forest | Conservative | 2 | 54 |
| Epsom And Ewell | Other | 19 | 35 |
| Erewash | Labour | 5 | 47 |
| Essex | Conservative | 25 | 75 |
| Exeter | Labour | 5 | 39 |
| Falkirk | No Overall Control | — | 30 |
| Fareham | Conservative | 16 | 32 |
| Fenland | Conservative | 27 | 43 |
| Fife | No Overall Control | — | 75 |
| Flintshire | Other | 1 | 67 |
| Folkestone And Hythe | No Overall Control | — | 30 |
| Forest Of Dean | No Overall Control | — | 38 |
| Fylde | Conservative | 5 | 37 |
| Gateshead | Labour | 28 | 66 |
| Gedling | Labour | 11 | 41 |
| Glasgow | No Overall Control | — | 86 |
| Glasgow City | No Overall Control | — | 85 |
| Gloucester | No Overall Control | — | 39 |
| Gloucestershire | No Overall Control | — | 55 |
| Gosport | Liberal Democrats | 2 | 28 |
| Gravesham | Labour | 5 | 39 |
| Great Yarmouth | No Overall Control | — | 39 |
| Greenwich | Labour | 45 | 55 |
| Guildford | Liberal Democrats | 2 | 48 |
| Gwynedd | Plaid Cymru - The Party of Wales | 23 | 69 |
| Hackney | Labour | 31 | 57 |
| Halton | Labour | 46 | 54 |
| Hammersmith and Fulham | Labour | 28 | 50 |
| Hampshire | Conservative | 22 | 78 |
| Harborough | No Overall Control | — | 34 |
| Haringey | Labour | 33 | 57 |
| Harlow | Conservative | 1 | 33 |
| Harrow | Conservative | 7 | 55 |
| Hart | No Overall Control | — | 33 |
| Hartlepool | Labour | 10 | 36 |
| Hastings | No Overall Control | — | 32 |
| Havant | No Overall Control | — | 36 |
| Havering | Other | 5 | 55 |
| Herefordshire | No Overall Control | — | 53 |
| Hertfordshire | No Overall Control | — | 78 |
| Hertsmere | No Overall Control | — | 39 |
| High Peak | Labour | 15 | 43 |
| Highland | No Overall Control | — | 74 |
| Hillingdon | Conservative | 7 | 53 |
| Hinckley And Bosworth | Liberal Democrats | 12 | 34 |
| Horsham | Liberal Democrats | 6 | 48 |
| Hounslow | Labour | 38 | 62 |
| Huntingdonshire | No Overall Control | — | 52 |
| Hyndburn | Labour | 7 | 35 |
| Inverclyde | No Overall Control | — | 22 |
| Ipswich | Labour | 28 | 48 |
| Isle of Anglesey | Plaid Cymru - The Party of Wales | 5 | 35 |
| Isle Of Wight | No Overall Control | — | 39 |
| Isles of Scilly | Other | 16 | 16 |
| Islington | Labour | 37 | 51 |
| Kensington and Chelsea | Conservative | 22 | 50 |
| Kent | Reform UK | 31 | 81 |
| King's Lynn And West Norfolk | No Overall Control | — | 55 |
| Kingston Upon Hull | Liberal Democrats | 2 | 60 |
| Kingston Upon Hull, City of | Liberal Democrats | 1 | 57 |
| Kingston upon Thames | Liberal Democrats | 36 | 48 |
| Kirklees | No Overall Control | — | 69 |
| Knowsley | Labour | 17 | 45 |
| Lambeth | Labour | 51 | 63 |
| Lancashire | Reform UK | 20 | 84 |
| Lancaster | No Overall Control | — | 61 |
| Leeds | Labour | 21 | 99 |
| Leicester | Labour | 8 | 54 |
| Leicestershire | No Overall Control | — | 55 |
| Lewes | No Overall Control | — | 41 |
| Lewisham | Labour | 52 | 54 |
| Lichfield | No Overall Control | — | 47 |
| Lincoln | Labour | 11 | 33 |
| Lincolnshire | Reform UK | 18 | 70 |
| Lisburn and Castlereagh | No Overall Control | — | 40 |
| Liverpool | Labour | 37 | 85 |
| Luton | Labour | 10 | 48 |
| Maidstone | No Overall Control | — | 49 |
| Maldon | No Overall Control | — | 31 |
| Malvern Hills | No Overall Control | — | 31 |
| Manchester | Labour | 78 | 96 |
| Mansfield | Labour | 16 | 36 |
| Medway | No Overall Control | — | 59 |
| Melton | No Overall Control | — | 28 |
| Merthyr Tydfil | Other | 2 | 30 |
| Merton | Labour | 3 | 57 |
| Mid and East Antrim | No Overall Control | — | 32 |
| Mid Devon | Liberal Democrats | 26 | 42 |
| Mid Suffolk | Green | 10 | 34 |
| Mid Sussex | No Overall Control | — | 48 |
| Mid Ulster | Sinn Féin | 2 | 16 |
| Middlesbrough | Labour | 2 | 46 |
| Midlothian | No Overall Control | — | 18 |
| Milton Keynes | Labour | 3 | 57 |
| Mole Valley | Liberal Democrats | 21 | 39 |
| Monmouthshire | No Overall Control | — | 46 |
| Moray | No Overall Control | — | 26 |
| Na h-Eileanan an Iar | Other | 15 | 29 |
| Neath Port Talbot | No Overall Control | — | 60 |
| New Forest | Conservative | 4 | 48 |
| Newark And Sherwood | No Overall Control | — | 39 |
| Newcastle Upon Tyne | No Overall Control | — | 78 |
| Newcastle-under-Lyme | Conservative | 6 | 44 |
| Newham | Labour | 52 | 66 |
| Newport | Labour | 15 | 51 |
| Norfolk | Conservative | 22 | 84 |
| North Ayrshire | No Overall Control | — | 33 |
| North Devon | Liberal Democrats | 6 | 42 |
| North East Derbyshire | Labour | 1 | 53 |
| North East Lincolnshire | No Overall Control | — | 42 |
| North Hertfordshire | No Overall Control | — | 51 |
| North Kesteven | Conservative | 5 | 43 |
| North Lanarkshire | No Overall Control | — | 77 |
| North Lincolnshire | Conservative | 11 | 43 |
| North Norfolk | Liberal Democrats | 12 | 40 |
| North Northamptonshire | Reform UK | 10 | 68 |
| North Somerset | No Overall Control | — | 50 |
| North Tyneside | Labour | 42 | 60 |
| North Warwickshire | No Overall Control | — | 35 |
| North West Leicestershire | No Overall Control | — | 38 |
| North Yorkshire | No Overall Control | — | 90 |
| Northumberland | No Overall Control | — | 69 |
| Norwich | No Overall Control | — | 39 |
| Nottingham | Labour | 39 | 55 |
| Nottinghamshire | Reform UK | 14 | 66 |
| Nuneaton and Bedworth | No Overall Control | — | 38 |
| Oadby And Wigston | Liberal Democrats | 10 | 26 |
| Oldham | No Overall Control | — | 60 |
| Orkney Islands | Other | 21 | 21 |
| Oxford | No Overall Control | — | 48 |
| Oxfordshire | Liberal Democrats | 3 | 69 |
| Pembrokeshire | Other | 10 | 60 |
| Pendle | No Overall Control | — | 33 |
| Perth and Kinross | No Overall Control | — | 40 |
| Peterborough | No Overall Control | — | 60 |
| Plymouth | Labour | 27 | 57 |
| Portsmouth | No Overall Control | — | 42 |
| Powys | No Overall Control | — | 68 |
| Preston | Labour | 8 | 48 |
| Reading | Labour | 16 | 48 |
| Redbridge | Labour | 45 | 63 |
| Redcar & Cleveland | No Overall Control | — | 59 |
| Redditch | Labour | 11 | 27 |
| Reigate & Banstead | No Overall Control | — | 45 |
| Renfrewshire | No Overall Control | — | 43 |
| Rhondda Cynon Taf | Labour | 41 | 75 |
| Ribble Valley | No Overall Control | — | 40 |
| Richmond upon Thames | Liberal Democrats | 44 | 54 |
| Rochdale | Labour | 26 | 60 |
| Rochford | No Overall Control | — | 39 |
| Rossendale | Labour | 10 | 30 |
| Rother | No Overall Control | — | 38 |
| Rotherham | Labour | 5 | 59 |
| Rugby | No Overall Control | — | 42 |
| Runnymede | No Overall Control | — | 41 |
| Rushcliffe | Conservative | 4 | 44 |
| Rushmoor | Labour | 3 | 39 |
| Rutland | No Overall Control | — | 27 |
| Salford | Labour | 38 | 60 |
| Sandwell | Labour | 58 | 72 |
| Scottish Borders | No Overall Control | — | 34 |
| Sefton | Labour | 34 | 66 |
| Sevenoaks | Conservative | 12 | 54 |
| Sheffield | No Overall Control | — | 84 |
| Shetland | Independent | 16 | 22 |
| Shetland Islands | Other | 21 | 23 |
| Shropshire | Liberal Democrats | 10 | 74 |
| Slough | No Overall Control | — | 42 |
| Solihull | Conservative | 11 | 51 |
| Somerset | Liberal Democrats | 12 | 110 |
| South Ayrshire | No Overall Control | — | 28 |
| South Cambridgeshire | Liberal Democrats | 25 | 45 |
| South Derbyshire | Labour | 8 | 36 |
| South Gloucestershire | No Overall Control | — | 61 |
| South Hams | Liberal Democrats | 7 | 31 |
| South Holland | Conservative | 1 | 37 |
| South Kesteven | No Overall Control | — | 56 |
| South Lanarkshire | No Overall Control | — | 64 |
| South Norfolk | No Overall Control | — | 46 |
| South Oxfordshire | Liberal Democrats | 6 | 36 |
| South Ribble | Labour | 6 | 50 |
| South Staffordshire | Conservative | 14 | 42 |
| South Tyneside | Labour | 2 | 54 |
| Southampton | Labour | 17 | 51 |
| Southend-On-Sea | No Overall Control | — | 51 |
| Southwark | Labour | 41 | 63 |
| Spelthorne | No Overall Control | — | 39 |
| St Albans | Liberal Democrats | 36 | 56 |
| St. Helens | Labour | 8 | 48 |
| Stafford | No Overall Control | — | 40 |
| Staffordshire | Reform UK | 36 | 62 |
| Staffordshire Moorlands | No Overall Control | — | 56 |
| Stevenage | Labour | 23 | 39 |
| Stirling | No Overall Control | — | 23 |
| Stockport | No Overall Control | — | 63 |
| Stockton-on-Tees | No Overall Control | — | 56 |
| Stoke On Trent | Labour | 12 | 44 |
| Stratford-On-Avon | Liberal Democrats | 9 | 41 |
| Stroud | No Overall Control | — | 51 |
| Suffolk | Conservative | 25 | 75 |
| Sunderland | Labour | 29 | 75 |
| Surrey | Conservative | 7 | 81 |
| Surrey Heath | Liberal Democrats | 13 | 35 |
| Sutton | Liberal Democrats | 1 | 55 |
| Swale | No Overall Control | — | 47 |
| Swansea | Labour | 15 | 75 |
| Swindon | Labour | 21 | 57 |
| Tameside | Labour | 15 | 57 |
| Tamworth | Labour | 6 | 30 |
| Tandridge | Other | 7 | 43 |
| Teignbridge | Liberal Democrats | 3 | 47 |
| Telford & Wrekin | Labour | 22 | 54 |
| Tendring | No Overall Control | — | 48 |
| Test Valley | Conservative | 9 | 43 |
| Tewkesbury | No Overall Control | — | 38 |
| Thanet | Labour | 4 | 56 |
| Three Rivers | No Overall Control | — | 39 |
| Thurrock | Labour | 3 | 49 |
| Tonbridge And Malling | No Overall Control | — | 44 |
| Torbay | No Overall Control | — | 36 |
| Torfaen | Labour | 16 | 40 |
| Torridge | No Overall Control | — | 36 |
| Tower Hamlets | Other | 7 | 45 |
| Trafford | Labour | 23 | 63 |
| Tunbridge Wells | Liberal Democrats | 5 | 39 |
| Uttlesford | Other | 7 | 39 |
| Vale of Glamorgan | No Overall Control | — | 54 |
| Vale Of White Horse | Liberal Democrats | 26 | 38 |
| Wakefield | Labour | 45 | 63 |
| Walsall | Conservative | 14 | 60 |
| Waltham Forest | Labour | 30 | 60 |
| Wandsworth | Labour | 10 | 58 |
| Warrington | Labour | 24 | 58 |
| Warwick | No Overall Control | — | 44 |
| Warwickshire | Conservative | 25 | 57 |
| Watford | Liberal Democrats | 24 | 36 |
| Waverley | No Overall Control | — | 50 |
| Wealden | No Overall Control | — | 45 |
| Welwyn Hatfield | No Overall Control | — | 48 |
| West Berkshire | Liberal Democrats | 13 | 43 |
| West Devon | No Overall Control | — | 31 |
| West Dunbartonshire | No Overall Control | — | 22 |
| West Lancashire | Labour | 1 | 45 |
| West Lindsey | No Overall Control | — | 36 |
| West Lothian | No Overall Control | — | 33 |
| West Northamptonshire | Reform UK | 8 | 76 |
| West Oxfordshire | No Overall Control | — | 49 |
| West Suffolk | No Overall Control | — | 64 |
| West Sussex | Conservative | 12 | 70 |
| Western Isles | Independent | 13 | 27 |
| Westminster | Labour | 2 | 54 |
| Westmorland and Furness | Liberal Democrats | 7 | 65 |
| Wigan | Labour | 51 | 75 |
| Wiltshire | No Overall Control | — | 98 |
| Winchester | Liberal Democrats | 19 | 45 |
| Windsor & Maidenhead | Liberal Democrats | 1 | 41 |
| Wirral | No Overall Control | — | 66 |
| Woking | Liberal Democrats | 18 | 30 |
| Wokingham | No Overall Control | — | 54 |
| Wolverhampton | Labour | 30 | 60 |
| Worcester | No Overall Control | — | 35 |
| Worcestershire | No Overall Control | — | 57 |
| Worthing | Labour | 5 | 37 |
| Wrexham | No Overall Control | — | 56 |
| Wychavon | Conservative | 13 | 43 |
| Wyre | Conservative | 4 | 50 |
| Wyre Forest | Conservative | 7 | 33 |
| York | Labour | 1 | 47 |
