BallotReady

office_holders

To help users get the best information about past and future elections, we've worked with BallotReady to build a crosswalk between our datasets. This table includes proprietary data on past and current elected officeholders from BallotReady, which we've linked to our districts and voters tables.

Overview

The Officeholders Dataset, one of the many datasets available through BallotReady’s Data Packages, is used to explore current and historical elected officials at all levels of government across the country, from congress to local school boards. You can easily filter this dataset to focus on positions of interest by location, government level, position types, and officeholders who started or ended their term off-cycle. Our dataset includes officeholder phone, email, mailing address, government website, social media links, and the party of the officeholder listed on the ballot when they ran for office.

Whether you are looking to contact elected officials that your organization wants to reach for advocacy around policy or legislative decisions; identify officeholders that you want to challenge or support in an upcoming election; or search for officeholders at a lower level of government that you want to recruit to run for higher office, the Officeholders Dataset is a perfect starting point for your programming. 

As with all of our datasets, the Officeholders Dataset can be combined with other datasets to build a Data Package that meets all of your needs. Our candidate education, work experience, issue stances, and endorsements datasets can seamlessly combine with our Officeholders Dataset to provide you with a holistic picture of each individual's background when they ran for office. Our Elections & Races dataset will help you identify the upcoming primary and general election dates for each position, and our Candidacies dataset will give you a full picture of each person the officeholder faced in their races to win their seat.

Data Structure

This dataset includes one row per person and office term. For example, if a person has held a congressional seat across multiple elections, they will have an individual record for each 2-year term in the House. When a position is vacant, we create an officeholder record with no associated candidate record or associated name information, but we still provide the approximate dates that the position has been vacant.

Various ID fields can be used to track people and positions across terms.

  • Candidate_id can be used to identify all of the terms a person has held across multiple years and elected positions
  • Position_id can be used to track the people who have held a given position over time. A position_id will remain static even through redistricting, when the position changes geographic boundaries.
  • Normalized_position_id can be used to identify positions of the same type, such as State Senators, City Mayors, or Local School Boards.

Other fields in the dataset serve as attributes about the officeholder term, but can also be used to filter down to the elected officials that are most applicable for your needs. For example, you could choose to filter on level to take a deeper look at city level positions, or filter on appointed and is_off_cycle to find the people who gained the office outside of regularly scheduled elections.

Field

Type

Description

office holder id

integer

A unique identifier for each instance of an officeholder's term for a position in the BallotReady database

start at

timestamp

A date corresponding the start date of the officeholder's term

end at

timestamp

A date corresponding the end date of the officeholder's term

term date specificity

enumerated ('day,' 'month', 'year')

A word that represents how accurate to our start/end dates are for the term. For example, if we know the exact date that an officeholder is sworn in, we will have term_specificity = 'day' for those entries. Whereas, for local office holders, start and end dates can vary slightly from term to term in relation to the election date. In cases where we know they were elected in November 2020 but do not have an exact start date, we would have start_at = 2021-01-01 and term specificity = 'year' to mark that only the portion of the date up to the year should be considered.

position id

integer

A unique identifier for each position in the BallotReady database

position name

character varying

The name of the position that encompasses both official ballot and BallotReady position naming conventions

sub area name

character varying

A parsed portion of the position name, used to help identify the specific area the position represents. Sub_area_name is used to identify the type of sub area (e.g., "District" or "Region").

sub area value

character varying

A parsed portion of the position name, used to help identify the specific area the position represents. Sub_area_value is used to identify the number or office of the subarea (e.g., "1" or "West").

sub area name secondary

character varying

A second parsed portion of the position name, used to help identify the specific area the position represents when there are two levels of sub area. For example, a position with the name "Smith County Council - Region 1, Seat 2" would have sub_area_name = 'Region', sub_area_value = '1', sub_area_name_secondary = 'Seat' and sub_area_value_secondary = '2'.

sub area value secondary

character varying

A second parsed portion of the position name, used to help identify the specific area the position represents when there are two levels of sub area. For example, a position with the name "Smith County Council - Region 1, Seat 2" would have sub_area_name = 'Region', sub_area_value = '1', sub_area_name_secondary = 'Seat' and sub_area_value_secondary = '2'.

state

character varying

The state in which the position is elected

level

character varying

An identifier for the level of the position: federal, state, regional, county, city, or local

tier

integer

BallotReady-defined Tiers of coverage (1-5), as described here.

normalized position id

integer

A unique identifier for each generic position type (e.g., County Clerk, City Legislative, etc.).

normalized position name

character varying

Describes the generic position type (e.g., County Clerk, City Legislative, etc.). Double slash symbols "//" represent an "OR", typically when the same type of position can go by different terms. A single slash accompanied by "(Joint)" represents a position that is responsible for functions typically performed by multiple positions.

is judicial

boolean

A boolean marked as true if the position is for electing a judge

number of seats

integer

The maximum number of people who will be elected to that position during a given race. Note that staggered term positions will have seats on a board split over multiple positions. For example, a 5 member board that elects 2 members in 2024 and 3 members in 2026 will have two separate position records, one with 2 seats and one with 3 seats.

office title

character varying

An alternative position name, intended to be used with officeholder data when the position listed on a ballot is different than the officeholder's position name. This is primarily used for judicial retention positions where a position is listed as "Jefferson County Court Judge (Retain Melton?)" on the ballot, but once the person is in office they should just be referred to as "Jefferson County Court Judge".

mtfcc

character varying

Tabulation area defined by the Census Bureau. Values starting with X are from BallotReady's custom research. MAF/TIGER Feature Class Code (MTFCC) is a 5-digit code assigned by the Census Bureau intended to classify and describe geographic objects or features.

geo id

character varying

geofence id

bigint

A unique identifier for each geofence which encapsulates the geographic region related to the officeholder's record in the BallotReady database

candidate id

integer

A unique identifier for the person in the BallotReady database. Officeholder records without a candidate_id represent a position that is vacant during the given term dates.

first name

character varying

The first name of the person as it appears on the ballot or an official government website

middle name

character varying

The middle name of the person as it appears on the ballot or an official government website

last name

character varying

The last name of the person as it appears on the ballot or an official government website

suffix

character varying

The suffix of the person as it appears on the ballot or an official government website

nickname

character varying

The nickname of the person as it appears on the ballot or an official government website

candidacy id

integer

A unique identifier for each instance of a candidate running for a position for a certain election in the BallotReady database. This field will be null if BallotReady did not cover the candidacy of the officeholder when they were elected for this term.

contacts

json

The office holder's phone number and email address, sourced from the government website or the relevant election/appointment authority. Central_phone: used to record the capitol office phone number for elected federal and state level office holders. Office_phone: used to record the home district phone number for federal and state level office holders as well as is the primary office phone number for all other office holders; there is no classification of numbers by mobile or landline. Other phone: used when an additional option is presented on an office holder website, typically a toll free number or secondary office.

party names

array

Identifies the name of the party or parties the officeholder was listed under on a ballot. Party affiliations are not provided for appointed officeholders.

appointed

boolean

A boolean marked as true if the office holder was appointed rather than elected. This can be true for regularly appointed positions or regularly elected positions where an office holder was appointed to fill a vacancy. Most exports do not include regularly appointed positions, unless requested. Refer to positions data for information on whether the position is regularly appointed or elected.

is off cycle

boolean

A boolean marked as true if the office holder is holding a partial term that does not adhere to scheduled start and end dates. This may be due to an office holder leaving office early, a vacancy, a new office holder from a special election or mid-term appointment.

office holder mailing address line 1

character varying

The mailing address of the office holder parsed into distinct fields. This address may be at the capitol office or a PO Box, which is not physically within the office holder's district.

office holder mailing address line 2

character varying

The mailing address of the office holder parsed into distinct fields.

office holder mailing city

character varying

The mailing address of the office holder parsed into distinct fields.

office holder mailing state

character varying

The mailing address of the office holder parsed into distinct fields.

office holder mailing zip

character varying

The mailing address of the office holder parsed into distinct fields.

urls

json

Identifies the officeholder's government website or social media link and the type of url

is vacant

boolean

A boolean marked as true if the position is vacant for the given term dates

office holder created at

timestamp

A timestamp of when the office holder record was created

office holder updated at

timestamp

A timestamp of when the office holder record was most recently updated