← Bradford (all cycles) · 5 May 2022 cohort
Bradford 2022
Local elections held 5 May 2022.
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 30 wards in this cycle, parties received the vote totals below. The proportional column shows what each party would have won if the 30 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.
| Party | Votes | Vote % | Seats won | % of seats | Proportional seats | Proportional % | Δ |
|---|---|---|---|---|---|---|---|
| Labour Party | 55,333 | 43.1% | 19 | 63.3% | 14 | 46.7% | +5 |
| Conservative Party | 32,545 | 25.3% | 6 | 20.0% | 8 | 26.7% | -2 |
| Green Party | 18,330 | 14.3% | 3 | 10.0% | 4 | 13.3% | -1 |
| Liberal Democrats | 11,734 | 9.1% | 1 | 3.3% | 2 | 6.7% | -1 |
| Independent | 8,707 | 6.8% | 1 | 3.3% | 2 | 6.7% | -1 |
| Yorkshire Party | 1,422 | 1.1% | 0 | 0.0% | 0 | 0.0% | 0 |
| BDP | 214 | 0.2% | 0 | 0.0% | 0 | 0.0% | 0 |
| Heritage Party | 60 | 0.0% | 0 | 0.0% | 0 | 0.0% | 0 |
| Trade Unionist and Socialist Coalition | 59 | 0.0% | 0 | 0.0% | 0 | 0.0% | 0 |
| FBM | 41 | 0.0% | 0 | 0.0% | 0 | 0.0% | 0 |
| FREE | 36 | 0.0% | 0 | 0.0% | 0 | 0.0% | 0 |
| Social Democratic Party | 35 | 0.0% | 0 | 0.0% | 0 | 0.0% | 0 |
| Total | 128,516 | 100.0% | 30 | 100.0% | 30 | 100.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.
Council composition: what this election replaced
Two opencouncildata snapshots: the council immediately after the 2022 election (current) and immediately before it (2021). Only ~⅓ of seats were contested in 2022 — most of the bench is unchanged, and the cycle's effect on the overall composition is what shifts.
Wards in this council
Sorted with the largest gap below the quota first. Click any ward to jump to its full result.
- Ilkley · 1 seat · won at 35.0% · −15.0 pts below quota
- Queensbury · 1 seat · won at 35.2% · −14.8 pts below quota
- Wharfedale · 1 seat · won at 39.5% · −10.5 pts below quota
- Bingley Rural · 1 seat · won at 39.9% · −10.1 pts below quota
- Wibsey · 1 seat · won at 41.7% · −8.3 pts below quota
- Bolton and Undercliffe · 1 seat · won at 43.8% · −6.2 pts below quota
- Keighley West · 1 seat · won at 43.9% · −6.1 pts below quota
- Craven · 1 seat · won at 44.1% · −5.9 pts below quota
- Eccleshill · 1 seat · won at 44.2% · −5.8 pts below quota
- Bowling and Barkerend · 1 seat · won at 44.4% · −5.6 pts below quota
- Heaton · 1 seat · won at 46.3% · −3.7 pts below quota
- Baildon · 1 seat · won at 46.6% · −3.4 pts below quota
- Wyke · 1 seat · won at 48.1% · −1.9 pts below quota
- Keighley Central · 1 seat · won at 48.5% · −1.5 pts below quota
- Bingley · 1 seat · won at 49.2% · −0.8 pts below quota
- Tong · 1 seat · won at 51.7% · above quota
- Little Horton · 1 seat · won at 52.6% · above quota
- Idle and Thackley · 1 seat · won at 53.5% · above quota
- Bradford Moor · 1 seat · won at 53.9% · above quota
- Worth Valley · 1 seat · won at 54.1% · above quota
- Clayton and Fairweather Green · 1 seat · won at 54.9% · above quota
- Manningham · 1 seat · won at 55.1% · above quota
- Windhill and Wrose · 1 seat · won at 55.2% · above quota
- Royds · 1 seat · won at 56.4% · above quota
- Keighley East · 1 seat · won at 57.8% · above quota
- Thornton and Allerton · 1 seat · won at 60.2% · above quota
- Shipley · 1 seat · won at 64.6% · above quota
- Great Horton · 1 seat · won at 76.6% · above quota
- Toller · 1 seat · won at 80.7% · above quota
- City · 1 seat · won at 81.7% · above quota
Race results
Ilkley · single-seat
Marginal winner Winning candidate's share of valid ballots. 35.0% Proportional quota 50.0% Below quota Marginal winner's share minus the proportional quota for this race. Negative = below; positive = above. −15.0 pts Valid ballots (est.) Estimated voters: total votes ÷ 1 seats. Source data does not publish a ballot count for this cycle. 6,338
| Rank | Candidate | Party | Votes | Share 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 |
|---|---|---|---|---|---|---|
| 1 | Loy A. | Conservative Party | 2,220 | 35.0% | −15.0 pts | Elected |
| 2 | Brown R. | Green Party | 2,123 | 33.5% | — | |
| 3 | Scaife G. | Labour Party | 1,239 | 19.5% | — | |
| 4 | Gibbons M. | Independent | 520 | 8.2% | — | |
| 5 | Jones C. | Liberal Democrats | 236 | 3.7% | — |
Queensbury · 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,652
| Rank | Candidate | Party | Votes | Share 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 |
|---|---|---|---|---|---|---|
| 1 | Parsan H. | Labour Party | 1,286 | 35.2% | −14.8 pts | Elected |
| 2 | Hargreaves R. | Independent | 1,127 | 30.9% | — | |
| 3 | Peterken N. | Conservative Party | 980 | 26.8% | — | |
| 4 | Dodwell E. | Green Party | 157 | 4.3% | — | |
| 5 | Whitrick M. | Liberal Democrats | 66 | 1.8% | — | |
| 6 | Salsbury L. | FREE | 36 | 1.0% | — |
Wharfedale · single-seat
Marginal winner Winning candidate's share of valid ballots. 39.5% Proportional quota 50.0% Below quota Marginal winner's share minus the proportional quota for this race. Negative = below; positive = above. −10.5 pts Valid ballots (est.) Estimated voters: total votes ÷ 1 seats. Source data does not publish a ballot count for this cycle. 4,698
| Rank | Candidate | Party | Votes | Share 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 |
|---|---|---|---|---|---|---|
| 1 | Barker G. | Conservative Party | 1,855 | 39.5% | −10.5 pts | Elected |
| 2 | Steele C. | Labour Party | 1,447 | 30.8% | — | |
| 3 | Needle J. | Liberal Democrats | 852 | 18.1% | — | |
| 4 | Turner C. | Green Party | 544 | 11.6% | — |
Bingley Rural · single-seat
Marginal winner Winning candidate's share of valid ballots. 39.9% Proportional quota 50.0% Below quota Marginal winner's share minus the proportional quota for this race. Negative = below; positive = above. −10.1 pts Valid ballots (est.) Estimated voters: total votes ÷ 1 seats. Source data does not publish a ballot count for this cycle. 5,264
| Rank | Candidate | Party | Votes | Share 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 |
|---|---|---|---|---|---|---|
| 1 | Ahmed F. | Conservative Party | 2,100 | 39.9% | −10.1 pts | Elected |
| 2 | Malik A. | Labour Party | 1,353 | 25.7% | — | |
| 3 | Bacon C. | Independent | 999 | 19.0% | — | |
| 4 | Newham B. | Green Party | 531 | 10.1% | — | |
| 5 | Baranowski H. | Liberal Democrats | 281 | 5.3% | — |
Wibsey · single-seat
Marginal winner Winning candidate's share of valid ballots. 41.7% Proportional quota 50.0% Below quota Marginal winner's share minus the proportional quota for this race. Negative = below; positive = above. −8.3 pts Valid ballots (est.) Estimated voters: total votes ÷ 1 seats. Source data does not publish a ballot count for this cycle. 3,232
| Rank | Candidate | Party | Votes | Share 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 |
|---|---|---|---|---|---|---|
| 1 | Khan S. | Labour Party | 1,348 | 41.7% | −8.3 pts | Elected |
| 2 | Gregory G. | Independent | 792 | 24.5% | — | |
| 3 | Lawton K. | Conservative Party | 640 | 19.8% | — | |
| 4 | Boulton B. | Liberal Democrats | 279 | 8.6% | — | |
| 5 | Fetherston G. | Green Party | 173 | 5.4% | — |
Bolton and Undercliffe · single-seat
Marginal winner Winning candidate's share of valid ballots. 43.8% Proportional quota 50.0% Below quota Marginal winner's share minus the proportional quota for this race. Negative = below; positive = above. −6.2 pts Valid ballots (est.) Estimated voters: total votes ÷ 1 seats. Source data does not publish a ballot count for this cycle. 3,217
| Rank | Candidate | Party | Votes | Share 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 |
|---|---|---|---|---|---|---|
| 1 | Humphreys J. | Labour Party | 1,408 | 43.8% | −6.2 pts | Elected |
| 2 | Gazi J. | Liberal Democrats | 1,221 | 38.0% | — | |
| 3 | Barras W. | Yorkshire Party | 335 | 10.4% | — | |
| 4 | Gulland B. | Green Party | 194 | 6.0% | — | |
| 5 | Gibson T. | Trade Unionist and Socialist Coalition | 59 | 1.8% | — |
Keighley West · single-seat
Marginal winner Winning candidate's share of valid ballots. 43.9% Proportional quota 50.0% Below quota Marginal winner's share minus the proportional quota for this race. Negative = below; positive = above. −6.1 pts Valid ballots (est.) Estimated voters: total votes ÷ 1 seats. Source data does not publish a ballot count for this cycle. 3,434
| Rank | Candidate | Party | Votes | Share 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 |
|---|---|---|---|---|---|---|
| 1 | Godwin P. | Labour Party | 1,509 | 43.9% | −6.1 pts | Elected |
| 2 | Corkindale P. | Conservative Party | 1,257 | 36.6% | — | |
| 3 | Kelly L. | Independent | 356 | 10.4% | — | |
| 4 | Atlas D. | Yorkshire Party | 118 | 3.4% | — | |
| 5 | Whitaker J. | Green Party | 99 | 2.9% | — | |
| 6 | Spoerry S. | Liberal Democrats | 54 | 1.6% | — | |
| 7 | Robinson L. | FBM | 41 | 1.2% | — |
Craven · single-seat
Marginal winner Winning candidate's share of valid ballots. 44.1% Proportional quota 50.0% Below quota Marginal winner's share minus the proportional quota for this race. Negative = below; positive = above. −5.9 pts Valid ballots (est.) Estimated voters: total votes ÷ 1 seats. Source data does not publish a ballot count for this cycle. 6,152
| Rank | Candidate | Party | Votes | Share 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 |
|---|---|---|---|---|---|---|
| 1 | Whitaker C. | Green Party | 2,713 | 44.1% | −5.9 pts | Elected |
| 2 | Whitaker R. | Conservative Party | 2,488 | 40.4% | — | |
| 3 | Ghafoor U. | Labour Party | 545 | 8.9% | — | |
| 4 | Kaye P. | Yorkshire Party | 226 | 3.7% | — | |
| 5 | Mann P. | Liberal Democrats | 120 | 2.0% | — | |
| 6 | Ross A. | Heritage Party | 60 | 1.0% | — |
Eccleshill · 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. 3,325
| Rank | Candidate | Party | Votes | Share 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 |
|---|---|---|---|---|---|---|
| 1 | Hayden C. | Labour Party | 1,470 | 44.2% | −5.8 pts | Elected |
| 2 | Jedrzejewska A. | Liberal Democrats | 1,332 | 40.1% | — | |
| 3 | Barras J. | Yorkshire Party | 309 | 9.3% | — | |
| 4 | Duvier C. | Green Party | 145 | 4.4% | — | |
| 5 | Jenkinson M. | Independent | 69 | 2.1% | — |
Bowling and Barkerend · single-seat
Marginal winner Winning candidate's share of valid ballots. 44.4% Proportional quota 50.0% Below quota Marginal winner's share minus the proportional quota for this race. Negative = below; positive = above. −5.6 pts Valid ballots (est.) Estimated voters: total votes ÷ 1 seats. Source data does not publish a ballot count for this cycle. 4,387
| Rank | Candidate | Party | Votes | Share 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 |
|---|---|---|---|---|---|---|
| 1 | Jamil R. | Labour Party | 1,947 | 44.4% | −5.6 pts | Elected |
| 2 | Jamil M. | Conservative Party | 1,864 | 42.5% | — | |
| 3 | Rickford A. | Green Party | 225 | 5.1% | — | |
| 4 | Lubenko S. | Liberal Democrats | 211 | 4.8% | — | |
| 5 | Farooq T. | Independent | 140 | 3.2% | — |
Heaton · 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. 4,508
| Rank | Candidate | Party | Votes | Share 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 |
|---|---|---|---|---|---|---|
| 1 | Mohammed N. | Labour Party | 2,088 | 46.3% | −3.7 pts | Elected |
| 2 | Mahmood K. | Green Party | 1,914 | 42.5% | — | |
| 3 | Robertshaw S. | Conservative Party | 346 | 7.7% | — | |
| 4 | McCarthy P. | Liberal Democrats | 160 | 3.5% | — |
Baildon · single-seat
Marginal winner Winning candidate's share of valid ballots. 46.6% Proportional quota 50.0% Below quota Marginal winner's share minus the proportional quota for this race. Negative = below; positive = above. −3.4 pts Valid ballots (est.) Estimated voters: total votes ÷ 1 seats. Source data does not publish a ballot count for this cycle. 4,794
| Rank | Candidate | Party | Votes | Share 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 |
|---|---|---|---|---|---|---|
| 1 | Coates A. | Conservative Party | 2,232 | 46.6% | −3.4 pts | Elected |
| 2 | Ashton P. | Labour Party | 1,832 | 38.2% | — | |
| 3 | Dunk C. | Green Party | 395 | 8.2% | — | |
| 4 | Wilkinson D. | Liberal Democrats | 335 | 7.0% | — |
Wyke · single-seat
Marginal winner Winning candidate's share of valid ballots. 48.1% Proportional quota 50.0% Below quota Marginal winner's share minus the proportional quota for this race. Negative = below; positive = above. −1.9 pts Valid ballots (est.) Estimated voters: total votes ÷ 1 seats. Source data does not publish a ballot count for this cycle. 3,034
| Rank | Candidate | Party | Votes | Share 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 |
|---|---|---|---|---|---|---|
| 1 | Walsh A. | Labour Party | 1,458 | 48.1% | −1.9 pts | Elected |
| 2 | Milczanowski R. | Conservative Party | 983 | 32.4% | — | |
| 3 | Lewthwaite J. | BDP | 214 | 7.1% | — | |
| 4 | Parkinson D. | Green Party | 190 | 6.3% | — | |
| 5 | Hall K. | Liberal Democrats | 189 | 6.2% | — |
Keighley Central · single-seat
Marginal winner Winning candidate's share of valid ballots. 48.5% Proportional quota 50.0% Below quota Marginal winner's share minus the proportional quota for this race. Negative = below; positive = above. −1.5 pts Valid ballots (est.) Estimated voters: total votes ÷ 1 seats. Source data does not publish a ballot count for this cycle. 6,423
| Rank | Candidate | Party | Votes | Share 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 |
|---|---|---|---|---|---|---|
| 1 | Nazam M. | Conservative Party | 3,117 | 48.5% | −1.5 pts | Elected |
| 2 | Zaman A. | Labour Party | 2,864 | 44.6% | — | |
| 3 | Telfer A. | Green Party | 163 | 2.5% | — | |
| 4 | Allon N. | Liberal Democrats | 152 | 2.4% | — | |
| 5 | Buxton B. | Yorkshire Party | 127 | 2.0% | — |
Bingley · single-seat
Marginal winner Winning candidate's share of valid ballots. 49.2% Proportional quota 50.0% Below quota Marginal winner's share minus the proportional quota for this race. Negative = below; positive = above. −0.8 pts Valid ballots (est.) Estimated voters: total votes ÷ 1 seats. Source data does not publish a ballot count for this cycle. 6,340
| Rank | Candidate | Party | Votes | Share 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 |
|---|---|---|---|---|---|---|
| 1 | Wheatley J. | Labour Party | 3,120 | 49.2% | −0.8 pts | Elected |
| 2 | Heseltine D. | Conservative Party | 2,603 | 41.1% | — | |
| 3 | Drucquer R. | Green Party | 422 | 6.7% | — | |
| 4 | Russell P. | Liberal Democrats | 195 | 3.1% | — |
Tong · single-seat
Marginal winner Winning candidate's share of valid ballots. 51.7% 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. 2,969
| Rank | Candidate | Party | Votes | Share 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 |
|---|---|---|---|---|---|---|
| 1 | Hickson C. | Green Party | 1,534 | 51.7% | +1.7 pts | Elected |
| 2 | Hughes T. | Labour Party | 1,088 | 36.6% | — | |
| 3 | Khan H. | Conservative Party | 275 | 9.3% | — | |
| 4 | Elliott S. | Liberal Democrats | 72 | 2.4% | — |
Little Horton · single-seat
Marginal winner Winning candidate's share of valid ballots. 52.6% Proportional quota 50.0% Below quota Marginal winner's share minus the proportional quota for this race. Negative = below; positive = above. +2.6 pts Valid ballots (est.) Estimated voters: total votes ÷ 1 seats. Source data does not publish a ballot count for this cycle. 4,836
| Rank | Candidate | Party | Votes | Share 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 |
|---|---|---|---|---|---|---|
| 1 | Elahi N. | Independent | 2,544 | 52.6% | +2.6 pts | Elected |
| 2 | Mir F. | Labour Party | 1,943 | 40.2% | — | |
| 3 | Hunt J. | Liberal Democrats | 144 | 3.0% | — | |
| 4 | Kauser S. | Conservative Party | 125 | 2.6% | — | |
| 5 | Ali Arobo N. | Green Party | 80 | 1.7% | — |
Idle and Thackley · single-seat
Marginal winner Winning candidate's share of valid ballots. 53.5% Proportional quota 50.0% Below quota Marginal winner's share minus the proportional quota for this race. Negative = below; positive = above. +3.5 pts Valid ballots (est.) Estimated voters: total votes ÷ 1 seats. Source data does not publish a ballot count for this cycle. 4,342
| Rank | Candidate | Party | Votes | Share 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 |
|---|---|---|---|---|---|---|
| 1 | Naylor A. | Liberal Democrats | 2,323 | 53.5% | +3.5 pts | Elected |
| 2 | Stephenson A. | Labour Party | 989 | 22.8% | — | |
| 3 | Paterson A. | Conservative Party | 700 | 16.1% | — | |
| 4 | Lawrence T. | Green Party | 183 | 4.2% | — | |
| 5 | Barras L. | Yorkshire Party | 147 | 3.4% | — |
Bradford Moor · single-seat
Marginal winner Winning candidate's share of valid ballots. 53.9% Proportional quota 50.0% Below quota Marginal winner's share minus the proportional quota for this race. Negative = below; positive = above. +3.9 pts Valid ballots (est.) Estimated voters: total votes ÷ 1 seats. Source data does not publish a ballot count for this cycle. 4,600
| Rank | Candidate | Party | Votes | Share 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 |
|---|---|---|---|---|---|---|
| 1 | Shafiq M. | Labour Party | 2,479 | 53.9% | +3.9 pts | Elected |
| 2 | Thair M. | Liberal Democrats | 1,871 | 40.7% | — | |
| 3 | Vanicat S. | Green Party | 133 | 2.9% | — | |
| 4 | Anjum K. | Conservative Party | 117 | 2.5% | — |
Worth Valley · single-seat
Marginal winner Winning candidate's share of valid ballots. 54.1% 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. 4,307
| Rank | Candidate | Party | Votes | Share 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 |
|---|---|---|---|---|---|---|
| 1 | Herd C. | Conservative Party | 2,329 | 54.1% | +4.1 pts | Elected |
| 2 | Joomun-Whitehead A. | Labour Party | 1,328 | 30.8% | — | |
| 3 | Russell J. | Green Party | 439 | 10.2% | — | |
| 4 | Jones B. | Liberal Democrats | 211 | 4.9% | — |
Clayton and Fairweather Green · single-seat
Marginal winner Winning candidate's share of valid ballots. 54.9% 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,453
| Rank | Candidate | Party | Votes | Share 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 |
|---|---|---|---|---|---|---|
| 1 | Engel S. | Labour Party | 1,897 | 54.9% | +4.9 pts | Elected |
| 2 | Khan S. | Conservative Party | 1,045 | 30.3% | — | |
| 3 | May S. | Green Party | 305 | 8.8% | — | |
| 4 | Cotterill S. | Liberal Democrats | 206 | 6.0% | — |
Manningham · single-seat
Marginal winner Winning candidate's share of valid ballots. 55.1% Proportional quota 50.0% Below quota Marginal winner's share minus the proportional quota for this race. Negative = below; positive = above. +5.1 pts Valid ballots (est.) Estimated voters: total votes ÷ 1 seats. Source data does not publish a ballot count for this cycle. 4,349
| Rank | Candidate | Party | Votes | Share 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 |
|---|---|---|---|---|---|---|
| 1 | Hussain S. | Labour Party | 2,396 | 55.1% | +5.1 pts | Elected |
| 2 | Islam M. | Independent | 1,621 | 37.3% | — | |
| 3 | Barnes B. | Green Party | 198 | 4.6% | — | |
| 4 | Robertshaw J. | Conservative Party | 134 | 3.1% | — |
Windhill and Wrose · single-seat
Marginal winner Winning candidate's share of valid ballots. 55.2% 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. 3,326
| Rank | Candidate | Party | Votes | Share 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 |
|---|---|---|---|---|---|---|
| 1 | Rowe L. | Labour Party | 1,836 | 55.2% | +5.2 pts | Elected |
| 2 | Cochrane P. | Conservative Party | 922 | 27.7% | — | |
| 3 | Love H. | Green Party | 321 | 9.7% | — | |
| 4 | Thorne G. | Liberal Democrats | 247 | 7.4% | — |
Royds · single-seat
Marginal winner Winning candidate's share of valid ballots. 56.4% Proportional quota 50.0% Below quota Marginal winner's share minus the proportional quota for this race. Negative = below; positive = above. +6.4 pts Valid ballots (est.) Estimated voters: total votes ÷ 1 seats. Source data does not publish a ballot count for this cycle. 2,983
| Rank | Candidate | Party | Votes | Share 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 |
|---|---|---|---|---|---|---|
| 1 | Wood R. | Labour Party | 1,683 | 56.4% | +6.4 pts | Elected |
| 2 | Turpin P. | Conservative Party | 890 | 29.8% | — | |
| 3 | Devonshire S. | Liberal Democrats | 208 | 7.0% | — | |
| 4 | Sharp I. | Green Party | 202 | 6.8% | — |
Keighley East · single-seat
Marginal winner Winning candidate's share of valid ballots. 57.8% Proportional quota 50.0% Below quota Marginal winner's share minus the proportional quota for this race. Negative = below; positive = above. +7.8 pts Valid ballots (est.) Estimated voters: total votes ÷ 1 seats. Source data does not publish a ballot count for this cycle. 4,421
| Rank | Candidate | Party | Votes | Share 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 |
|---|---|---|---|---|---|---|
| 1 | Firth C. | Labour Party | 2,554 | 57.8% | +7.8 pts | Elected |
| 2 | Wood M. | Conservative Party | 1,296 | 29.3% | — | |
| 3 | Anahata S. | Green Party | 266 | 6.0% | — | |
| 4 | Kirkham K. | Liberal Democrats | 160 | 3.6% | — | |
| 5 | Harrison W. | Independent | 135 | 3.1% | — | |
| 6 | Vann A. | Social Democratic Party | 10 | 0.2% | — |
Thornton and Allerton · single-seat
Marginal winner Winning candidate's share of valid ballots. 60.2% Proportional quota 50.0% Below quota Marginal winner's share minus the proportional quota for this race. Negative = below; positive = above. +10.2 pts Valid ballots (est.) Estimated voters: total votes ÷ 1 seats. Source data does not publish a ballot count for this cycle. 3,835
| Rank | Candidate | Party | Votes | Share 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 |
|---|---|---|---|---|---|---|
| 1 | Regan K. | Labour Party | 2,309 | 60.2% | +10.2 pts | Elected |
| 2 | Morton J. | Conservative Party | 967 | 25.2% | — | |
| 3 | Pickard A. | Liberal Democrats | 307 | 8.0% | — | |
| 4 | Whitaker J. | Green Party | 252 | 6.6% | — |
Shipley · single-seat
Marginal winner Winning candidate's share of valid ballots. 64.6% Proportional quota 50.0% Below quota Marginal winner's share minus the proportional quota for this race. Negative = below; positive = above. +14.6 pts Valid ballots (est.) Estimated voters: total votes ÷ 1 seats. Source data does not publish a ballot count for this cycle. 5,267
| Rank | Candidate | Party | Votes | Share 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 |
|---|---|---|---|---|---|---|
| 1 | Watson A. | Green Party | 3,405 | 64.6% | +14.6 pts | Elected |
| 2 | Bashir M. | Labour Party | 1,121 | 21.3% | — | |
| 3 | Jandu S. | Conservative Party | 423 | 8.0% | — | |
| 4 | Longhorn D. | Yorkshire Party | 160 | 3.0% | — | |
| 5 | Errington N. | Liberal Democrats | 92 | 1.7% | — | |
| 6 | Place S. | Independent | 41 | 0.8% | — | |
| 7 | Wood J. | Social Democratic Party | 25 | 0.5% | — |
Great Horton · single-seat
Marginal winner Winning candidate's share of valid ballots. 76.6% Proportional quota 50.0% Below quota Marginal winner's share minus the proportional quota for this race. Negative = below; positive = above. +26.6 pts Valid ballots (est.) Estimated voters: total votes ÷ 1 seats. Source data does not publish a ballot count for this cycle. 3,281
| Rank | Candidate | Party | Votes | Share 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 |
|---|---|---|---|---|---|---|
| 1 | Dodds J. | Labour Party | 2,512 | 76.6% | +26.6 pts | Elected |
| 2 | Patel A. | Conservative Party | 423 | 12.9% | — | |
| 3 | Hall L. | Green Party | 199 | 6.1% | — | |
| 4 | Moses S. | Liberal Democrats | 147 | 4.5% | — |
Toller · single-seat
Marginal winner Winning candidate's share of valid ballots. 80.7% Proportional quota 50.0% Below quota Marginal winner's share minus the proportional quota for this race. Negative = below; positive = above. +30.7 pts Valid ballots (est.) Estimated voters: total votes ÷ 1 seats. Source data does not publish a ballot count for this cycle. 4,568
| Rank | Candidate | Party | Votes | Share 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 |
|---|---|---|---|---|---|---|
| 1 | Hussain K. | Labour Party | 3,686 | 80.7% | +30.7 pts | Elected |
| 2 | Hussain A. | Independent | 363 | 7.9% | — | |
| 3 | Dobiech S. | Green Party | 242 | 5.3% | — | |
| 4 | Rayner S. | Conservative Party | 214 | 4.7% | — | |
| 5 | Mahmood T. | Liberal Democrats | 63 | 1.4% | — |
City · single-seat
Marginal winner Winning candidate's share of valid ballots. 81.7% Proportional quota 50.0% Below quota Marginal winner's share minus the proportional quota for this race. Negative = below; positive = above. +31.7 pts Valid ballots (est.) Estimated voters: total votes ÷ 1 seats. Source data does not publish a ballot count for this cycle. 3,181
| Rank | Candidate | Party | Votes | Share 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 |
|---|---|---|---|---|---|---|
| 1 | Azam M. | Labour Party | 2,598 | 81.7% | +31.7 pts | Elected |
| 2 | Hussain H. | Green Party | 583 | 18.3% | — |