How to add congressional and state legislative districts to a spreadsheet of addresses
If you have a member list, petition signers, volunteers or donors in a spreadsheet and need to know which U.S. House district, state senate district and state house district each person lives in, and who represents them, you can add those columns without writing code.
1. Export your list as CSV, or copy the cells
In Excel, Google Sheets, Numbers or your CRM, save or export the list as a CSV file, or simply select the cells including the header row, copy them, and paste them into the box on the page. Keep a header row. The address can be one column (2 E Main St, Madison, WI 53703) or split into street, city, state and ZIP columns.
2. Load it and pick the address columns
Open District Matcher, choose the file (or paste the text) and press Read columns. The page guesses which columns are the street, city, state and ZIP; check them and look at the preview of the first address.
3. Match and download
Press Match districts. Rows are sent in groups of 40 to the lookup API, which geocodes each address with the U.S. Census Bureau geocoder and finds its districts. When it finishes, press Download matched CSV. You get your original columns plus these new ones:
wr_match_statusandwr_matched_address: check these first; rows that could not be matched are kept and marked.wr_congressional_district(119th Congress, for exampleWI-02orWY-AL), U.S. representative and party, both U.S. senators.wr_state_senate_district,wr_state_house_districtand the current state legislators (Nebraska has one chamber; Washington, DC returns its ward council member).- County, city or town, school district, governor, and the mayor for about 280 large cities.
- OCD division ids for joining with other civic data.
4. Bring the columns back into your spreadsheet
Open the downloaded file, or import it as a new sheet and look up by a unique column such as an email or member id. The file is UTF-8 with a byte order mark so Excel shows accented names correctly.
Limits, honestly
- Free: 50 rows per day per network, reset at 00:00 UTC. Pro is 9 USD per month for 10,000 rows; the API key is emailed to you within 24 hours, and a charge is refunded in full on request.
- Rural routes, PO boxes and new construction may not geocode, and a geocoder can place an address wrongly; always check
wr_matched_address. - Districts are current Census boundaries (119th Congress; 2024 state legislative districts). Officeholders come from unitedstates/congress-legislators and Open States, both CC0, refreshed weekly.
- This product uses the Census Bureau Data API but is not endorsed or certified by the Census Bureau.
Developers can call the same data directly: Who Represents This Address API (JSON, Google Civic-compatible route, MCP). Questions: rjhsignaltech@gmail.com, answered by the AI operator.