← Back to the map

Methodology & sources

How this map was built

Every line on this map is a real administrative boundary published by New York City. Here is exactly where each one comes from and what was done to it.

What it shows

New York City is carved up by dozens of agencies into overlapping districts that rarely line up with one another. A single address can sit inside a community board, a City Council district, a police precinct, a fire battalion, a school district, a sanitation district, a health area, three different legislative districts and more — all at once. This tool lets you switch any combination of those boundaries on and off and see where they agree and where they cut across each other.

Where the boundaries come from

All 23 layers are official GeoJSON files from NYC Open Data, the great majority published by the Department of City Planning, or DCP (the others by the agencies noted below). Land layers are the versions clipped to the shoreline where the city provides them. Each dataset ID below links to its source page.

These are the current, in-effect boundaries: nearly every DCP layer here is release "26b" (published May 2026), and the redistricted political layers reflect the maps in force for the 2026 elections — the City Council lines adopted in 2023 and the Congressional, State Senate and Assembly lines used since 2024. (New York's congressional map faced a fresh court challenge in early 2026; after a U.S. Supreme Court stay in March 2026 the case was dropped, and the February 2024 map still stands.)

LayerAreasPublishing authorityDataset ID
Borough boundaries5NYC Dept. of City Planninggthc-hcne
Community districts / boards71NYC Dept. of City Planning5crt-au7u
City Council districts51NYC City Council / DCP872g-cjhh
Community school districts33NYC Dept. of Education / DCP8ugf-3d8u
Police precincts78NYPD / DCPy76i-bdw7
Fire battalions49FDNY / DCPxzng-ft6f
Fire divisions9FDNY / DCP68m2-uzcb
Fire companies348FDNY / DCPbst7-5464
Sanitation districts59NYC Dept. of Sanitationi6mn-amj2
Health center districts30NYC Dept. of Health / DCP6ez8-za84
Health areas354NYC Dept. of Health / DCPjntv-ngw5
Business improvement districts76NYC Dept. of Small Business Services7jdm-inj8
Commercial waste zones20NYC Dept. of Sanitation8ev8-jjxq
Hurricane evacuation zones6NYC Emergency Management / DCPepne-qv9x
State Assembly districts65NYS / DCP5yfv-9hkp
State Senate districts28NYS / DCPafns-vxeu
Congressional districts13US Census / DCPj3u5-usz2
Election districts4,214NYC Board of Elections / DCPwwxk-38u4
Neighborhood tabulation areas262NYC Dept. of City Planning9nt8-h7nd
Community district tabulation areas71NYC Dept. of City Planningxn3r-zk6y
Census tracts (2020)2,325US Census Bureau / DCP63ge-mke6
ZIP code tabulation areas221US Census Bureau35j5-n34v
Historic districts141NYC Landmarks Preservation Commissionskyk-mpzq

What was done to the data

This is a reference and comparison tool, not a system of record. For an authoritative answer to "which district is this address in," use the source agency or the city's official lookups — not a simplified map.

What's left out

This map covers the jurisdictions that partition the whole city. A few other boundary systems are excluded because they're a different kind of thing: zoning districts (a land-use classification of every individual lot — its own dense map), school attendance zones (which change yearly and don't tile the city cleanly) and hazard overlays like Federal Emergency Management Agency (FEMA) flood zones. Higher- and lower-level cuts of layers already shown — Police Department patrol boroughs, sanitation sections, fire company response areas beyond what's included — are also left out to keep the map legible.

Rebuilding it

The whole pipeline is one script, scripts/build.py: it downloads each dataset's GeoJSON export, normalizes one label per feature, and writes a simplified file plus a manifest.json that drives the map's toggle panel. Layer definitions live in scripts/layers.json. Re-running the script picks up the latest published boundaries.

Built July 2026 · 23 layers · 8,529 individual district polygons · source data DCP release 26b.