← All councils

Cambridgeshire

Every election cycle we have data for, most recent first.

Cycles

Council composition as of 2025

61 councillors, by party. One square per seat. Source: opencouncildata annual snapshot — reflects the council on 1 January 2025 including by-elections and defections. Hover any seat for the party.

Most recent election (2019)

In 2019, 1 seat was up across 1 ward. The table below shows what each party actually won — alongside what they would have won if the 1 seat had been shared 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 %Δ
Liberal Democrats1,32846.7%1100.0%1100.0%0
Labour Party74126.0%00.0%00.0%0
Conservative Party45215.9%00.0%00.0%0
Green Party32511.4%00.0%00.0%0
Total2,846100.0%1100.0%1100.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)

Full ward-by-ward results for 2019 →

Ward by ward

Each row is a ward, each column a cycle. Each cell shows the top-of-poll candidate's party (swatch) and their share of valid ballots. Wards are matched by name across cycles — boundary reviews can mean a ward of the same name is a slightly different area in a later cycle.

Ward20172019
Abbey41%
Alconbury and Kimbolton62%
Arbury45%
Bar Hill40%
Brampton and Buckden49%
Burwell54%
Cambourne43%
Castle30%
Chatteris48%
Cherry Hinton49%
Chesterton44%
Cottenham and Willingham35%
Duxford55%
Ely North49%
Ely South46%
Fulbourn43%
Gamlingay42%
Godmanchester and Huntingdon South52%
Hardwick50%
Histon and Impington54%
Huntingdon North and Hartford35%
Huntingdon West49%
King's Hedges40%
Linton48%
Littleport57%
Longstanton, Northstowe and Over46%
March North and Waldersey53%
March South and Rural40%
Market42%
Melbourn and Bassingbourn56%
Newnham51%
Papworth and Swavesey56%
Petersfield41%
Queen Edith's46%
Ramsey and Bury45%
Roman Bank and Peckover54%
Romsey45%
Sawston and Shelford43%
Sawtry and Stilton69%
Soham North and Isleham66%
Soham South and Haddenham58%
Somersham and Earith68%
St Ives North and Wyton54%
St Ives South and Needingworth59%
St Neots East and Gransden53%
St Neots Eynesbury43%
St Neots Priory Park and Little Paxton43%
St Neots the Eatons46%
Sutton46%
The Hemingfords and Fenstanton62%
Trumpington39%47%
Warboys and the Stukeleys62%
Waterbeach46%
Whittlesey North66%
Whittlesey South66%
Wisbech East63%
Wisbech West61%
Woodditton67%
Yaxley and Farcet52%