Ionia County, Michigan
Precinct data
Results by precinct
50 precincts · 34,021 votes
Precinct boundaries and identifiers are cycle-specific. This table does not join rows across years without a validated crosswalk.
| Precinct -Township of PortlandTownship of Portland | 1,591 | 2,770 | 63 | 4,424 | 36.0% | 62.6% | R+26.7 |
|---|---|---|---|---|---|---|---|
| Precinct -City of PortlandCity of Portland | 1,942 | 2,134 | 80 | 4,156 | 46.7% | 51.3% | R+4.6 |
| Precinct -Township of IoniaTownship of Ionia | 1,331 | 2,342 | 45 | 3,718 | 35.8% | 63.0% | R+27.2 |
| Precinct -Township of DanbyTownship of Danby | 1,154 | 2,236 | 53 | 3,443 | 33.5% | 64.9% | R+31.4 |
| Precinct -Township of CampbellTownship of Campbell | 771 | 2,042 | 33 | 2,846 | 27.1% | 71.7% | R+44.7 |
| Precinct -Township of OtiscoTownship of Otisco | 801 | 1,836 | 29 | 2,666 | 30.0% | 68.9% | R+38.8 |
| Precinct -Township of OrleansTownship of Orleans | 744 | 1,870 | 35 | 2,649 | 28.1% | 70.6% | R+42.5 |
| Precinct -Township of BerlinTownship of Berlin | 875 | 1,569 | 51 | 2,495 | 35.1% | 62.9% | R+27.8 |
| Precinct -Township of KeeneTownship of Keene | 606 | 1,440 | 43 | 2,089 | 29.0% | 68.9% | R+39.9 |
| Precinct -Township of RonaldTownship of Ronald | 524 | 1,343 | 20 | 1,887 | 27.8% | 71.2% | R+43.4 |
| Precinct -Township of SebewaTownship of Sebewa | 289 | 1,001 | 24 | 1,314 | 22.0% | 76.2% | R+54.2 |
| Precinct -Township of North PlainsTownship of North Plains | 370 | 800 | 12 | 1,182 | 31.3% | 67.7% | R+36.4 |
| Precinct -Township of OrangeTownship of Orange | 340 | 796 | 16 | 1,152 | 29.5% | 69.1% | R+39.6 |
| 0670690000001067-06900-00001 | 0 | 0 | 0 | 0 | — | — | Even |
| 0670690000002067-06900-00002 | 0 | 0 | 0 | 0 | — | — | Even |
| 0670690000003067-06900-00003 | 0 | 0 | 0 | 0 | — | — | Even |
| 0670770000001067-07700-00001 | 0 | 0 | 0 | 0 | — | — | Even |
| 0670968000001067-09680-00001 | 0 | 0 | 0 | 0 | — | — | Even |
| 0670968000002067-09680-00002 | 0 | 0 | 0 | 0 | — | — | Even |
| 0670968000003067-09680-00003 | 0 | 0 | 0 | 0 | — | — | Even |
| 0671284000001067-12840-00001 | 0 | 0 | 0 | 0 | — | — | Even |
| 0671972000001067-19720-00001 | 0 | 0 | 0 | 0 | — | — | Even |
| 0672422000001067-24220-00001 | 0 | 0 | 0 | 0 | — | — | Even |
| 0672422000002067-24220-00002 | 0 | 0 | 0 | 0 | — | — | Even |
| 0674086001001067-40860-01001 | 0 | 0 | 0 | 0 | — | — | Even |
| 0674086002001067-40860-02001 | 0 | 0 | 0 | 0 | — | — | Even |
| 0674086003001067-40860-03001 | 0 | 0 | 0 | 0 | — | — | Even |
| 0674086004001067-40860-04001 | 0 | 0 | 0 | 0 | — | — | Even |
| 0674088000001067-40880-00001 | 0 | 0 | 0 | 0 | — | — | Even |
| 0674252000001067-42520-00001 | 0 | 0 | 0 | 0 | — | — | Even |
| 0674992000001067-49920-00001 | 0 | 0 | 0 | 0 | — | — | Even |
| 0674992000002067-49920-00002 | 0 | 0 | 0 | 0 | — | — | Even |
| 0674992000003067-49920-00003 | 0 | 0 | 0 | 0 | — | — | Even |
| 0675872000001067-58720-00001 | 0 | 0 | 0 | 0 | — | — | Even |
| 0676020000001067-60200-00001 | 0 | 0 | 0 | 0 | — | — | Even |
| 0676020000002067-60200-00002 | 0 | 0 | 0 | 0 | — | — | Even |
| 0676092000001067-60920-00001 | 0 | 0 | 0 | 0 | — | — | Even |
| 0676116000001067-61160-00001 | 0 | 0 | 0 | 0 | — | — | Even |
| 0676158000001067-61580-00001 | 0 | 0 | 0 | 0 | — | — | Even |
| 0676586000001067-65860-00001 | 0 | 0 | 0 | 0 | — | — | Even |
| 0676588000001067-65880-00001 | 0 | 0 | 0 | 0 | — | — | Even |
| 0676588000002067-65880-00002 | 0 | 0 | 0 | 0 | — | — | Even |
| 0676944000001067-69440-00001 | 0 | 0 | 0 | 0 | — | — | Even |
| 0677212000001067-72120-00001 | 0 | 0 | 0 | 0 | — | — | Even |
| Precinct -City of BeldingCity of Belding | 0 | 0 | 0 | 0 | — | — | Even |
| Precinct -City of IoniaCity of Ionia | 0 | 0 | 0 | 0 | — | — | Even |
| Precinct -Township of BostonTownship of Boston | 0 | 0 | 0 | 0 | — | — | Even |
| Precinct -Township of EastonTownship of Easton | 0 | 0 | 0 | 0 | — | — | Even |
| Precinct -Township of LyonsTownship of Lyons | 0 | 0 | 0 | 0 | — | — | Even |
| Precinct -Township of OdessaTownship of Odessa | 0 | 0 | 0 | 0 | — | — | Even |
Presidential margin, 1892–2024
Democratic minus Republican, by election
| Year | Margin (D minus R) |
|---|---|
| 1892 | −5.9% |
| 1896 | +1.7% |
| 1900 | −11.1% |
| 1904 | −31.8% |
| 1908 | −16.2% |
| 1912 | +9.2% |
| 1916 | −0.5% |
| 1920 | −38.8% |
| 1924 | −51.5% |
| 1928 | −50.5% |
| 1932 | +17.4% |
| 1936 | +4.4% |
| 1940 | −27.1% |
| 1944 | −35.2% |
| 1948 | −27.6% |
| 1952 | −39.5% |
| 1956 | −37.8% |
| 1960 | −23.9% |
| 1964 | +28.9% |
| 1968 | −16.1% |
| 1972 | −26.7% |
| 1976 | −26.2% |
| 1980 | −23.8% |
| 1984 | −42.1% |
| 1988 | −19.0% |
| 1992 | −3.2% |
| 1996 | −1.5% |
| 2000 | −18.5% |
| 2004 | −21.6% |
| 2008 | −5.8% |
| 2012 | −12.8% |
| 2016 | −30.6% |
| 2020 | −30.3% |
| 2024 | −31.9% |
U.S. Senate
Registered voters
Total registered voters, over time
| Year | Total registered |
|---|---|
| 2016 | 43,247 |
| 2018 | 43,509 |
| 2020 | 46,988 |
| 2022 | 48,358 |
| 2024 | 49,588 |
Who moves in and out
Net migration over time, and who arrivals are — where they came from and what those places vote
+193 net domestic migration · 2025
Net −1,670 over 2011–2025 · gain loss
Arrivals reported $49,775 in average income, against $68,508 for residents who stayed — 27% lower. (IRS SOI, 2022–23)
The places arrivals came from lean R+7.4 on average — 25 points more Democratic-leaning than Ionia County, MI itself (R+31.9).
Where arrivals came from lean of each source
- Kent County, MI497D+5.4
- Montcalm County, MI211R+39.0
- Eaton County, MI113R+3.1
- Barry County, MI80R+34.3
- Ingham County, MI80D+29.7
- Clinton County, MI77R+8.6
Where departures went households, 2022–23
- Kent County, MI375
- Montcalm County, MI223
- Eaton County, MI128
- Clinton County, MI83
- Ingham County, MI76
- Barry County, MI67
Migration is one input to a place’s political change, not its cause — a shift can also come from residents changing their minds, generational turnover, or turnout. These figures describe the places people moved between; they do not measure how any mover voted.
| Year | Net domestic migration |
|---|---|
| 2011 | −275 |
| 2012 | −271 |
| 2013 | −144 |
| 2014 | +64 |
| 2015 | −403 |
| 2016 | −83 |
| 2017 | −105 |
| 2018 | −176 |
| 2019 | +259 |
| 2021 | −132 |
| 2022 | +1 |
| 2023 | −700 |
| 2024 | +102 |
| 2025 | +193 |
Ionia County's population of roughly 61,000 tilts heavily rural and working-class, producing one of lower Michigan's more consistent Republican performances — a 31.9-point margin in 2024 that reflects a long-running shift away from its earlier competitive balance.
Across the recorded series it reached a Democratic high of 28.9 points in 1964 and a Republican high of 51.5 points in 1924. Between 2020 and 2024 the county moved 1.6 points toward the Republican candidate; the 2024 margin was 31.9 points.
A population of 66,574, a 85% non-Hispanic-white share, and a median household income of $75,611 describe the county. The county's voting pattern over the last decade is most similar to that of Branch County and Barry County.
The counties whose fingerprint — 2000–2024 trajectory, demographics, ancestry, religion — sits closest to this one, and why.
Twin score (0–100) = weighted cosine between tier-standardized fingerprints: presidential margins 2000–2024 with 12-yr trend and elasticity, ACS income, age, education, population and race, top reported ancestries, and religious adherence — chips name the closest-shared dimensions and the widest gap. Re-weight the groups in the twins explorer.
Browse places by community — income, education, race & ethnicity, language — all community cuts →
Compare two places, side by side
Twelve curated comparisons line up election history, demographics, and the divergence story for two places at a glance. Browse all comparisons →
Ionia County, Michigan. Akashic. https://akashic.app/county/26067/. Accessed May 20, 2026. License: CC BY 4.0.