Contents
Overview
Past Results
Individual Ward Results:
Carse of Gowrie (Ward 1)
Strathmore (Ward 2)
Blairgowrie and Glens (Ward 3)
Highland (Ward 4)
Strathtay (Ward 5)
Strathearn (Ward 6)
Strathallan (Ward 7)
Kinross-shire (Ward 8)
Almond and Earn (Ward 9)
Perth City South (Ward 10)
Perth City North (Ward 11)
Perth City Centre (Ward 12)
Data Notes
By-Elections:
Perth City North (Ward 11) - 26th of September 2024
Strathallan (Ward 7) - 26th of September 2024
Council-Wide Results
The loss of this historic stronghold in 2017 had been a blow to the SNP, but this time around they’ve bounced back. Their increase in votes outstrips their change in seats however, with just one more councillor bumping them up to 16. A substantial loss of votes for the Conservatives has knocked 3 off their tally to leave them with 14, whilst the Lib Dems maintain their position as third party without any real change.
The two other net Conservative losses therefore went to Independents, who’ve gone up one to 4, and to Labour, who’ve now got a second councillor. Though the Greens did increase their share (and remember they are absent in two wards), it was far from repeating their Holyrood result of placing third here, and didn’t elect any councillors.
Administration
After the election, the SNP announced their intention to form a minority administration, with the consent of the Independent councillors. They will not form part of the administration.
Interactive Map
Perth and Kinross is what it says the tin – a merger of the historic counties of Perthshire and Kinross-shire, though Perthshire was shorn of a large chunk of its southeast when this district was created in the 1970’s. Perth, the Fair City, is the urban anchor for what is otherwise a massive rural stretch at the very centre of the country, encompassing both lowland and highland areas. Perthshire was historically such a big chunk of Scotland that it’s known as “the Big County”, contrasting with the neighbouring “Wee County” of Clackmannanshire.
In common with largely rural, farming-heavy counties across Scotland, for much of the 20th century this area was heavily Conservative leaning. Over time they were increasingly challenged by the SNP, who held a seat here for 5 years after the October 1974 election, before they more firmly established themselves via a 1995 by-election. SNP representation has been the norm in both parliaments since, though the southern portion was part of a Labour seat at Westminster from 2005 to 2015, then in Conservative hands briefly from 2017 to 2019. The north came close to flipping in 2017 as well, having been a bawhair thin majority of 21 votes for the SNP.
Throughout the district council era, the Conservatives were the largest party, though without a majority in 1984 and 1988. The SNP won a majority at the first unitary election here, then held a plurality at the following two, when the Conservatives began to bounce back from their nadir.
Individual Ward Results
Councillors and Key Stats
3 Councillors, in order elected:
🔴Labour: Alasdair Bailey
🔵Conservative: Angus Forbes
🟡SNP: Ken Harvey
Change vs 2017: No change
Turnout: 56.6%
Electorate: 8157
Valid: 4547 (98.4%)
Spoiled: 72 (1.6%)
Quota: 1137
Candidates
🔴Labour: Alasdair Bailey
🟠Lib Dem: Lindsay Easton
🔵Conservative: Angus Forbes
🟡SNP: Ken Harvey
🟢Green: Roger Humphry
🟡SNP: John Kellas
🟣Family: Don Marshall
🔵Conservative: Mac Roberts
Carse of Gowrie: First Preferences
Carse of Gowrie: Transfers
Carse of Gowrie: Results by Polling District
Carse of Gowrie: Second Preferences
Carse of Gowrie: Two-Candidate Preferred
Councillors and Key Stats
4 Councillors, in order elected:
🟡SNP: Grant Stewart
⚪Independent: Colin Stewart
🔵Conservative: Hugh Anderson
🟡SNP: Jack Welch
Change vs 2017: +1 SNP, +1 Independent, -1 Lib Dem, -1 Conservative (Colin Stewart elected as a Conservative in 2017)
Turnout: 54.7%
Electorate: 12583
Valid: 6764 (98.3%)
Spoiled: 117 (1.7%)
Quota: 1353
Candidates
🔵Conservative: Hugh Anderson
🟢Green: Jill Belch
🟠Lib Dem: Violet Iwanio
🔵Conservative: Dennis Melloy
⚪Independent: Colin Stewart
🟡SNP: Grant Stewart
🟡SNP: Jack Welch
Strathmore: First Preferences
Strathmore: Transfers
Strathmore: Results by Polling District
Strathmore: Second Preferences
Strathmore: Two-Candidate Preferred
Councillors and Key Stats
3 Councillors, in order elected:
🔵Conservative: Caroline Shiers
🟡SNP: Tom McEwan
🔵Conservative: Bob Brawn
Change vs 2017: No change
Turnout: 52.2%
Electorate: 9188
Valid: 4662 (97.3%)
Spoiled: 131 (2.7%)
Quota: 1166
Candidates
🔵Conservative: Bob Brawn
🟠Lib Dem: Gordon Clark
🔴Labour: Pauline Hunter
🟡SNP: Harry MacFadyen
🟡SNP: Tom McEwan
🟣Family: Jack Murphy
⚪Independent: Bernard Noonan
🟢Green: Louise Ramsay
🔵Conservative: Caroline Shiers
Blairgowrie and Glens: First Preferences
Blairgowrie and Glens: Transfers
Blairgowrie and Glens: Results by Polling District
Blairgowrie and Glens: Second Preferences
Blairgowrie and Glens: Two-Candidate Preferred
Councillors and Key Stats
3 Councillors, in order elected:
🔵Conservative: John Duff
⚪Independent: Xander McDade
🟡SNP: Michael Williamson
Change vs 2017: No change
Electorate: 7674
Turnout: 58.8%
Valid: 4455 (98.7%)
Spoiled: 57 (1.3%)
Quota: 1114
Candidates
🔵Conservative: John Duff
🔴Labour: Paula Hunter
⚪Independent: Xander McDade
🟢Green: Mary McDougall
🟠Lib Dem: Barry McMahon
🔵Conservative: Rhona Metcalfe
🟡SNP: Sally Murray
🟡SNP: Michael Williamson
Highland: First Preferences
Highland: Transfers
Highland: Results by Polling District
Highland: Second Preferences
Highland: Two-Candidate Preferred
Councillors and Key Stats
3 Councillors, in order elected:
🟡SNP: Grant Laing
🔵Conservative: Ian James
🟠Lib Dem: Claire McLaren
Change vs 2017: +1 Lib Dem, -1 Conservative
Turnout: 53.3%
Electorate: 9890
Valid: 5159 (97.8%)
Spoiled: 115 (2.2%)
Quota: 1290
Candidates
🔵Conservative: Ian James
🔵Conservative: Anne Jarvis
🟡SNP: Malenie Kinney
🟡SNP: Grant Laing
🟠Lib Dem: Claire McLaren
Strathtay: First Preferences
Strathtay: Transfers
Strathtay: Results by Polling District
Strathtay: Second Preferences
Strathtay: Two-Candidate Preferred
Councillors and Key Stats
3 Councillors, in order elected:
⚪Independent: Rhona Brock
🟡SNP: Stewart Donaldson
🔵Conservative: Noah Khogali
Change vs 2017: No change
Turnout: 52.4%
Electorate: 8672
Valid: 4466 (98.2%)
Spoiled: 82 (1.8%)
Quota: 1117
Candidates
⚪Independent: Rhona Brock
🟠Lib Dem: Julia Brown
⚪Independent: Roger Cartwright
🟡SNP: Stewart Donaldson
🔵Conservative: Noah Khogali
🟡SNP: David West
Strathearn: First Preferences
Strathearn: Transfers
Strathearn: Results by Polling District
Strathearn: Second Preferences
Strathearn: Two-Candidate Preferred
Strathearn: Two-Party Preferred
Councillors and Key Stats
3 Councillors, in order elected:
🔵Conservative: Keith Allan
🔵Conservative: Crawford Reid
🟡SNP: Steven Carr
Change vs 2017: No change
Turnout: 51.5%
Electorate: 9543
Valid: 4785 (97.3%)
Spoiled: 131 (2.7%)
Quota: 1197
Candidates
🔵Conservative: Keith Allan
🟡SNP: Steven Carr
🟠Lib Dem: Neil Gaunt
🟢Green: Andrew Lear
🔵Conservative: Crawford Reid
🟡SNP: Catherine Scott
Strathallan: First Preferences
Strathallan: Transfers
Strathallan: Results by Polling District
Strathallan: Second Preferences
Strathallan: Two-Candidate Preferred
Councillors and Key Stats
4 Councillors, in order elected:
🟡SNP: Richard Watters
🟠Lib Dem: Willie Robertson
🔵Conservative: Neil Freshwater
⚪Independent: Dave Cuthbert
Change vs 2017: No partisan change (Dave Cuthbert replaces retiring Mike Barnacle)
Turnout: 55.1%
Electorate: 11806
Valid: 6432 (99.0%)
Spoiled: 68 (1.0%)
Quota: 1287
Candidates
🔴Labour: Graham Cox
⚪Independent: Dave Cuthbert
🟢Green: Pat Doran
🔵Conservative: Neil Freshwater
🟣Family: Gerald O’Connell
🟠Lib Dem: Willie Robertson
🔵Conservative: George Stirling
🟡SNP: Richard Watters
Kinross-shire: First Preferences
Kinross-shire: Transfers
Kinross-shire: Results by Polling District
Kinross-shire: Second Preferences
Kinross-shire: Two-Candidate Preferred
Councillors and Key Stats
3 Councillors, in order elected:
🟡SNP: Michelle Frampton
🔵Conservative: David Illingworth
🔵Conservative: Frank Smith
Change vs 2017: No change
Turnout: 50.2%
Electorate: 7985
Valid: 3960 (98.9%)
Spoiled: 45 (1.1%)
Quota: 991
Candidates
🟤UKIP: Lynda Davis
🟡SNP: Michelle Frampton
🔵Conservative: David Illingworth
🟠Lib Dem: Tina Ng-A-Mann
🔵Conservative: Frank Smith
🟢Green: Paul Vallot
Almond and Earn: First Preferences
Almond and Earn: Transfers
Almond and Earn: Results by Polling District
Almond and Earn: Second Preferences
Almond and Earn: Two-Candidate Preferred
Councillors and Key Stats
4 Councillors, in order elected:
🟠Lib Dem: Liz Barrett
🟡SNP: Iain MacPherson
🔵Conservative: Andy Chan
🟡SNP: Sheila McCole
Change vs 2017: No change
Turnout: 51.6%
Electorate: 13427
Valid: 6833 (98.7%)
Spoiled: 92 (1.3%)
Quota: 1367
Candidates
🟠Lib Dem: Liz Barrett
🔵Conservative: Andy Chan
🟢Green: Elspeth MacLachlan
🟡SNP: Iain MacPherson
🟡SNP: Sheila McCole
🔵Conservative: Calum Milne
🔴Labour: Kirsten Roper
Perth City South: First Preferences
Perth City South: Transfers
Perth City South: Results by Polling District
Perth City South: Second Preferences
Perth City South: Two-Candidate Preferred
Councillors and Key Stats
3 Councillors, in order elected:
🟡SNP: Ian Massie
🟡SNP: John Rebbeck
🔴Labour: Brian Leishman
Change vs 2017: +1 Labour, -1 Conservative
Electorate: 9041
Turnout: 39.3%
Valid: 3457 (97.3%)
Spoiled: 95 (2.7%)
Quota: 865
Candidates
⚫Alba: Alan Black
🟠Lib Dem: James Graham
🔴Labour: Brian Leishman
🟡SNP: Ian Massie
🟢Green: Ronnie McNeil
🟡SNP: John Rebbeck
🔵Conservative: Aziz Rehman
Perth City North: First Preferences
Perth City North: Transfers
Perth City North: Results by Polling District
Perth City North: Second Preferences
Perth City North: Two-Candidate Preferred
Councillors and Key Stats
4 Councillors, in order elected:
🟡SNP: Eric Drysdale
🟠Lib Dem: Peter Barrett
🟡SNP: Andrew Parrott
🔵Conservative: Chris Ahern
Change vs 2017: No change
Electorate: 12856
Turnout: 41.8%
Valid: 5257 (97.8%)
Spoiled: 116 (2.2%)
Quota: 1052
Candidates
🔵Conservative: Chris Ahern
🟠Lib Dem: Peter Barrett
🟡SNP: Eric Drysdale
🔴Labour: Scott Forsyth
⚫Alba: Sandy Miller
🟡SNP: Andrew Parrott
🟢Green: Susannah Rae
⚪Independent: Ian Thomson
🔵Conservative: Nick Tulloch
Perth City Centre: First Preferences
Perth City Centre: Transfers
Perth City Centre: Results by Polling District
Perth City Centre: Second Preferences
Perth City Centre: 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:
SNP: Carol Mair
Change vs 2022 (notional): SNP Hold
Change vs vacating: SNP Gain from Labour
Turnout: 22.7% (-16.6)
Electorate: 9128
Valid: 2050 (99.0%)
Spoiled: 21 (1.0%)
Quota: 1026
2 Continuing Councillors:
SNP: Ian Massie
SNP: John Rebbeck
Candidates
Reform UK: Sonia Davidson
SNP: Carol Mair
Lib Dem: Tina Ng-a-Mann
Labour: Kirsten Nkwocha-Dyer
Conservative: Aziz Rehman
Alba: Robert Reid
Green: Caitlin Ripley
Perth City North By-Election: Context
Labour councillor Brian Leishman was elected as MP for Alloa and Grangemouth in the 2024 UK General Election.
Read the BBS pre-election preview here.
Read the BBS results analysis here.
Perth City North By-Election: First Preferences
Perth City North By-Election: Transfers
Perth City North By-Election: Results by Polling District
Perth City North By-Election: Second Preferences
Perth City North By-Election: Two-Candidate Preferred
Councillors and Key Stats
1 Councillor Elected:
🟠Lib Dem: Alan Watt
Change vs 2022 (notional): Lib Dem Gain from Conservative
Change vs vacating: Lib Dem Gain from Conservative
Turnout: 34.0% (-17.5)
Electorate: 9657
Valid: 3258 (99.3%)
Spoiled: 22 (0.7%)
Quota: 1630
2 Continuing Councillors:
🔵Conservative: Keith Allan
🟡SNP: Steven Carr
Candidates
🔴Labour: Ken McCracken
🔵Conservative: Amanda Runciman
🟡SNP: Catherine Scott
🟢Green: Nettie Sutherland
🟣Reform UK: Ian Thomas
🟠Lib Dem: Alan Watt
Strathallan By-Election: Context
Conservative councillor Crawford Reid resigned, citing the difficulties of balancing his elected duties with his job in the NHS.
Read the BBS pre-election preview here.
Read the BBS results analysis here.