Contents
By-Elections:
Corstorphine and Murrayfield (Ward 6) - 9th of March 2023
Colinton and Fairmilehead (Ward 8) - 14th of November 2024
Colinton and Fairmilehead (Ward 8) - 23rd of January 2025
Council-Wide Results
Edinburgh’s 2022 results are best summed up in the style of a newspaper headline – “CONSERVATIVE’S CAPITAL CALAMITY“. After a poor result in the city at Holyrood last year, the Conservatives plummeted from first to fourth in terms of votes. That caused them to lose half of their seats, leaving them with 9, and actually making them the fifth and smallest party on the council in terms of seats. It wasn’t the SNP or Labour that benefitted however, with the SNP’s slight vote slip still keeping them on 19 seats, and Labour gaining only marginally by both measures, up one seat to 13.
Instead, the big winners in Edinburgh definitely feel like the Lib Dems. They doubled their number of seats to 12, and although that put them one shy of Labour’s total, they were second in vote share with a superb 7% swing. Likewise very content with the outcome will be the Greens, who gained two to hit 10 councillors. However, they failed to elect a new candidate in the Fountainbridge & Craiglockhart ward, and some of their results were dicier than their counterparts in Glasgow.
Administration
After the election, a Labour minority administration was formed.
Interactive Map
Though Scotland is a relative rarity in European terms in that our capital isn’t our largest city, Edinburgh is otherwise typical of capitals across the continent. It draws together areas of relative wealth and deprivation, and has extremely high political diversity. Unlike its counterweight at the other end of the Central Belt, Edinburgh has relatively minimal sprawl connecting it to historic surrounding towns – it only flows neatly into Musselburgh in neighbouring East Lothian. However, the council boundaries do include some outlying villages that the city proper hasn’t yet absorbed either, most notably at (South) Queensferry in the west.
The comparatively affluent nature of the city would see it retain Conservative MPs right up until the party’s collapse in 1997, and it would also be a site of one of their earliest constituency victories at Holyrood in 2003. Though Labour were the leading parliamentary force in the city for a time, the Lib Dems also had a strong presence, particularly in the West and South. At Westminster, Edinburgh South was Labour’s sole Scottish seat in 2015 and again since 2019, whilst the Lib Dem loss of West would only last until 2017. At Holyrood, the SNP first won a single constituency here in 2007 before almost sweeping the city in 2011. 2016 saw each of the pro-Union parties win a single constituency, though the Conservatives would lose theirs in 2021.
The old district council started with Conservative leads in the first three elections, though only 1977 was with a majority. This shifted to clear Labour leads for most of the rest of the time and through the early unitary era, with only 1992 failing to produce a Labour majority. That year was also the start of a steady uptick in Lib Dem representation in Edinburgh, culminating in taking the mantle of second largest party in 2003.
Individual Ward Results
Councillors and Key Stats
4 Councillors, in order elected:
🟠Lib Dem: Kevin Lang
🟡SNP: Norrie Work
🟠Lib Dem: Louise Young
🟠Lib Dem: Lewis J Younie
Change vs 2017: +1 Lib Dem, -1 Conservative
Electorate: 27454
Turnout: 51.1%
Valid: 13909 (99.2%)
Spoiled: 115 (0.8%)
Quota: 2782
Candidates
🟤Workers Party: Annemarie Baillie
🟢Green: Andrew Brough
🟣Family: Stewart Geddes
🔴Labour: Fred Hessler
🔵Conservative: James Hill
🟠Lib Dem: Kevin Lang
🟡SNP: Norrie Work
🟠Lib Dem: Louise Young
🟠Lib Dem: Lewis J Younie
Almond: First Preferences
Almond: Transfers
Almond: Results by Polling District
Almond: Second Preferences
Almond: Two-Candidate Preferred
Councillors and Key Stats
4 Councillors, in order elected:
🔵Conservative: Graeme Bruce
🟡SNP: Neil Gardiner
🔴Labour: Stephen Jenkinson
🟡SNP: Fiona Glasgow
Change vs 2017: +1 SNP, -1 Conservative
Turnout: 46.3%
Electorate: 24312
Valid: 11087 (98.4%)
Spoiled: 179 (1.6%)
Quota: 2218
Candidates
🔵Conservative: Graeme Bruce
🟠Lib Dem: Michael Chappell
🟣Family: Richard Fettes
🟡SNP: Neil Gardiner
🔵Conservative: Emma Gilchrist
🟡SNP: Fiona Glasgow
🔴Labour: Stephen Jenkinson
🟢Green: Ross Muller
🟤Libertarian: Louis Rowlands
Pentland Hills: First Preferences
Pentland Hills: Transfers
Pentland Hills: Results by Polling District
Pentland Hills: Second Preferences
Pentland Hills: Two-Candidate Preferred
Councillors and Key Stats
3 Councillors, in order elected:
🟠Lib Dem: Robert Aldridge
🟡SNP: Euan Hyslop
🟠Lib Dem: Edward Thornley
Change vs 2017: +1 Lib Dem, -1 Conservative
Turnout: 50.8%
Electorate: 18822
Valid: 9451 (98.9%)
Spoiled: 109 (1.1%)
Quota: 2363
Candidates
🟠Lib Dem: Robert Aldridge
🔵Conservative: Mark Brown
🟡SNP: Euan Hyslop
🟣Family: Eileen Johnston
🔴Labour: Nkechi Okoro
🟢Green: Anne Scott
🟤Libertarian: Gary Smith
🟠Lib Dem: Edward Thornley
Drum Brae and Gyle: First Preferences
Drum Brae and Gyle: Transfers
Drum Brae and Gyle: Results by Polling District
Drum Brae and Gyle: Second Preferences
Drum Brae and Gyle: Two-Candidate Preferred
Councillors and Key Stats
4 Councillors, in order elected:
🟠Lib Dem: Sanne Dijkstra-Downie
🟡SNP: Stuart Dobbin
🔴Labour: Cammy Day
🟢Green: Kayleigh O’Neill
Change vs 2017: +1 Lib Dem, +1 Green, -1 Conservative, -1 SNP
Electorate: 24934
Turnout: 43.0%
Valid: 10555 (98.3%)
Spoiled: 178 (1.7%)
Quota: 2112
Candidates
🔵Conservative: Jim Campbell
🟣Family: Linda Lenora Campbell
🔴Labour: Cammy Day
🟠Lib Dem: Sanne Dijkstra-Downie
🟡SNP: Stuart Dobbin
🟡SNP: Carrie Gooch
🟤Women’s Equality: Kerry Heathcote
🟢Green: Kayleigh O’Neill
Forth: First Preferences
Forth: Transfers
Forth: Results by Polling District
Forth: Second Preferences
Forth: Two-Candidate Preferred
Councillors and Key Stats
4 Councillors, in order elected:
🟠Lib Dem: Hal Osler
🟡SNP: Vicky Nicolson
🔵Conservative: Max Mitchell
🟢Green: Jule Bandel
Change vs 2017: +1 Green, -1 Conservative
Turnout: 55.0%
Electorate: 24608
Valid: 13416 (99.1%)
Spoiled: 126 (0.9%)
Quota: 2684
Candidates
🟢Green: Jule Bandel
🔵Conservative: Stuart Herring
🟣Family: Phil Holden
🟤Libertarian: Tam Laird
⚪Independent: Stephen McNamara
🔵Conservative: Max Mitchell
🔴Labour: Mhairi Munro-Brian
🟡SNP: Vicky Nicolson
🟠Lib Dem: Hal Osler
🟠Lib Dem: Malcolm Wood
Inverleith: First Preferences
Inverleith: Transfers
Inverleith: Results by Polling District
Inverleith: Second Preferences
Inverleith: Two-Candidate Preferred
Councillors and Key Stats
3 Councillors, in order elected:
🟠Lib Dem: Alan Beal
🟠Lib Dem: Euan Davidson
🟡SNP: Frank Ross
Change vs 2017: +1 Lib Dem, -1 Conservative
Turnout: 58.8%
Electorate: 19533
Valid: 11384 (99.1%)
Spoiled: 108 (0.9%)
Quota: 2847
Candidates
🟠Lib Dem: Alan Beal
🟣Family: Norman Colville
🟠Lib Dem: Euan Davidson
🔵Conservative: Hugh Findlay
🟢Green: Connal Hughes
🔴Labour: Richard Parker
🟡SNP: Frank Ross
Corstorphine and Murrayfield: First Preferences
Corstorphine and Murrayfield: Transfers
Corstorphine and Murrayfield: Results by Polling District
Corstorphine and Murrayfield: Second Preferences
Corstorphine and Murrayfield: Two-Candidate Preferred
Councillors and Key Stats
4 Councillors, in order elected:
🔴Labour: Ross McKenzie
🟡SNP: Catherine Fullerton
🟡SNP: Denis Dixon
🟢Green: Dan Heap
Change vs 2017: +1 Green, -1 Conservative
Turnout: 35.9%
Electorate: 23850
Valid: 8375 (97.9%)
Spoiled: 182 (2.1%)
Quota: 1676
Candidates
🟡SNP: Denis Dixon
🟡SNP: Catherine Fullerton
⚪Independent: Ashley Graczyk
🟢Green: Dan Heap
⚫Alba: David Henry
🔵Conservative: Mark Hooley
🔴Labour: Ross McKenzie
🟠Lib Dem: Devin Scobie
Sighthill and Gorgie: First Preferences
Sighthill and Gorgie: Transfers
Sighthill and Gorgie: Results by Polling District
Sighthill and Gorgie: Second Preferences
Sighthill and Gorgie: Two-Candidate Preferred
Councillors and Key Stats
3 Councillors, in order elected:
🔴Labour: Scott Arthur
🔵Conservative: Jason Rust
🟡SNP: Marco Biagi
Change vs 2017: +1 SNP, -1 Conservative
Turnout: 59.3%
Electorate: 19454
Valid: 11414 (98.9%)
Spoiled: 126 (1.1%)
Quota: 2854
Candidates
🔴Labour: Scott Arthur
🟡SNP: Marco Biagi
🔵Conservative: Neil Cuthbert
🟣Family: Richard Lucas
🟢Green: Helen McCabe
🔵Conservative: Jason Rust
🟠Lib Dem: Louise Spence
Colinton and Fairmilehead: First Preferences
Colinton and Fairmilehead: Transfers
Colinton and Fairmilehead: Results by Polling District
Colinton and Fairmilehead: Second Preferences
Colinton and Fairmilehead: Two-Candidate Preferred
Councillors and Key Stats
3 Councillors, in order elected:
🔵Conservative: Christopher Cowdy
🔴Labour: Val Walker
🟡SNP: David Key
Change vs 2017: +1 Labour, -1 Green
Turnout: 49.8%
Electorate: 18284
Valid: 9028 (99.1%)
Spoiled: 84 (0.9%)
Quota: 2854
Candidates
🔵Conservative: Christopher Cowdy
🟠Lib Dem: Fraser Graham
🟡SNP: David Key
🟤Libertarian: Gregor Masson
🟢Green: Megan McHaney
🟣Family: Fraser Ramsay
🔴Labour: Val Walker
Fountainbridge and Craiglockhart: First Preferences
Fountainbridge and Craiglockhart: Transfers
Fountainbridge and Craiglockhart: Results by Polling District
Fountainbridge and Craiglockhart: Second Preferences
Fountainbridge and Craiglockhart: Two-Candidate Preferred
Councillors and Key Stats
4 Councillors, in order elected:
🔴Labour: Mandy Watt
🟠Lib Dem: Neil Ross
🟢Green: Ben Parker
🔵Conservative: Marie-Clair Munro
Change vs 2017: No change
Turnout: 54.0%
Electorate: 25204
Valid: 13547 (99.5%)
Spoiled: 71 (0.5%)
Quota: 2710
Candidates
🟡SNP: Mairianna Clyde
⚫Alba: Leah Gunn Barrett
🔵Conservative: Marie-Clair Munro
🟢Green: Ben Parker
🟠Lib Dem: Neil Ross
🟤Libertarian: Peter Sidor
🔴Labour: Mandy Watt
Morningside: First Preferences
Morningside: Transfers
Morningside: Results by Polling District
Morningside: Second Preferences
Morningside: Two-Candidate Preferred
Councillors and Key Stats
4 Councillors, in order elected:
🔵Conservative: Jo Mowat
🟢Green: Claire Miller
🟡SNP: Finlay McFarlane
🔴Labour: Margaret Graham
Change vs 2017: No change
Electorate: 11910
Turnout: 48.8%
Valid: 5741 (98.7%)
Spoiled: 74 (1.3%)
Quota: 1149
Candidates
⚪Independent: Bonnie Prince Bob
⚪Independent: Pete Carson
🟠Lib Dem: Andy Foxall
🔴Labour: Margaret Graham
⚪Independent: Kevin Illingworth
🟡SNP: Finlay McFarlane
🟢Green: Claire Miller
🔵Conservative: Jo Mowat
🟡SNP: Marianne Mwiki
⚪Independent: Maria Pakpahan-Campbell
⚪Independent: Paul Penman
⚪Independent: Norrie Rowan
⚫Alba: Kevan Shaw
City Centre: First Preferences
City Centre: Transfers
City Centre: Results by Polling District
The five Independents with less than 1% of the vote have been combined into a single bloc for ease of display. Full data per candidate is available in the spreadsheet.
City Centre: Second Preferences
The five Independents with less than 1% of the vote have been combined into a single bloc for ease of display. Full data per candidate is available in the spreadsheet.
City Centre: Two-Candidate Preferred
Councillors and Key Stats
4 Councillors, in order elected:
🟢Green: Susan Rae
🟡SNP: Amy McNeese-Mechan
🔴Labour: James Dalgleish
🟠Lib Dem: Jack Caldwell
Change vs 2017: +1 Lib Dem, -1 SNP
Electorate: 26683
Turnout: 41.7%
Valid: 10996 (98.8%)
Spoiled: 134 (1.2%)
Quota: 2200
Candidates
🟠Lib Dem: Jack Caldwell
🔴Labour: James Dalgleish
🟣Family: Niel Deepnarain
🔵Conservative: Bonus Fombo
🟤Socialist Labour: David Jacobsen
🟡SNP: Amy McNeese-Mechan
🟡SNP: Rob Munn
🟤Freedom Alliance: Jon Pullman
🟢Green: Susan Rae
🟤Women’s Equality: David Renton
🟤Communist: Richard Shillcock
⚫Alba: Joe Smith
Leith Walk: First Preferences
Leith Walk: Transfers
Leith Walk: Results by Polling District
Leith Walk: Second Preferences
Leith Walk: Two-Candidate Preferred
Councillors and Key Stats
3 Councillors, in order elected:
🟡SNP: Adam McVey
🟢Green: Chas Booth
🔴Labour: Katrina Faccenda
Change vs 2017: No change
Turnout: 44.0%
Electorate: 19420
Valid: 8442 (98.8%)
Spoiled: 104 (1.2%)
Quota: 2111
Candidates
🟢Green: Chas Booth
🔴Labour: Katrina Faccenda
🟣Family: Jacqueline Isseri
⚪Independent: Andy MacKenzie
⚫Alba: Euan McGlynn
🟡SNP: Adam McVey
🔵Conservative: Teresa Perchard
🟠Lib Dem: Robin Rea
Leith: First Preferences
Leith: Transfers
Leith: Results by Polling District
Leith: Second Preferences
Leith: Two-Candidate Preferred
Councillors and Key Stats
4 Councillors, in order elected:
🔴Labour: Joan Griffiths
🟡SNP: Danny Aston
🔵Conservative: Iain Whyte
🟢Green: Alex Staniforth
Change vs 2017: No change
Turnout: 44.2%
Electorate: 23924
Valid: 10353 (98.0%)
Spoiled: 215 (2.0%)
Quota: 2071
Candidates
🟡SNP: Danny Aston
🟡SNP: Shelly-Ann Brown
🟠Lib Dem: Elaine Ford
🔴Labour: Joan Griffiths
🟢Green: Alex Staniforth
🔵Conservative: Iain Whyte
Craigentinny and Duddingston: First Preferences
Craigentinny and Duddingston: Transfers
Craigentinny and Duddingston: Results by Polling District
Craigentinny and Duddingston: Second Preferences
Craigentinny and Duddingston: Two-Candidate Preferred
Councillors and Key Stats
4 Councillors, in order elected:
🔴Labour: Tim Pogson
🟢Green: Steve Burgess
🟡SNP: Simita Kumar
🟠Lib Dem: Pauline Flannery
Change vs 2017: +1 Lib Dem, -1 Conservative
Turnout: 53.8%
Electorate: 9066
Valid: 4841 (99.2%)
Spoiled: 40 (0.8%)
Quota: 1211
Candidates
🟢Green: Steve Burgess
🟠Lib Dem: Pauline Flannery
🟡SNP: Simita Kumar
🔴Labour: Tim Pogson
🔵Conservative: Cameron Rose
Southside and Newington: First Preferences
Southside and Newington: Transfers
Southside and Newington: Results by Polling District
Southside and Newington: Second Preferences
Southside and Newington: Two-Candidate Preferred
Councillors and Key Stats
4 Councillors, in order elected:
🔴Labour: Lezley Cameron
🟡SNP: Lesley MacInnes
🔵Conservative: Philip Doggart
🟡SNP: Martha Coelho
Change vs 2017: No change
Turnout: 43.7%
Electorate: 28977
Valid: 12433 (98.2%)
Spoiled: 232 (1.8%)
Quota: 2487
Candidates
🔴Labour: Lezley Cameron
🟣Family: James Christie
🔵Conservative: Philip Doggart
🟤SSP: Colin Fox
🟡SNP: Lesley MacInnes
🟡SNP: Martha Coelho
🔴Labour: Ishrat Measom
⚫Alba: Abu Meron
🟢Green: John Nicol
🟠Lib Dem: Madeleine Planche
Liberton and Gilmerton: First Preferences
Liberton and Gilmerton: Transfers
Liberton and Gilmerton: Results by Polling District
Liberton and Gilmerton: Second Preferences
Liberton and Gilmerton: Two-Candidate Preferred
Councillors and Key Stats
4 Councillors, in order elected:
🟡SNP: Kate Campbell
🔴Labour: Jane Meagher
🟢Green: Alys Mumford
🔵Conservative: Tim Jones
Change vs 2017: No change
Turnout: 43.7%
Electorate: 26118
Valid: 11183 (97.9%)
Spoiled: 243 (2.1%)
Quota: 2237
Candidates
🟡SNP: Kate Campbell
🔵Conservative: Tim Jones
⚪Independent: Andrew McDonald
🔴Labour: Jane Meagher
🟢Green: Alys Mumford
🔴Labour: Heather Pugh
🟠Lib Dem: Jill Reilly
🟡SNP: Simon Shedden
⚫Alba: Anne Todd
Portobello and Craigmillar: First Preferences
Portobello and Craigmillar: Transfers
Portobello and Craigmillar: Results by Polling District
Portobello and Craigmillar: Second Preferences
Portobello and Craigmillar: Two-Candidate Preferred
If you’re unsure about what any of this data means, a quick explanation is given in this piece.
By-Elections
Councillors and Key Stats
1 Councillor Elected:
Lib Dem: Fiona Bennett
Change vs 2022 (notional): Lib Dem Hold
Change vs vacating: Lib Dem Gain from SNP
Turnout: 42.3% (-16.5)
Electorate: 19435
Valid: 8168 (99.3%)
Spoiled: 57 (0.7%)
Quota: 4085
2 Continuing Councillors:
Lib Dem: Alan Beal
Lib Dem: Euan Davidson
Candidates
Lib Dem: Fiona Bennett
Family: Richard Fettes
Conservative: Hugh Findlay
Independent: Pete Gregson
Independent: Elaine Miller
Labour: Richard Parker
SNP: Donald Rutherford
Libertarian: Gary Smith
Green: Chris Young
Costorphine and Murrayfield By-Election: Context
SNP councillor Frank Ross resigned from the council in December 2022, seemingly after a policy disagreement with his party.
Read the BBS pre-election preview here.
Read the BBS results analysis here.
Costorphine and Murrayfield By-Election: First Preferences
Costorphine and Murrayfield By-Election: Transfers
As the successfully elected councillor received more than 50% of the vote, she was elected without the need for any transfer rounds.
Costorphine and Murrayfield By-Election: Results by Polling District
Costorphine and Murrayfield By-Election: Second Preferences
Costorphine and Murrayfield By-Election: Two-Candidate Preferred
Councillors and Key Stats
1 Councillor Elected:
🟠Lib Dem: Louise Spence
Change vs 2022 (notional): Lib Dem Gain from Labour
Change vs vacating: Lib Dem Gain from Labour
Turnout: 37.4% (-22.0)
Electorate: 19907
Valid: 7401 (98.8%)
Spoiled: 45 (1.2%)
Quota: 3701
2 Continuing Councillors:
🔵Conservative: Jason Rust
🟡SNP: Marco Biagi
Candidates
⚪Independent: Bonnie Prince Bob
⚪Independent: Mev Brown
🟡SNP: Mairianna Clyde
🔵Conservative: Neil Cuthbert
🔴Labour: Sheila Gilmore
⚪Independent: David Henry
🟤Libertarian: Tam Laird
🟣Reform UK: Grand Lidster
🟤Family: Richard Lucas
🟢Green: Daniel Milligan
🟠Lib Dem: Louise Spence
⚪Independent: Marc Wilkinson
Colinton and Fairmilehead By-Election: Context
Labour councillor Scott Arthur resigned shortly after being elected as MP for Edinburgh South West in the 2024 UK General Election.
Read the BBS pre-election preview here.
Read the BBS results analysis here.
Colinton and Fairmilehead By-Election: First Preferences
Colinton and Fairmilehead By-Election: Transfers
Colinton and Fairmilehead By-Election: Results by Polling District
Colinton and Fairmilehead By-Election: Second Preferences
Colinton and Fairmilehead By-Election: Two-Candidate Preferred
Councillors and Key Stats
2 Councillors Elected:
Conservative: Neil Cuthbert
Labour: Conor Savage
Change vs 2024 by-election (notional): Conservative Gain from Lib Dem, Labour Hold
Change vs vacating: Conservative and Labour Gain from Lib Dem and SNP
Turnout: 31.9% (-5.5 / -27.4)
Electorate: 19669
Valid: 6223 (99.1%)
Spoiled: 58 (0.9%)
Quota: 2075
1 Continuing Councillor:
Conservative: Jason Rust
Candidates
Independent: Bonnie Prince Bob
Independent: Mev Brown
SNP: Mairianna Clyde
Conservative: Neil Cuthbert
Independent: Nick Hornig
Independent: David Henry
Reform UK: Grand Lidster
Family: Richard Lucas
Green: Daniel Milligan
Independent: Mark Ney-Party
Lib Dem: Peter Nicolson
Labour: Conor Savage
Independent: Marc Wilkinson
Colinton and Fairmilehead By-Election: Context
Days after the November by-election, SNP councillor Marco Biagi resigned to take up a Special Adviser role in the Scottish Government. Whilst that would have been sufficient in itself to trigger an election and a few grumbles, a second vacancy arose just one week after the result… when the victorious councillor resigned. Unbelievably, Lib Dem Louise Spence put her house up on the market as part of a move abroad the day after the election. This did not fly with her party colleagues, who expelled her, followed shortly by her resignation, resulting in a rare double by-election.
Read the BBS pre-election preview here.
Read the BBS results analysis here.