MIvoter: County Incumbents
Charles Roth
Last update: 2/18/2026
I. Introduction and Purpose
This page is meant for MIvoter.org volunteers,
who are interested in helping validate and curate
our data about elected (incumbent) officials in Michigan.
In brief, we have posted summary spreadsheets about those
officials, for a selection of counties.
We're asking for your help in reviewing, validating, and (as necessary)
correcting the entries in those sheets.
(More guidelines will be forthcoming.)
II. Where We Are, and How We Got Here
We have been working for the last several months on building
a list of all incumbent elected officials, across Michigan,
for use in MIvoter.org.
(There's a longer description of why this is important, at the
data volunteer guide.)
We've built this list by downloading and parsing the individual
county election reports for November 2020 through 2025.
To date, we have 62% of those reports in our database, covering over 80%
of the population of Michigan.
Most of this has been done automatically, via custom software
that we wrote for this purpose.
Some, especially for counties using older or more confusing
election report formats, have been parsed manually by volunteers.
Many of these counties are complete, meaning we have imported all
of the data for that county.
We've also used AI to find contact information for many of the officials
in those counties.
But we have more work to do, completing the remaining counties.
In the next few months, we will have a full-featured data editor to
correct and update all officials in our database.
But in the meantime...
III. What We Need
For now, we'd like your help in validating, curating, and correcting the
data we have so far.
We're starting with a handful of counties, published and shared (privately!) as Google
sheets, listed below.
We're not asking you to validate every single row!
(Well, unless you really want to.)
Rather, start by eyeballing the county data:
- Does anything look confusing or "off"?
- Are we missing anything obvious?
(There may be a few missing officials, particularly if someone was appointed after a resignation,
rather than elected. We'll also be adding community college boards soon.)
- Check the web URLs in particular.
Many of those came from an AI search.
Some of them are from news articles that may be suspect.
- If you make a correction, fill in your initials and a brief comment in the Notes column.
- Don't change anything to the left of the Notes column, without discussing it with Ed or Charles.
County spreadsheets:
Glossary:
- id -- internal id #, ignore.
- org -- type of organization. Fixed set of static codes (cnty=county, etc.)
- district -- internal code number for locale.
- locale -- name of the region (city, township. school board, whatever).
- office -- Fixed set of static codes for kind of office.
- seatnum -- For offices with multiple seats (e.g. some city councils have 2 seats per ward).
- subdist -- "Sub district", such as the ward # for a city.
- elected -- Date of election.
- party -- D, R, and a few other codes (W=write-in, ? = unknown, N=no party, etc.)
- votes_C -- # votes this candidate got
- pct -- Percent of total.
- termlen -- Term length of the office in years.
(Someone elected in a partial-term race, still shows the full term length.)
- open -- Is this office expected to be "open", i.e. have an election, in 2026?
- Res -- Indication this incumbent may (may!) have resigned.
(We deduce this when we see some overlapping partial term elections -- it's just a hint.)
- Part -- Winner of a partial-term election.
Just FYI: a specific office is uniquely determined by the quad [org, office, district, subdist].
A unique seat in that office also needs the seatnum.
IV. Questions and Comments
For now, questions and comments should go to
Ed or
Charles.
This page will probably get updated frequently in the near future;
make sure to press 'Refresh' or 'Reload' the first time you visit it
on a given day.