← Reading (all cycles) · 2 May 2019 cohort

Reading 2019

Local elections held 2 May 2019.

15 ward races
16 seats
8 elected below the proportional quota
50.0% of seats below quota

How to read this page

Each race below shows the share of valid ballots the marginal elected candidate actually won, and compares it to the proportional quota: the share they'd need to clinch the seat under any proportional voting method (1 seats + 1). For a 1-seat ward the quota is 50%; for 2 seats, 33.3%; for 3 seats, 25%.

Where the actual winning share fell below the quota, we show the signed gap as points below quota (a negative number) — the editorial indictment. Above-quota results clear the bar and pass without comment. The voting method is the subject of every observation here. Named candidates appear as the public election record requires; the cause being audited is the voting method, not the individuals. See the methodology page for derivations.

If votes were counted by party

Across the 15 wards in this cycle, parties received the vote totals below. The proportional column shows what each party would have won if the 16 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 Party15,49639.4%956.3%743.8%+2
Conservative Party10,14825.8%425.0%425.0%0
Green Party7,53719.2%212.5%318.8%-1
Liberal Democrats5,77514.7%16.3%212.5%-1
UK Independence Party (UKIP)1750.4%00.0%00.0%0
Independent1380.4%00.0%00.0%0
The Liberal Party450.1%00.0%00.0%0
Total39,314100.0%16100.0%16100.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 2019 election (current) and immediately before it (2018). Only ~⅓ of seats were contested in 2019 — most of the bench is unchanged, and the cycle's effect on the overall composition is what shifts.

Current (2019)
Previous (2018)

Wards in this council

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

Race results

Kentwood · single-seat

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

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
1Raj SinghConservative Party1,13842.1%−7.9 ptsElected
2Glenn DennisLabour Party1,03838.4%
3Gary CosterLiberal Democrats2659.8%
4Richard WalkemGreen Party2619.7%

EC ward code E05002324 · Back to ward index

Caversham · 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. 2,649

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
1Ayo SokaleLabour Party1,16844.1%−5.9 ptsElected
2Ella BarrettConservative Party62523.6%
3David FosterGreen Party44816.9%
4Hilary SmartLiberal Democrats40815.4%

EC ward code E05002321 · Back to ward index

Minster · single-seat

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

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
1Paul GittingsLabour Party1,08545.4%−4.6 ptsElected
2Nick FudgeConservative Party76432.0%
3James MooreLiberal Democrats29612.4%
4Willem LondemanGreen Party24410.2%

EC ward code E05002326 · Back to ward index

Redlands · single-seat

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

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
1Jamie WhithamGreen Party1,00246.7%−3.3 ptsElected
2Mo McSevneyLabour Party78236.5%
3Beth VincentConservative Party23010.7%
4Graham AlexanderLiberal Democrats1316.1%

EC ward code E05002330 · Back to ward index

Tilehurst · single-seat

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

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
1Ricky DuveenLiberal Democrats1,26447.3%−2.7 ptsElected
2Sandra VickersConservative Party74527.9%
3Ali FosterLabour Party36713.7%
4William MacpheeUK Independence Party (UKIP)1756.5%
5Deborah WilsonGreen Party1224.6%

EC ward code E05002333 · Back to ward index

Church · single-seat

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

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
1Paul WoodwardLabour Party83247.8%−2.2 ptsElected
2Shekhar NatarajanConservative Party41824.0%
3Kathryn McCannGreen Party26515.2%
4Francis JakemanLiberal Democrats22512.9%

EC ward code E05002322 · Back to ward index

Peppard · single-seat

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

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
1Clare GrashoffConservative Party1,33049.0%−1.0 ptsElected
2Oliver WhiteLabour Party59922.1%
3Doug CresswellGreen Party40815.0%
4Simon SmartLiberal Democrats37613.9%

EC ward code E05002329 · Back to ward index

Abbey · single-seat

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

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
1Mohammed AyubLabour Party1,17949.4%−0.6 ptsElected
2Howard DarbyGreen Party46119.3%
3Alison StevensConservative Party42617.8%
4Chris BurdenLiberal Democrats32313.5%

EC ward code E05002319 · Back to ward index

Thames · 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. 34.9% Proportional quota 33.3% 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 ÷ 2 seats. Source data does not publish a ballot count for this cycle. 3,302

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
1Jeanette SkeatsConservative Party1,24418.8%37.7%+4.3 ptsElected
2Paul CarnellConservative Party1,15317.5%34.9%+1.6 ptsElected
3Boubacar DembeleLabour Party82212.4%24.9%
4Ben PerryLabour Party79612.1%24.1%
5Jo RamsayLiberal Democrats74611.3%22.6%
6Guy PenmanLiberal Democrats70010.6%21.2%
7Sarah McNamaraGreen Party68410.4%20.7%
8Sally NewmanGreen Party4586.9%13.9%

EC ward code E05002332 · Back to ward index

Norcot · single-seat

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

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
1Graeme HoskinLabour Party1,15652.4%+2.4 ptsElected
2Zach OkeyoConservative Party47221.4%
3Jill Wigmore-WelshGreen Party23110.5%
4Stewart ElliottLiberal Democrats1637.4%
5Alan GulliverIndependent1386.3%
6Stephen GrahamThe Liberal Party452.0%

EC ward code E05002327 · Back to ward index

Southcote · single-seat

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

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
1Jason BrockLabour Party1,07453.0%+3.0 ptsElected
2Dipika UpadhyayConservative Party53126.2%
3Amanda WalshGreen Party23411.5%
4Marie FrenchLiberal Democrats1899.3%

EC ward code E05002331 · Back to ward index

Battle · single-seat

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

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
1Chris MaskellLabour Party1,10055.0%+5.0 ptsElected
2Fiona CoxGreen Party34317.2%
3Michael HeyConservative Party32916.5%
4John GroutLiberal Democrats22711.4%

EC ward code E05002320 · Back to ward index

Park · 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. 3,216

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
1Josh WilliamsGreen Party1,81556.4%+6.4 ptsElected
2Amjad TararLabour Party1,23538.4%
3Chris DodsonLiberal Democrats842.6%
4Adam PhelpsConservative Party822.5%

EC ward code E05002328 · Back to ward index

Katesgrove · single-seat

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

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
1Liam ChallengerLabour Party1,08457.2%+7.2 ptsElected
2Louise KeaneGreen Party32617.2%
3Natalie GreenstreetConservative Party28214.9%
4Peter KinsleyLiberal Democrats20410.8%

EC ward code E05002323 · Back to ward index

Whitley · single-seat

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

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
1Micky LengLabour Party1,17959.9%+9.9 ptsElected
2Robert VickersConservative Party37919.3%
3Lucy MortlockGreen Party23511.9%
4John IllendenLiberal Democrats1748.8%

EC ward code E05002334 · Back to ward index