← Bolton (all cycles) · 2 May 2024 cohort

Bolton 2024

Local elections held 2 May 2024.

20 ward races
21 seats
19 elected below the proportional quota
90.5% of seats below quota
5 unfairly awarded seats
23.8% of seats unfairly awarded

Each race compares the marginal winner's share of valid ballots to the proportional quota — the share they'd need under any common proportional method. How the numbers are derived →

If votes were counted by party

Across the 20 wards in this cycle, parties received the vote totals below. The proportional column shows what each party would have won if the 21 seats had been shared out in proportion to votes received (how, with caveats). The Δ column is the actual seat count minus the proportional seat count — positive numbers are parties First-Past-the-Post over-represented; negative are parties it under-represented.

PartyVotesVote %Seats won% of seatsProportional seatsProportional %Δ
Labour Party24,48534.4%942.9%838.1%+1
Conservative Party14,12419.8%314.3%523.8%-2
Green Party6,4939.1%14.8%29.5%-1
REF and BFC5,5327.8%00.0%29.5%-2
Liberal Democrats5,3887.6%29.5%14.8%+1
HandBFI5,3707.5%314.3%14.8%+2
Independent3,4674.9%14.8%14.8%0
FandKFP2,9004.1%29.5%14.8%+1
Workers Party of Britain1,3881.9%00.0%00.0%0
Reform UK1,1191.6%00.0%00.0%0
IND CHOICE4970.7%00.0%00.0%0
WFI3850.5%00.0%00.0%0
UK Independence Party (UKIP)980.1%00.0%00.0%0
Total71,246100.0%21100.0%21100.0%0

Vote share vs seats won

The top bar is each party's share of votes cast in this council. Below, one square per seat, coloured by the party that won it — first the actual First-Past-the-Post result, then what a proportional method would have produced from the same vote totals. Divergence between the bar and the actual grid is the indictment of the method.

Vote share
Actual seats
Proportional seats

Council composition: what this election replaced

Two opencouncildata snapshots: the council immediately after the 2024 election (current) and immediately before it (2023). Only ~⅓ of seats were contested in 2024 — most of the bench is unchanged, and the cycle's effect on the overall composition is what shifts.

Current (2024)
Previous (2023)

Wards in this council

Sorted with the largest gap below the quota first. Click any ward to jump to its full result.

Race results

Hulton · single-seat

Marginal winner Winning candidate's share of valid ballots. 29.9% Proportional quota 50.0% Below quota Marginal winner's share minus the proportional quota for this race. Negative = below; positive = above. −20.1 pts Valid ballots (est.) Estimated voters: total votes ÷ 1 seats. Source data does not publish a ballot count for this cycle. 4,062

RankCandidatePartyVotesShare of votes Candidate votes ÷ total votes cast in this ward. Matches the share the council publishes.Below quota Each elected candidate's share of valid ballots minus the proportional quota for this race. Negative = won the seat below the quota; positive = cleared it.Elected
1Khan, F.Labour Party1,21329.9%−20.1 ptsElected
2Patel, S.Conservative Party82420.3%
3Bullock, D.Independent78619.4%
4Pathan, S.Workers Party of Britain54613.4%
5Lowe, R.REF and BFC3548.7%
6Hopkinson, P.Green Party2315.7%
7Maher, L.Liberal Democrats1082.7%

Electorate 9,313 · EC ward code E05014829 · Back to ward index

Farnworth North · single-seat

Marginal winner Winning candidate's share of valid ballots. 32.8% Proportional quota 50.0% Below quota Marginal winner's share minus the proportional quota for this race. Negative = below; positive = above. −17.2 pts Valid ballots (est.) Estimated voters: total votes ÷ 1 seats. Source data does not publish a ballot count for this cycle. 2,770

RankCandidatePartyVotesShare of votes Candidate votes ÷ total votes cast in this ward. Matches the share the council publishes.Below quota Each elected candidate's share of valid ballots minus the proportional quota for this race. Negative = won the seat below the quota; positive = cleared it.Elected
1Haworth, S.Labour Party90832.8%−17.2 ptsElected
2Bailey, M.FandKFP70025.3%
3Iqbal, M.Conservative Party52018.8%
4Evans, D.REF and BFC29810.8%
5Kochitty, P.Green Party2739.9%
6Tonge, J.Liberal Democrats712.6%

Electorate 10,163 · EC ward code E05014822 · Back to ward index

Westhoughton North and Hunger Hill · single-seat

Marginal winner Winning candidate's share of valid ballots. 33.8% Proportional quota 50.0% Below quota Marginal winner's share minus the proportional quota for this race. Negative = below; positive = above. −16.2 pts Valid ballots (est.) Estimated voters: total votes ÷ 1 seats. Source data does not publish a ballot count for this cycle. 3,360

RankCandidatePartyVotesShare of votes Candidate votes ÷ total votes cast in this ward. Matches the share the council publishes.Below quota Each elected candidate's share of valid ballots minus the proportional quota for this race. Negative = won the seat below the quota; positive = cleared it.Elected
1McGeown, D.Liberal Democrats1,13733.8%−16.2 ptsElected
2Higson, C.Conservative Party84225.1%
3Millington, K.Labour Party77623.1%
4Armstrong, J.REF and BFC3149.3%
5Reynolds, J.WFI1895.6%
6Barrett, C.Green Party1023.0%

Electorate 10,404 · EC ward code E05014836 · Back to ward index

Westhoughton South · single-seat

Marginal winner Winning candidate's share of valid ballots. 35.2% Proportional quota 50.0% Below quota Marginal winner's share minus the proportional quota for this race. Negative = below; positive = above. −14.8 pts Valid ballots (est.) Estimated voters: total votes ÷ 1 seats. Source data does not publish a ballot count for this cycle. 3,259

RankCandidatePartyVotesShare of votes Candidate votes ÷ total votes cast in this ward. Matches the share the council publishes.Below quota Each elected candidate's share of valid ballots minus the proportional quota for this race. Negative = won the seat below the quota; positive = cleared it.Elected
1McHugh, J.Labour Party1,14635.2%−14.8 ptsElected
2Maher, N.Liberal Democrats1,02931.6%
3Norris, C.Conservative Party41012.6%
4Price, D.REF and BFC2929.0%
5Speight, J.WFI1966.0%
6Bates, R.UK Independence Party (UKIP)983.0%
7Rylance, H.Green Party882.7%

Electorate 10,470 · EC ward code E05014837 · Back to ward index

Little Lever and Darcy Lever · single-seat

Marginal winner Winning candidate's share of valid ballots. 37.7% Proportional quota 50.0% Below quota Marginal winner's share minus the proportional quota for this race. Negative = below; positive = above. −12.3 pts Valid ballots (est.) Estimated voters: total votes ÷ 1 seats. Source data does not publish a ballot count for this cycle. 3,182

RankCandidatePartyVotesShare of votes Candidate votes ÷ total votes cast in this ward. Matches the share the council publishes.Below quota Each elected candidate's share of valid ballots minus the proportional quota for this race. Negative = won the seat below the quota; positive = cleared it.Elected
1Barnard, L.Labour Party1,20137.7%−12.3 ptsElected
2Khan, F.Conservative Party86127.1%
3Hornby, S.Independent61519.3%
4Varnam, B.REF and BFC39312.4%
5Martin, S.Liberal Democrats1123.5%

Electorate 9,678 · EC ward code E05014831 · Back to ward index

Astley Bridge · single-seat

Marginal winner Winning candidate's share of valid ballots. 38.0% Proportional quota 50.0% Below quota Marginal winner's share minus the proportional quota for this race. Negative = below; positive = above. −12.0 pts Valid ballots (est.) Estimated voters: total votes ÷ 1 seats. Source data does not publish a ballot count for this cycle. 4,107

RankCandidatePartyVotesShare of votes Candidate votes ÷ total votes cast in this ward. Matches the share the council publishes.Below quota Each elected candidate's share of valid ballots minus the proportional quota for this race. Negative = won the seat below the quota; positive = cleared it.Elected
1Hewitt, T.Conservative Party1,56038.0%−12.0 ptsElected
2Taylor, K.Labour Party1,55938.0%
3Devereux, M.Green Party55513.5%
4Armstrong, M.REF and BFC43310.5%

Electorate 11,556 · EC ward code E05014818 · Back to ward index

Bradshaw · single-seat

Marginal winner Winning candidate's share of valid ballots. 40.5% Proportional quota 50.0% Below quota Marginal winner's share minus the proportional quota for this race. Negative = below; positive = above. −9.5 pts Valid ballots (est.) Estimated voters: total votes ÷ 1 seats. Source data does not publish a ballot count for this cycle. 3,569

RankCandidatePartyVotesShare of votes Candidate votes ÷ total votes cast in this ward. Matches the share the council publishes.Below quota Each elected candidate's share of valid ballots minus the proportional quota for this race. Negative = won the seat below the quota; positive = cleared it.Elected
1Schofield, J.Labour Party1,44640.5%−9.5 ptsElected
2Tully, C.Conservative Party1,38838.9%
3Harris, S.REF and BFC43312.1%
4Miller, M.Green Party1775.0%
5Forrest, B.Liberal Democrats1253.5%

Electorate 9,592 · EC ward code E05014819 · Back to ward index

Breightmet · single-seat

Marginal winner Winning candidate's share of valid ballots. 42.4% Proportional quota 50.0% Below quota Marginal winner's share minus the proportional quota for this race. Negative = below; positive = above. −7.6 pts Valid ballots (est.) Estimated voters: total votes ÷ 1 seats. Source data does not publish a ballot count for this cycle. 3,047

RankCandidatePartyVotesShare of votes Candidate votes ÷ total votes cast in this ward. Matches the share the council publishes.Below quota Each elected candidate's share of valid ballots minus the proportional quota for this race. Negative = won the seat below the quota; positive = cleared it.Elected
1Morrisey, R.Labour Party1,29342.4%−7.6 ptsElected
2Campbell, B.Conservative Party1,13037.1%
3Lloyd, G.REF and BFC42513.9%
4Shepherd, W.Green Party1394.6%
5Gradwell, D.Liberal Democrats602.0%

Electorate 10,805 · EC ward code E05014820 · Back to ward index

Farnworth South · single-seat

Marginal winner Winning candidate's share of valid ballots. 43.1% Proportional quota 50.0% Below quota Marginal winner's share minus the proportional quota for this race. Negative = below; positive = above. −6.9 pts Valid ballots (est.) Estimated voters: total votes ÷ 1 seats. Source data does not publish a ballot count for this cycle. 2,264

RankCandidatePartyVotesShare of votes Candidate votes ÷ total votes cast in this ward. Matches the share the council publishes.Below quota Each elected candidate's share of valid ballots minus the proportional quota for this race. Negative = won the seat below the quota; positive = cleared it.Elected
1Connor-Bennett, P.FandKFP97543.1%−6.9 ptsElected
2Mistry, C.Labour Party75233.2%
3Pattison, J.Reform UK29212.9%
4Greenhalgh, J.Green Party1054.6%
5Forshaw, C.Conservative Party1054.6%
6Tonge, A.Liberal Democrats351.5%

Electorate 9,601 · EC ward code E05014823 · Back to ward index

Queens Park and Central · single-seat

Marginal winner Winning candidate's share of valid ballots. 43.7% Proportional quota 50.0% Below quota Marginal winner's share minus the proportional quota for this race. Negative = below; positive = above. −6.3 pts Valid ballots (est.) Estimated voters: total votes ÷ 1 seats. Source data does not publish a ballot count for this cycle. 2,877

RankCandidatePartyVotesShare of votes Candidate votes ÷ total votes cast in this ward. Matches the share the council publishes.Below quota Each elected candidate's share of valid ballots minus the proportional quota for this race. Negative = won the seat below the quota; positive = cleared it.Elected
1Thomas, L.Labour Party1,25643.7%−6.3 ptsElected
2Shafiq, O.Workers Party of Britain84229.3%
3Harvey, S.REF and BFC2217.7%
4McLoughlin, M.Green Party2207.6%
5Shah, S.Conservative Party1685.8%
6Fairhurst, R.Liberal Democrats943.3%
7Abraham Halliwell, D.Independent762.6%

Electorate 10,352 · EC ward code E05014832 · Back to ward index

Heaton, Lostock and Chew Moor · single-seat

Marginal winner Winning candidate's share of valid ballots. 44.2% Proportional quota 50.0% Below quota Marginal winner's share minus the proportional quota for this race. Negative = below; positive = above. −5.8 pts Valid ballots (est.) Estimated voters: total votes ÷ 1 seats. Source data does not publish a ballot count for this cycle. 4,471

RankCandidatePartyVotesShare of votes Candidate votes ÷ total votes cast in this ward. Matches the share the council publishes.Below quota Each elected candidate's share of valid ballots minus the proportional quota for this race. Negative = won the seat below the quota; positive = cleared it.Elected
1Morgan, A.Conservative Party1,97544.2%−5.8 ptsElected
2Lovat, B.Labour Party1,13025.3%
3Campbell, G.IND CHOICE49711.1%
4Entwistle, J.Green Party3588.0%
5McGreavy, G.REF and BFC3197.1%
6Martin, P.Liberal Democrats1924.3%

Electorate 11,187 · EC ward code E05014826 · Back to ward index

Tonge with the Haulgh · single-seat

Marginal winner Winning candidate's share of valid ballots. 44.8% Proportional quota 50.0% Below quota Marginal winner's share minus the proportional quota for this race. Negative = below; positive = above. −5.2 pts Valid ballots (est.) Estimated voters: total votes ÷ 1 seats. Source data does not publish a ballot count for this cycle. 2,905

RankCandidatePartyVotesShare of votes Candidate votes ÷ total votes cast in this ward. Matches the share the council publishes.Below quota Each elected candidate's share of valid ballots minus the proportional quota for this race. Negative = won the seat below the quota; positive = cleared it.Elected
1Mort, E.Labour Party1,30044.8%−5.2 ptsElected
2Jones, T.Reform UK82728.5%
3Meen, E.Conservative Party46516.0%
4McAllister, A.Green Party2006.9%
5Harasiwka, F.Liberal Democrats1133.9%

Electorate 11,446 · EC ward code E05014835 · Back to ward index

Halliwell · single-seat

Marginal winner Winning candidate's share of valid ballots. 45.1% Proportional quota 50.0% Below quota Marginal winner's share minus the proportional quota for this race. Negative = below; positive = above. −4.9 pts Valid ballots (est.) Estimated voters: total votes ÷ 1 seats. Source data does not publish a ballot count for this cycle. 3,374

RankCandidatePartyVotesShare of votes Candidate votes ÷ total votes cast in this ward. Matches the share the council publishes.Below quota Each elected candidate's share of valid ballots minus the proportional quota for this race. Negative = won the seat below the quota; positive = cleared it.Elected
1Alli, H.Green Party1,52345.1%−4.9 ptsElected
2Morris, K.Labour Party1,27337.7%
3Cryer, N.REF and BFC2687.9%
4Turner-Preece, C.Liberal Democrats1785.3%
5Alom, K.Conservative Party1323.9%

Electorate 10,548 · EC ward code E05014825 · Back to ward index

Smithills · single-seat

Marginal winner Winning candidate's share of valid ballots. 45.9% Proportional quota 50.0% Below quota Marginal winner's share minus the proportional quota for this race. Negative = below; positive = above. −4.1 pts Valid ballots (est.) Estimated voters: total votes ÷ 1 seats. Source data does not publish a ballot count for this cycle. 3,681

RankCandidatePartyVotesShare of votes Candidate votes ÷ total votes cast in this ward. Matches the share the council publishes.Below quota Each elected candidate's share of valid ballots minus the proportional quota for this race. Negative = won the seat below the quota; positive = cleared it.Elected
1Veevers, G.Liberal Democrats1,69045.9%−4.1 ptsElected
2Sesay, S.Labour Party85923.3%
3Attenborough, V.Green Party44812.2%
4Shaw, H.REF and BFC3659.9%
5Ndokwo, R.Conservative Party3198.7%

Electorate 10,677 · EC ward code E05014834 · Back to ward index

Bromley Cross · single-seat

Marginal winner Winning candidate's share of valid ballots. 46.3% Proportional quota 50.0% Below quota Marginal winner's share minus the proportional quota for this race. Negative = below; positive = above. −3.7 pts Valid ballots (est.) Estimated voters: total votes ÷ 1 seats. Source data does not publish a ballot count for this cycle. 3,807

RankCandidatePartyVotesShare of votes Candidate votes ÷ total votes cast in this ward. Matches the share the council publishes.Below quota Each elected candidate's share of valid ballots minus the proportional quota for this race. Negative = won the seat below the quota; positive = cleared it.Elected
1Muslim, N.Conservative Party1,76346.3%−3.7 ptsElected
2Brown, I.Labour Party1,35935.7%
3Hare, A.REF and BFC3689.7%
4Harrison, L.Green Party2045.4%
5Priest, P.Liberal Democrats1133.0%

Electorate 9,854 · EC ward code E05014821 · Back to ward index

Rumworth · single-seat

Marginal winner Winning candidate's share of valid ballots. 48.3% Proportional quota 50.0% Below quota Marginal winner's share minus the proportional quota for this race. Negative = below; positive = above. −1.7 pts Valid ballots (est.) Estimated voters: total votes ÷ 1 seats. Source data does not publish a ballot count for this cycle. 4,124

RankCandidatePartyVotesShare of votes Candidate votes ÷ total votes cast in this ward. Matches the share the council publishes.Below quota Each elected candidate's share of valid ballots minus the proportional quota for this race. Negative = won the seat below the quota; positive = cleared it.Elected
1Patel, A.Independent1,99048.3%−1.7 ptsElected
2Adia, H.Labour Party1,24430.2%
3Johnson, A.Green Party55013.3%
4Mbah, M.Conservative Party1533.7%
5Speakman, C.REF and BFC1393.4%
6Wroe, G.Liberal Democrats481.2%

Electorate 11,644 · EC ward code E05014833 · Back to ward index

Great Lever · single-seat

Marginal winner Winning candidate's share of valid ballots. 48.4% Proportional quota 50.0% Below quota Marginal winner's share minus the proportional quota for this race. Negative = below; positive = above. −1.6 pts Valid ballots (est.) Estimated voters: total votes ÷ 1 seats. Source data does not publish a ballot count for this cycle. 3,144

RankCandidatePartyVotesShare of votes Candidate votes ÷ total votes cast in this ward. Matches the share the council publishes.Below quota Each elected candidate's share of valid ballots minus the proportional quota for this race. Negative = won the seat below the quota; positive = cleared it.Elected
1Hon, K.Labour Party1,52148.4%−1.6 ptsElected
2Alom, M.Green Party1,00932.1%
3Earp, T.REF and BFC35511.3%
4Muslim, K.Conservative Party2598.2%

Electorate 11,786 · EC ward code E05014824 · Back to ward index

Horwich South and Blackrod · single-seat

Marginal winner Winning candidate's share of valid ballots. 48.4% Proportional quota 50.0% Below quota Marginal winner's share minus the proportional quota for this race. Negative = below; positive = above. −1.6 pts Valid ballots (est.) Estimated voters: total votes ÷ 1 seats. Source data does not publish a ballot count for this cycle. 3,113

RankCandidatePartyVotesShare of votes Candidate votes ÷ total votes cast in this ward. Matches the share the council publishes.Below quota Each elected candidate's share of valid ballots minus the proportional quota for this race. Negative = won the seat below the quota; positive = cleared it.Elected
1Williamson, S.HandBFI1,50748.4%−1.6 ptsElected
2Jarvis, M.Labour Party87828.2%
3Norris, P.Conservative Party40413.0%
4Carr, E.REF and BFC1384.4%
5Alker, H.Green Party1093.5%
6Turner-Allen, L.Liberal Democrats772.5%

Electorate 9,861 · EC ward code E05014828 · Back to ward index

Kearsley · single-seat

Marginal winner Winning candidate's share of valid ballots. 49.9% Proportional quota 50.0% Below quota Marginal winner's share minus the proportional quota for this race. Negative = below; positive = above. −0.1 pts Valid ballots (est.) Estimated voters: total votes ÷ 1 seats. Source data does not publish a ballot count for this cycle. 2,453

RankCandidatePartyVotesShare of votes Candidate votes ÷ total votes cast in this ward. Matches the share the council publishes.Below quota Each elected candidate's share of valid ballots minus the proportional quota for this race. Negative = won the seat below the quota; positive = cleared it.Elected
1Crossley, S.FandKFP1,22549.9%−0.1 ptsElected
2Livesey, M.Labour Party85334.8%
3Gregory, D.REF and BFC1496.1%
4Ratcliffe, G.Conservative Party1425.8%
5Jojo, N.Green Party522.1%
6Cooper, C.Liberal Democrats321.3%

Electorate 9,313 · EC ward code E05014830 · Back to ward index

Horwich North · 2-seat (bloc vote)

Marginal winner Voter-share estimate of the lowest-vote elected candidate. Comparable to the proportional quota. The raw vote share would be ~2× smaller. 47.8% Proportional quota 33.3% Below quota Marginal winner's share minus the proportional quota for this race. Negative = below; positive = above. +14.5 pts Valid ballots (est.) Estimated voters: total votes ÷ 2 seats. Source data does not publish a ballot count for this cycle. 3,839

This is a 2-seat ward under bloc vote — each voter could cast up to 2 votes, so summing candidate votes overcounts voters by ~2×. We show share of votes (matches the council's published figure) and share of voters (est.) (raw share × 2, the figure comparable to the proportional quota). Why two columns →

RankCandidatePartyVotesShare of votes Candidate votes ÷ total votes cast in this ward. Matches the share the council publishes.Share of voters (est.) Estimated share of voters who supported this candidate, comparable across single- and multi-seat wards. Each voter could cast up to 2 votes, so we approximate ballots as total votes ÷ 2. This is the figure compared against the proportional quota.Below quota Each elected candidate's share of valid ballots minus the proportional quota for this race. Negative = won the seat below the quota; positive = cleared it.Elected
1Rigby, V.HandBFI2,02826.4%52.8%+19.5 ptsElected
2Sears, C.HandBFI1,83523.9%47.8%+14.5 ptsElected
3McKeon, K.Labour Party1,40118.2%36.5%
4Butler, G.Labour Party1,11714.5%29.1%
5Baines, M.Conservative Party3855.0%10.0%
6Wright, H.Conservative Party3194.2%8.3%
7Johnson, G.Green Party1502.0%3.9%
8Jones, T.REF and BFC1401.8%3.6%
9Tonge, S.REF and BFC1281.7%3.3%
10Turner-Allen, M.Liberal Democrats1261.6%3.3%
11Turner-Preece, S.Liberal Democrats480.6%1.3%

Electorate 11,275 · EC ward code E05014827 · Back to ward index