Open data: how every US county is governed

Who governs every county in the United States: what kind of government each one has, and — where a state's roster has been collected — who currently holds each office.

Released into the public domain under CC0. No attribution required, though it is appreciated. See LICENSE.

Regenerate with wg build && wg dump from https://github.com/belgradGoat/WhoGoverns.

Files

FileWhat it isRowsSize
contacts.csvHow to reach an office — post, phone, email65,99814.6 MB
demographics.csvPopulation per division3,14453 KB
divisions.csvEvery county and county-equivalent3,196379 KB
governments.csvForm of government, board size, home-rule status, official website3,144341 KB
offices.csvSeats that exist, and whether they are elected42,1414.2 MB
people.csvOfficeholders36,6191.2 MB
terms.csvWho holds which seat, until when, and the office's website42,1417.5 MB

Also in the bundle: README.md, CHECKSUMS.txt and LICENSE (CC0 1.0).

Columns

contacts.csv

contact_id, subject_type, subject_id, kind, value, label, is_official_domain, source_name, source_url

demographics.csv

geoid, population, vintage

divisions.csv

geoid, state_fips, county_fips, name, full_name, state_name, state_abbr, division_type, ocd_id, has_county_government, land_area_sqm

governments.csv

geoid, form, government_type, governing_body_name, governing_body_size, has_elected_executive, elected_officials_total, authority, home_rule_charter, source, source_vintage, website_url

offices.csv

office_id, geoid, title, role, selection_method, selection_method_source, seat

people.csv

person_id, name

terms.csv

office_id, person_id, person_name, status, is_chair, term_end_year, source_url, source_name, website_url

Joining

Everything joins on geoid, the 5-digit state+county FIPS code. Offices and terms join on office_id; terms and people on person_id.

Keep geoid as text. 01001 is Autauga County, Alabama, and a spreadsheet that reads it as a number turns it into 1001, which is nothing.

What to know before trusting a number

  • Officeholders cover Alabama, Alaska, Arizona, Arkansas, California, Colorado, Connecticut, Delaware, District of Columbia, Florida, Georgia, Hawaii, Idaho, Illinois, Indiana, Iowa, Kansas, Kentucky, Louisiana, Maine, Maryland, Massachusetts, Michigan, Minnesota, Mississippi, Missouri, Montana, Nebraska, Nevada, New Hampshire, New Jersey, New Mexico, New York, North Carolina, North Dakota, Ohio, Oklahoma, Oregon, Pennsylvania, Rhode Island, South Carolina, South Dakota, Tennessee, Texas, Utah, Vermont, Virginia, Washington, West Virginia, Wisconsin and Wyoming only. Other states have divisions and government structure but no names yet.
  • Form of government, board size, and home-rule status are 2017 vintage — the most recent machine-readable release. These change only by charter adoption, but they are not live figures. Every record says so in source_vintage.
  • Term-end dates depend on the state. Oregon publishes them as years; California publishes none at all, so its terms carry no expiry.
  • selection_method is usually a state legal default, not a per-county verified fact — selection_method_source says which. varies_by_county means state law lets each county choose and the source does not record the choice.
  • Contact points attach to a government or a seat, never to a person. contacts.csv carries a mailing address for every county government in the country, addressed to a role rather than a name; phone numbers and email addresses exist only where a state publishes them, which today means California and Oregon. is_official_domain is false on an email the office publishes that is not a government mailbox.
  • website_url is always the official site of an office, never a campaign or personal page. On governments.csv it is the county government's own site, from the Census listing, present for roughly three counties in four. On terms.csv it is populated for members of Congress and governors only: no source publishes a website for an individual county officeholder, and none is guessed from a hostname pattern.
  • Nothing here is padded. A blank means the source did not say. What each source covers, state by state, is in data/coverage.json.

Vintages

LayerVintage
BoundariesCensus 2025
Government unitsCensus 2025
PopulationCensus 2025
Government structureNACo 2017

Checksums

SHA-256 of every file in the bundle, as published in CHECKSUMS.txt:

fffd2c89df3ac9919bda10fb14a6af5019b497de1045c034223ae8a4e455fe6b  LICENSE
202244eb95ccb8287277b5b9a407c6303adda8150697ed4d466c6d98ad1da41d  README.md
8773e3dc7a1595253ef004d728427719b5fbd008aac7dbf179438ec58c86d40d  contacts.csv
21e002c34c3ac76fbe183e502b0a792dfd807c03fdbf59d5e10705f9da2c3441  demographics.csv
e30720ce11ba10bc3108b28edbdcec52f860c8f224d5dbeabb76d5e7e5d06353  divisions.csv
d92456f6d2009b87434596483e40428a21f65258badabbdd9975cf50cca52641  governments.csv
0700d0e16cdc3baa0a691788e475ae46b3dd716d2c92cd77aa5a95a89bb22511  offices.csv
fb756916bd1e8ea205b82f15b1dfc98288b5e82c8b43f0648b9fd75f485f1934  people.csv
33a1df3f3c93a90478d68fd6da8b52a712851c42dce05a37b6510a7f6413a197  terms.csv

More