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.
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.
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 | Geographic identifier defined by the Census Bureau. GEO_ID/FIPS code describing the type of place the body is associated with, according to the census specification. |
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 |