Minnesota Senate District 31
Tue, Nov 3 · Represented by Cal Bahr Republican · Member list as of Oct 28
No published poll names both candidates.Last result · 2022 general: Cal Bahr (R) 63.8, Jason Ruffalo (D) 36.2
- Last election
- Cal Bahr (Republican) won by 27.6 points, 2022
- On the 2026 ballot
- 2 candidates
Side by side
Left column: BahrRight column: Berkessa
- Donor-based spectrum
- LiberalCentristConservativeBahrNo published score for Berkessa
- Years since first win on file
- 4
- Not available
How these are counted
The spectrum is a published research score, not our rating. How this works.
More about this race
Candidates on the ballot
- Gadisa BerkessaDemocratic
- Cal BahrIncumbentRepublican
Source: electionresultsfiles.sos.mn.gov, dated Oct 28
All Senate districts
- Democratic
- Republican
- Independent
- Nonpartisan
- More than one party
- No member on file
List every Senate district (67)
- State Senate District 1· Mark Johnson
- State Senate District 2· Steve Green
- State Senate District 3· Grant Hauschild
- State Senate District 4· Rob Kupec
- State Senate District 5· Paul Utke
- State Senate District 6· Keri Heintzeman
- State Senate District 7· Rob Farnsworth
- State Senate District 8· Jen McEwen
- State Senate District 9· Jordan Rasmusson
- State Senate District 10· Nathan Wesenberg
- State Senate District 11· Jason Rarick
- State Senate District 12· Torrey Westrom
- State Senate District 13· Jeff Howe
- State Senate District 14· Aric Putnam
- State Senate District 15· Gary Dahms
- State Senate District 16· Andrew Lang
- State Senate District 17· Glenn Gruenhagen
- State Senate District 18· Nick Frentz
- State Senate District 19· John Jasinski
- State Senate District 20· Steve Drazkowski
- State Senate District 21· Bill Weber
- State Senate District 22· Rich Draheim
- State Senate District 23· Gene Dornink
- State Senate District 24· Carla Nelson
- State Senate District 25· Liz Boldon
- State Senate District 26· Jeremy Miller
- State Senate District 27· Andrew Mathews
- State Senate District 28· Mark Koran
- State Senate District 29· Mike Holmstrom
- State Senate District 30· Eric Lucero
- State Senate District 31· Cal Bahr
- State Senate District 32· Michael Kreun
- State Senate District 33· Karin Housley
- State Senate District 34· John Hoffman
- State Senate District 35· Jim Abeler
- State Senate District 36· Heather Gustafson
- State Senate District 37· Warren Limmer
- State Senate District 38· Susan Pha
- State Senate District 39· Mary Kunesh
- State Senate District 40· John Marty
- State Senate District 41· Judy Seeberger
- State Senate District 42· Bonnie Westlin
- State Senate District 43· Ann Rest
- State Senate District 44· Tou Xiong
- State Senate District 45· Ann Johnson Stewart
- State Senate District 46· Ron Latz
- State Senate District 47· Amanda Hemmingsen-Jaeger
- State Senate District 48· Julia Coleman
- State Senate District 49· Steve Cwodzinski
- State Senate District 50· Alice Mann
- State Senate District 51· Melissa Wiklund
- State Senate District 52· Jim Carlson
- State Senate District 53· Matt Klein
- State Senate District 54· Eric Pratt
- State Senate District 55· Lindsey Port
- State Senate District 56· Erin Maye Quade
- State Senate District 57· Zach Duckworth
- State Senate District 58· Bill Lieske
- State Senate District 59· Bobby Joe Champion
- State Senate District 60· Doron Clark
- State Senate District 61· Scott Dibble
- State Senate District 62· Omar Fateh
- State Senate District 63· Zaynab Mohamed
- State Senate District 64· Erin Murphy
- State Senate District 65· Sandy Pappas
- State Senate District 66· Clare Oumou Verbeten
- State Senate District 67· Foung Hawj
Map settings
Vote in Minnesota
Trouble voting? Election Protection hotline: 866-OUR-VOTE. A nonpartisan coalition of civil-rights and voting-rights groups, not a government service. 866ourvote.org
Official results for Minnesota
History (17 elections for this seat)
- Votes for listed candidates
- 40,322
- Election day
- November 8, 2022
- District map
- Older district map (2022)
Minnesota Senate District 31, 1970 to 2022, 2022, every candidate Candidate Party Votes and share Share RepublicanCal BahrWon Republican 25,70563.8% DemocraticJason Ruffalo Democratic 14,58536.2% Scattered write-ins Write-in 320.1% - Votes for listed candidates
- 50,987
- Election day
- November 3, 2020
- District map
- Older district map (2012 to 2021)
Minnesota Senate District 31, 1970 to 2022, 2020, every candidate Candidate Party Votes and share Share RepublicanMichelle R. BensonWon(incumbent) Republican 35,98070.6% DemocraticKate Luthner Democratic 14,96229.3% Scattered write-ins Write-in 450.1% - Votes for listed candidates
- 43,626
- Election day
- November 8, 2016
- District map
- Older district map (2012 to 2021)
Minnesota Senate District 31, 1970 to 2022, 2016, every candidate Candidate Party Votes and share Share RepublicanMichelle BensonWon(incumbent) Republican 29,65068.0% DemocraticRicky Englund Democratic 13,91931.9% Scattered write-ins Write-in 570.1% - Votes for listed candidates
- 42,251
- Election day
- November 6, 2012
- District map
- Older district map (2012 to 2021)
Minnesota Senate District 31, 1970 to 2022, 2012, every candidate Candidate Party Votes and share Share RepublicanMichelle BensonWon(incumbent) Republican 24,77458.6% DemocraticMike Starr Democratic 17,42341.2% Scattered write-ins Write-in 540.1% - Votes for listed candidates
- 27,547
- Election day
- November 2, 2010
- District map
- Older district map (2002 to 2011)
Minnesota Senate District 31, 1970 to 2022, 2010, every candidate Candidate Party Votes and share Share RepublicanJeremy MillerWon Republican 13,98150.8% DemocraticSharon Erickson Ropes(incumbent) Democratic 13,54449.2% Scattered write-ins Write-in 220.1% - Votes for listed candidates
- 30,500
- Election day
- November 7, 2006
- District map
- Older district map (2002 to 2011)
Minnesota Senate District 31, 1970 to 2022, 2006, every candidate Candidate Party Votes and share Share DemocraticSharon RopesWon Democratic 14,27046.8% RepublicanBrenda B. Johnson Republican 10,80235.4% IndependentKevin Kelleher Independent 5,42817.8% - Votes for listed candidates
- 29,766
- Election day
- November 5, 2002
- District map
- Older district map (2002 to 2011)
Minnesota Senate District 31, 1970 to 2022, 2002, every candidate Candidate Party Votes and share Share RepublicanBob KierlinWon(incumbent) Republican 15,79353.1% DemocraticSharon Ropes Democratic 13,97346.9% - Votes for listed candidates
- 36,260
- Election day
- November 7, 2000
- District map
- Older district map (1992 to 2001)
Minnesota Senate District 31, 1970 to 2022, 2000, every candidate Candidate Party Votes and share Share RepublicanKenric ScheevelWon(incumbent) Republican 23,24964.1% DemocraticDave Blanchard Democratic 13,01135.9% - Votes for listed candidates
- 31,671
- Election day
- November 5, 1996
- District map
- Older district map (1992 to 2001)
Minnesota Senate District 31, 1970 to 2022, 1996, every candidate Candidate Party Votes and share Share RepublicanKenric ScheevelWon Republican 19,77562.4% DemocraticGregory Holmseth Democratic 11,89637.6% - Votes for listed candidates
- 34,086
- Election day
- November 3, 1992
- District map
- Older district map (1992 to 2001)
Minnesota Senate District 31, 1970 to 2022, 1992, every candidate Candidate Party Votes and share Share RepublicanDuane BensonWon(incumbent) Republican 23,29468.3% DemocraticConsuelo P. Stacy Democratic 10,79231.7% - Votes for listed candidates
- 22,084
- Election day
- November 6, 1990
- District map
- Older district map (1982 to 1991)
Minnesota Senate District 31, 1970 to 2022, 1990, every candidate Candidate Party Votes and share Share DemocraticPat PiperWon(incumbent) Democratic 14,20064.3% RepublicanMelvin Eichstadt Republican 7,88435.7% - Votes for listed candidates
- 22,138
- Election day
- November 4, 1986
- District map
- Older district map (1982 to 1991)
Minnesota Senate District 31, 1970 to 2022, 1986, every candidate Candidate Party Votes and share Share DemocraticPat PiperWon Democratic 13,57161.3% RepublicanJack Dibble Republican 8,56738.7% - Votes for listed candidates
- 26,476
- Election day
- November 2, 1982
- District map
- Older district map (1982 to 1991)
Minnesota Senate District 31, 1970 to 2022, 1982, every candidate Candidate Party Votes and share Share DemocraticTom NelsonWon(incumbent) Democratic 17,07664.5% RepublicanJohn A. Ulland Republican 9,40035.5% - Votes for listed candidates
- 23,189
- Election day
- November 4, 1980
- District map
- Older district map (1972 to 1981)
Minnesota Senate District 31, 1970 to 2022, 1980, every candidate Candidate Party Votes and share Share DemocraticTom NelsonWon(incumbent) Democratic 15,47766.7% RepublicanBernice Weldon Republican 7,71233.3% - Votes for listed candidates
- 25,344
- Election day
- November 2, 1976
- District map
- Older district map (1972 to 1981)
Minnesota Senate District 31, 1970 to 2022, 1976, every candidate Candidate Party Votes and share Share DemocraticTom NelsonWon Democratic 13,47553.2% RepublicanJohn E. Freydenlund Republican 10,64842.0% OtherLoren Bellrichard Other 1,2214.8% - Votes for listed candidates
- 24,511
- Election day
- November 7, 1972
- District map
- Older district map (1972 to 1981)
Minnesota Senate District 31, 1970 to 2022, 1972, every candidate Candidate Party Votes and share Share NonpartisanC. R. HansenWon(incumbent) Other 13,08553.4% NonpartisanPaul Overgaard(incumbent) Other 11,42646.6% - Votes for listed candidates
- 20,927
- Election day
- November 3, 1970
- District map
- Older district map (1966 to 1971)
Minnesota Senate District 31, 1970 to 2022, 1970, every candidate Candidate Party Votes and share Share NonpartisanRichard J. ParishWon Other 10,93652.3% NonpartisanEugene F. Welter(incumbent) Other 9,99147.7%
1970 to 2022: State Legislative Election Returns, 1967-2022 (Carl Klarner, Harvard Dataverse), retrieved Oct 28, 2026. Compiled by Carl Klarner (Harvard Dataverse) from official returns; not an official source
Last contest in this district on file: 2022.
Download and cite
Cite this page
Election Wrld. (2026). Minnesota Senate District 31, election results 1970 to 2022. https://www.electionwrld.com/mn/senate/31. Retrieved October 30, 2026.
Embed this seat
<iframe src="https://www.electionwrld.com/embed/mn/senate/31" title="Minnesota Senate District 31" width="100%" height="400" style="border:0;max-width:640px" loading="lazy"></iframe>
<p style="font-size:13px">Data: <a href="https://www.electionwrld.com">Election Wrld</a>, CC BY 4.0</p>Sources
Sources: Census TIGERweb Legislative MapServer (120th CDs layer 0, 119th CDs layer 4, 2026 SLD upper layer 1 and lower layer 2) (US Census Bureau, public domain), retrieved Oct 28, 2026; Open Civic Data division identifiers (census_autogenerated us_sldl/us_sldu and openstates state files); also (sld-recent.json): Open Civic Data division identifiers (country-us) (CC0 (repository); also (sld-recent.json): CC0 1.0), retrieved Oct 28, 2026; Open States people (current) CSVs (CC0-1.0 (Open States people data)), retrieved Oct 28, 2026, compiled by Open States volunteers and staff (rosters from state legislature sites) from official returns, not an official source; State Legislative Election Returns, 1967-2022 (Carl Klarner, Harvard Dataverse) (CC0 1.0), retrieved Oct 28, 2026, compiled by Carl Klarner (Harvard Dataverse) from official returns, not an official source.
District id: ocd-division/country:us/state:mn/sldu:31
DataState data (JSON)Sources: State Legislative Election Returns, 1967-2022 (Carl Klarner, Harvard Dataverse), DIME (ODC-BY)Data as of Oct 28, 2026