Download the data
The full dataset for the 2022 local elections in Scotland presented on this website is available for download as a single CSV (comma-separated values) file. It is presented in an unofficial capacity. The official results are published by each of the 32 Scottish councils with summary data published by the Electoral Management Board for Scotland. The dataset is a combination of candidate data collated by the Democracy Club combined with results data transcribed from Scottish council websites by @gerrymulvenna.
This dataset is made available under the CC-By-SA 4.0 license. You should attribute authorship to @gerrymulvenna, stating that it contains candidate data provided by the Democracy Club.
Columns in the data
The CSV data file has a flat structure combining ward-level fields with candidate-level fields. The following fields are included as columns in the data:
- id - a unique numeric identifer for each candidate generated by the Democracy Club
- name - candidate name, transcribed by the Democracy Club
- party_name - the political party name transcribed by the Democracy Club
- council_id - an arbitrary human-readable unique identifier for each council
- council_name - the council name
- election - the Democracy Club identifier for the council election
- cand_ward_id - the Democracy Club identifer for the ward being contested
- map_ward_id - the unique identifier for each ward, as used by the mapping data from the Local Government Boundary Commission for Scotland
- ward_name - the name of the ward
- contested - 1 if ward was contested, 0 if not contested
- elected - 1 if candidate elected, 0 if not elected
- status - "Elected" or "Excluded" during count; can also be "Not elected" if candidate was neither elected nor excluded
- occurred_on_count - the stage of the count at which a candidate was Elected or Excluded; may be blank if candidate was neither elected nor excluded
- first_prefs - number of first preference votes for this candidate
- transfers02 - transfer value accruing to this candidate at stage 2 of the count; may be blank if count didn't advance this far
- total_votes02 - cummulative total votes for this candidate at stage 2 of the count; may be blank if count didn't advance this far
- transfers03 - transfer value accruing to this candidate at stage 3 of the count; may be blank if count didn't advance this far
- total_votes03 - cummulative total votes for this candidate at stage 3 of the count; may be blank if count didn't advance this far
- transfers04 - transfer value accruing to this candidate at stage 4 of the count; may be blank if count didn't advance this far
- total_votes04 - cummulative total votes for this candidate at stage 4 of the count; may be blank if count didn't advance this far
- transfers05 - transfer value accruing to this candidate at stage 5 of the count; may be blank if count didn't advance this far
- total_votes05 - cummulative total votes for this candidate at stage 5 of the count; may be blank if count didn't advance this far
- transfers06 - transfer value accruing to this candidate at stage 6 of the count; may be blank if count didn't advance this far
- total_votes06 - cummulative total votes for this candidate at stage 6 of the count; may be blank if count didn't advance this far
- transfers07 - transfer value accruing to this candidate at stage 7 of the count; may be blank if count didn't advance this far
- total_votes07 - cummulative total votes for this candidate at stage 7 of the count; may be blank if count didn't advance this far
- transfers08 - transfer value accruing to this candidate at stage 8 of the count; may be blank if count didn't advance this far
- total_votes08 - cummulative total votes for this candidate at stage 8 of the count; may be blank if count didn't advance this far
- transfers09 - transfer value accruing to this candidate at stage 9 of the count; may be blank if count didn't advance this far
- total_votes09 - cummulative total votes for this candidate at stage 9 of the count; may be blank if count didn't advance this far
- transfers10 - transfer value accruing to this candidate at stage 10 of the count; may be blank if count didn't advance this far
- total_votes10 - cummulative total votes for this candidate at stage 10 of the count; may be blank if count didn't advance this far
- transfers11 - transfer value accruing to this candidate at stage 11 of the count; may be blank if count didn't advance this far
- total_votes11 - cummulative total votes for this candidate at stage 11 of the count; may be blank if count didn't advance this far
- transfers12 - transfer value accruing to this candidate at stage 12 of the count; may be blank if count didn't advance this far
- total_votes12 - transfer value accruing to this candidate at stage 12 of the count; may be blank if count didn't advance this far
- transfers13 - transfer value accruing to this candidate at stage 13 of the count; may be blank if count didn't advance this far
- total_votes13 - transfer value accruing to this candidate at stage 13 of the count; may be blank if count didn't advance this far
- electorate - the total electorate with a franchise in the ward this candidate is standing
- total_poll - total votes cast in this ward
- valid_poll - number of valid votes received in this ward
- rejected - number of votes rejected in this ward
- quota - the Single Transerable Vote quota for this ward = 1 + int(valid_poll / (seats + 1))
- seats - the number of councillors to be elected in this ward
- candidates - the number of candidates standing in this ward