State-level election results

—

Statewide margin (R − D)
—
Shift from previous race: —
Counties carried
— R · — D
Total votes cast in race
—
Third-party & write-in: —

County results

Color shows who won each county and by how much. Click a county to follow it over time.

Margin over time

Republican minus Democratic share of the vote, every race 2016–2025.

All 88 counties

Sort by any column; click a row to highlight it on the map and chart.

Margin is the Republican candidate's share minus the Democrat's, of all votes cast in the race. "Shift" compares a county with the previous general election for the same office; both U.S. Senate seats form one series. The 2026 Senate race is a special election for the rest of JD Vance's term, which ends in January 2029. Governor and lieutenant governor run as a ticket and are listed under the governor; presidential tickets under the presidential candidate. Ohio Supreme Court races are shown from 2022, the first year party labels appeared on the ballot. Ohio doesn't number its Supreme Court seats; each seat is named here after the justice who holds it, and compared with its own previous election. Results: the Ohio Secretary of State's official canvass, statewide and by county (2018 as amended by the Miami County Board of Elections); the state's website blocks automated downloads, so the files were retrieved from the Internet Archive's copies. Statewide totals match the certified results. Write-in votes are combined; the 2024 file doesn't include them. In 2016 the Libertarian Party wasn't a recognized party in Ohio, so Gary Johnson appears as an independent, as on the ballot. 2026 results come from the Secretary of State's election-night results and are unofficial until certified. Turnout isn't included yet.