Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Coverage Matrix

This chapter maps which sources cover which states and years. Use it to determine whether a specific state/year/level combination is available before querying.

MEDSL — 50 States, 3 Cycles

MEDSL provides precinct-level results for all 50 states plus DC across three even-year general election cycles. Each cycle is one CSV per state.

CycleStatesApproximate rowsLocal race coverage
201850 + DC~11.0MVaries by state
202050 + DC~13.2MVaries by state
202250 + DC~12.3M44 of 51 jurisdictions

Seven states with zero local data in MEDSL 2022. These states have no rows with a blank dataverse column, meaning no local races were captured:

StateFIPS
California06
Iowa19
Kansas20
New Jersey34
Pennsylvania42
Tennessee47
Wisconsin55

Local elections occur in all seven states. MEDSL’s curation process did not capture them for 2022. Coverage may differ in 2018 and 2020.

Odd-year data on Dataverse but not yet loaded. MEDSL publishes odd-year election data on Harvard Dataverse:

CycleDOIStatus
2015Not loaded
201710.7910/DVN/VNJAB1Not loaded
201910.7910/DVN/2AJUIINot loaded
2021Not loaded

Odd-year elections cover gubernatorial races in VA, NJ, KY, LA, MS and municipal elections in many states. Loading these would fill a significant gap.

NC SBE — 1 State, 10 Cycles

NC SBE covers North Carolina exclusively, with precinct-level results for every contest on the ballot.

YearElectionRowsSchema
2024General233,51115-column
2022General171,90115-column
2020General257,72215-column
2018General183,72415-column
2016General252,82715-column
2014General223,97715-column
2012General208,92114–15 column (different layout)
2010General188,00814–15 column (different layout)
2008General233,14114–15 column (different layout)
2006General69,4829-column (significantly different)

All 10 cycles are downloaded. The 2014–2024 files share a stable schema and a single parser. The 2008–2012 files require a separate parser. The 2006 file requires a third.

OpenElections — ~8 States, Variable Coverage

OpenElections is community-curated. Coverage depends on volunteer effort per state. The following states have 2022 precinct-level general election data:

State2022 precinct dataEarlier years
Florida2000–2020
Georgia2004–2020
Michigan2000–2020
Ohio2000–2020
Pennsylvania2000–2020
Texas2000–2020
North Carolina2008–2020
ArizonaPartial2004–2020

Coverage for other states exists at county level or for federal races only. Check each state’s GitHub repository (openelections-data-{state}) for current status.

VEST — Shapefiles with Vote Counts

VEST publishes precinct-level shapefiles for all 50 states. We have loaded a subset for odd-year coverage:

StateYearElection typeLoaded
Kentucky2019General (Governor)
Louisiana2019General (Governor)
Mississippi2019General (Governor)
Virginia2019General (state legislature)
Kentucky2015General (Governor)
Louisiana2015General (Governor)
Mississippi2015General (Governor)
Virginia2015General (state legislature)

VEST covers state-level races only (president, governor, US Senate, US House, state legislature). No local races.

Census and FEC — Reference Data

These are not election results. They provide reference identifiers used during pipeline enrichment.

SourceScopeYearsRecords
Census county FIPSNational20203,143
Census place FIPSNational202031,980
Census state FIPSNational202056
FEC candidate masterFederal candidates2020~6,800
FEC candidate masterFederal candidates2022~6,600

Clarity/Scytl — Not Yet Integrated

Clarity ENR sites cover 1,000+ jurisdictions but are not yet in the pipeline. URLs are unstable across election cycles, making systematic acquisition difficult. See Clarity/Scytl ENR.

Combined Coverage Summary

DimensionCurrent status
States with any data50 + DC
Even-year general elections2018, 2020, 2022
Odd-year electionsKY/LA/MS/VA 2015, 2019 (VEST only, state-level)
Deep single-state coverageNC, 2006–2024 (10 cycles)
Total rows across all sources~42M
Local race coverage44 of 51 jurisdictions (MEDSL 2022) + NC (NC SBE)
Vote mode breakdownsNC SBE (all contests), MEDSL (some states), Clarity (when integrated)
Turnout data<5% of records populated

Gap Analysis

Temporal gaps. No odd-year municipal election results are loaded. Cities like New York, Los Angeles, Houston, Philadelphia, and San Antonio hold elections in odd years. MEDSL publishes 2017 and 2019 data on Dataverse. Loading these would add coverage for the largest US cities.

State-level local gaps. Seven states have zero local race data in MEDSL 2022. OpenElections partially fills this for Pennsylvania. The remaining six (CA, IA, KS, NJ, TN, WI) require either Clarity integration or direct state portal downloads.

Primary elections. All loaded data is general election only. MEDSL tags primary results with stage = PRI but we have not loaded primary-specific files. NC SBE publishes primary results as separate files.

Runoff elections. Georgia, Louisiana, Texas, and other states hold runoff elections. These are partially captured in MEDSL (stage = RUN) but not systematically loaded.