Boundary Atlas

How to map election results by precinct

Get the precinct boundaries for the county or district, join your results on the precinct code, and colour the map. Boundary Atlas has current official precincts for about 92% of the US population (2020 Census voting districts elsewhere), each tagged with its congressional and legislative districts.

Who this is for

Ask your agent

With Boundary Atlas added to Claude, ChatGPT, Cursor or Codex (free, no key; how):

Get the precincts for Essex County, NJ from Boundary Atlas as GeoJSON with their districts, join this results CSV on precinct name, and make a choropleth.

Step by step

  1. List the precincts. list_children(id="us:county:<FIPS>", level="precinct") gives codes and names.
  2. Match names. Results feeds rarely use Census names. List the county's precincts once and match locally.
  3. Get the shapes. get_boundaries(id="us:county:<FIPS>", children_level="precinct", include_districts=True).
  4. Check the vintage. Each precinct has vintage and source_id; 2020 Census voting districts are marked, so you know where lines may have moved.

Live example

Essex County, NJ has 554 precincts in the atlas (vintage: 2020). One call returns all of them as GeoJSON, each tagged with its congressional and legislative districts:

get_boundaries(id="us:county:34013", children_level="precinct", detail="medium", include_districts=True)

Things to know

More guides