Introduction

Here, we present technical documentation for the creation of the UWED, answers to frequently asked questions, and appropriate use cases for our data products.

All data products are available under the “Data Sets” tab.

Data Sources and Methods

  • From the Secretary of State, we obtain annual voter registration files, beginning in 2007, and ballots files for each election, beginning in 2020. Precinct shapefiles are downloaded from the SoS website.

  • Census Citizen Voting Age Population by Race and Ethnicity is obtained from the US Census website using the 5-year American Community Survey (ACS) data at the Census block group level.

Analysis

  1. Using all years of voter registry and ballot data, a list of all unique addresses is created. These addresses are geolocated to a spatial point (latitude, longitude) using Amazon Web Services.
  2. These addresses are then matched to the following administrative polygons:
    1. All precinct shapefiles from 2007-2024
    2. 2024 Legislative Districts
    3. 2010 Census block groups/tracts/counties
    4. 2020 Census block groups/tracts/counties
    5. 2024 Washington Tribal Boundaries
  3. This spatial information is merged back to individual voters and ballots.
  4. For each voter and ballot in our database, we impute a probabilistic race/ethnicity using Bayesian Imputed Surname Geocoding (BISG).
    1. The imputation results in a probability for each person and/or ballot.
    2. These probabilities are summed across geography (precinct) to obtain estimates of race/ethnicity by precinct and year. The imputed racial/ethnic categories are: White, Black, Hispanic, Asian, and Other. Note: These categories do not match standard Census categories, and therefore do not match the full list of categories contained in the CVAP data available on our site. White, Black, and Asian are non-Hispanic populations equivalent to White alone, Black alone, and Asian alone in the CVAP data. The other category is also non-Hispanic and should match the sum of AI/AN alone, NHOPI alone, and any combination of 2 or more races. Hispanic is equivalent in both data sets (Hispanic of any race).
  5. For the voter registration summaries, only voters listed as “Active” are counted. For ballots data, only “Accepted” ballots are represented in these summaries.
  6. In 2023, SoS substituted Date of Birth (DOB) data with Year of Birth (YOB). Where we have DOB for a given Voter ID, we carry this forward. When only YOB is available, we assume the DOB is January 1 of the given year of birth.
  7. To estimate Citizen Voting Age Population (CVAP) by precinct, we aggregate up from the Census block group level. We use 5-year CVAP estimates for 2005-2009, 2006-2010, …, 2019-2023 (the most recent) to provide CVAP by precinct estimates for each middle year of the 5-year window, i.e. we use 2005-2009 CVAP block group estimates for 2007 CVAP precinct estimates and 2019-2023 CVAP block group estimates for 2021 CVAP precinct estimates. We use 2019-2023 CVAP block group estimates for 2022, 2023, and 2024 as well. When a block group intersects more than one precinct, an area-weighting factor (st_interpolate_aw from the sf package) apportions the block group population across precincts by the land area of the intersection.

Sources of Error and Uncertainty

  1. CVAP data are produced at the block group level using ACS 5-year data. At the block group level each estimate of CVAP also comes with a margin of error that is a function of the ACS survey design. When we aggregate these estimates to the precinct level, we ignore this margin of error and report the aggregate as though there were no uncertainty. While it is possible to aggregate the CVAP uncertainty to the precinct level, this estimate of uncertainty will assume estimates of CVAP by block groups within the same precinct have a covariance of 0, which is unlikely.
  2. The BISG method for race imputation uses 2020 Census counts containing noise from differential privacy as inputs for both block group- and county-level race imputation. The amount of noise infused into the population counts increases as the Census geography gets smaller, with counties having the least amount of noise and blocks the most. So, while block group imputation allows for more accuracy in terms of the underlying race/ethnicity data, there is more uncertainty than in the underlying county imputation data.
  3. The BISG method for race imputation has some known limitations: it does not perform as well for Black Americans as other races, errors can be induced by surname changes due to intermarriage, and significant shifts in the racial makeup of Census geographies in the decade following a decennial census (e.g. due to migration) can result in biased race imputations based on the last census’s racial compositions.

Table 1: Information on elections and precinct files by year.

The first column corresponds to the Year variable in the Registrants, Voter Population, and CVAP files. The second column indicates which elections from each year contained in the Voter Population file. Column three indicates the year of the precinct shapefile used in the Registrants, Voter Population, and CVAP files. Columns four and five identify the column names in each year’s precinct shapefile used to create the harmonized St_Code precinct identifiers in the Registrants, Voter Population, and CVAP files. Finally, the last column links to certain downloadable election results hosted by the Washington Secretary of State.
Year Elections in Voter Data Precinct Year Precinct Name Column Precinct Code Column
2025 General
Primary
2025 PrecName PrecCode
2024 General
Primary
2024 PrecinctNa PrecinctNu
2023 General
Primary
2023 PrecName Precinct
2022 General
Primary
Special (04/26)
Conservation (02/08)
Special (02/08)
2022 PrecName Precinct
2021 Special (12/07)
General
Primary
Special (04/27)
Special (03/23)
Special (02/09)
2021 PrecName PrecCode
2020 General
Primary
Special (04/28)
Presidential Primary (03/10)
Special (02/11)
2020 PrecName PrecCode
2019 2019 PrecCode
2018 2018 PrcCode
2017 2017 PRECNAME PRECCODE
2016 2016 PRECNAME PRECCODE
2015 2015 PRECNAME PRECCODE
2014 2014 PRECNAME PRECCODE
2013 2013 Name Code
2012 2011 Name Code
2011 2011 Name Code
2010 2010 NAMELSAD10 VTDST10
2009 2009 NAMELSAD09 VTDST09
2008 2008 NAMELSAD08 VTDST08
2007 2007 NAMELSAD07 VTDST07

The first column in the Precinct Election Results datasets will be a precinct code that is a county abbreviation (two letters) followed by 8 numbers (e.g., “AD00000111”). This is the precinct identifier column you can use to merge with our precinct demographic datasets. This applies generally for all years after 2014. For years 2014 and earlier, each precinct folder contains results by county instead of a larger file. Each of these “by county” folders contain the name of the county at the front of the file, for example “2014 General Adams prec results and turnout.xlsx” which denotes the election, county, and what data is contained in the file. Once you open the file, there should be a “precinct name” or “precinct code” column which is similar to the precinct code column present in later files without the “AD00000”. You will have to add this in order to match these unique identifiers.

In order to maintain compatibility with database software, precincts, contests and candidates are represented by a code with a maximum of 10 characters. Aside from the precinct, each column header consists of the election code, followed by the measure or contest code, followed by a response code. Precinct (St_Code or ): The two-letter county code (see last page) followed by the numeric code for the precinct (padded with zeros to eight digits)

Election: Abbreviation Meaning G24 General Election 2024

For a listing of the full names and party preferences of the candidates and the titles of the statewide measures, see VoteWA.