US ZIP Code to Coordinates
Look up the population-weighted geographic centroid of any US ZIP code. US-only, instant, offline lookup against the SimpleMaps Pro database. Returns the centroid in all six common coordinate notations along with city, state, county, population, density, and IANA timezone.
What US ZIP codes are
A ZIP code(Zone Improvement Plan) is the US Postal Service's five-digit code identifying a delivery district. The first digit names a National Area (roughly NE-to-West), the next two name the Sectional Center Facility — the regional sort hub — and the last two name the delivery zone, typically a single post office or a slice of a city. The optional +4 add-on identifies a specific street segment, building, or PO box.
This converter looks up a ZIP's population-weighted geographic centroid in a bundled, server-side copy of the SimpleMaps US ZIP database (Pro tier, CC-BY 4.0, sourced from US Census ZCTA and USPS). Lookups are instant and don't hit any external API.
Convert ZIP → coordinates
Type a 5-digit US ZIP (or ZIP+4 — the +4 is ignored for geographic lookup). Lookup runs server-side against the bundled database; results render below.
See it on the map
The marker shows the ZIP's population-weighted centroid — not its boundary. Actual ZIP boundaries are irregular and the centroid often sits near the densest part of the delivery area.
How to use this tool
Enter a US ZIP
Five digits, optionally followed by a hyphen and four more digits (the +4 add-on). Whitespace and punctuation are ignored. Examples: "10001", "10001-2345", "90210". Non-US postal codes return an error — use /tools/address-to-coordinates for those.
Read the centroid
The result shows the ZIP's population-weighted geographic centroid as a decimal-degree lat/lon, alongside the city, state, county, and "ZIP+4" badge. The deep report below the map adds population, density, IANA time zone, and centroid quality flags (imprecise / military / non-ZCTA).
Continue with another tool
Every cross-link in the report pre-loads the centroid coordinates. UTM, MGRS, Plus Code, elevation, magnetic declination, sun position — one click each, with the centroid carried forward in the URL.
What a US ZIP code encodes
"ZIP" stands for Zone Improvement Plan, introduced by the US Post Office in 1963. A US ZIP is five digits with an optional +4 add-on for sub-ZIP precision. The five digits are organised hierarchically — each digit narrows down to a smaller delivery district.
| Part | Digits | What it identifies |
|---|---|---|
| National Area | 1 | Broad region of the country. 0 = New England + NJ, 1 = NY/PA, 2 = DC/VA/NC/SC, 3 = FL/GA, 4 = KY/IN/MI, 5 = IA/MN/WI, 6 = IL/KS/MO, 7 = TX/AR/LA, 8 = AZ/CO/NM, 9 = CA/OR/WA + Alaska/Hawaii. |
| Sectional Center Facility (SCF) | 2–3 | Regional sort hub that processes mail for many delivery districts. SCFs are the operational backbone of USPS mail movement. |
| Delivery area | 4–5 | Local post office or specific delivery zone within an SCF. In dense cities, one delivery area may cover only a few blocks. |
| +4 add-on | Hyphen + 4 | Optional. Identifies a specific street segment, building, floor of a building, or PO box. Improves routing efficiency but rarely written by humans. |
ZIPs vs ZCTAs — what's actually in the dataset
USPS ZIP codes and Census Bureau ZCTAs are almost the same thing — but not quite. The dataset this tool uses indexes against the union of both.
- USPS ZIPs are operational — they exist wherever USPS delivers mail. There are about 42,000 of them today, including thousands assigned to a single PO box cluster, a single organisation, or a special-purpose unit.
- Census ZCTAsare geographic — defined by the US Census Bureau so demographic statistics can be aggregated to a polygon. There are about 33,000 of them, and they intentionally exclude PO-box-only and unique-use ZIPs because those don't have a residential geographic footprint.
The lookup returns a record whenever the ZIP has a usable geographic centroid. PO-box-only and military APO/FPO ZIPs either return a nominal centroid (with the "imprecise" or "military" flag set) or no result at all, depending on the source. The deep report surfaces these flags so you know what you're looking at.
What the centroid actually represents
The lat/lon returned by the lookup is the SimpleMaps Pro coordinate for the ZIP. That coordinate is the US Census Bureau's population-weighted centroid of the ZCTA — the point you'd arrive at if you weighted every residential address in the ZIP equally and took the average. It biases toward population density, which means dense urban ZIPs have centroids that fall near the densest blocks, and sparse rural ZIPs have centroids that fall near the largest town within the ZIP.
| ZIP type | Centroid behaviour | Worst-case distance to an in-ZIP address |
|---|---|---|
| Dense urban (e.g. NYC 10001) | Near the geographic centre of the polygon | Hundreds of metres — often less than a block |
| Suburban (e.g. 02134 Allston, MA) | Near the densest cluster of residences | Typically under a kilometre |
| Rural (e.g. 59825 Charlo, MT) | Anchored on the only town inside the ZIP | Can be 20+ km — the ZIP covers a wide range area |
| PO-Box-only | No geographic centroid; flagged "imprecise" | Indeterminate — no residential addresses to centre on |
| APO/FPO military | No geographic location at all; flagged "military" | Not a physical location — addresses are routed via military mail |
| Unique-use (e.g. corporate HQ) | Single building's coordinate (when available) | Effectively zero — the ZIP is one address |
Ten worked examples — common US ZIPs and their centroids
| ZIP | Place | Decimal Degrees | Time zone |
|---|---|---|---|
| 10001 | New York, NY (Manhattan) | 40.7506°N, 73.9973°W | America/New_York |
| 90210 | Beverly Hills, CA | 34.1025°N, 118.4150°W | America/Los_Angeles |
| 02134 | Allston, MA (Boston) | 42.3586°N, 71.1293°W | America/New_York |
| 60601 | Chicago, IL (Loop) | 41.8855°N, 87.6217°W | America/Chicago |
| 20001 | Washington, DC | 38.9100°N, 77.0180°W | America/New_York |
| 94103 | San Francisco, CA (SoMa) | 37.7725°N, 122.4116°W | America/Los_Angeles |
| 96813 | Honolulu, HI | 21.3163°N, 157.8436°W | Pacific/Honolulu |
| 99501 | Anchorage, AK | 61.2201°N, 149.8587°W | America/Anchorage |
| 06105 | Hartford, CT | 41.7732°N, 72.7044°W | America/New_York |
| 00601 | Adjuntas, PR | 18.1803°N, 66.7527°W | America/Puerto_Rico |
The territories row (00601, Adjuntas, Puerto Rico) is the easiest sanity check: the dataset covers US territories, not just the 50 states + DC. The Anchorage and Honolulu rows confirm Alaska and Hawaii are in the dataset and that the IANA timezone is carried alongside (useful for any coordinate-and-time workflow).
Misconceptions worth getting straight
"A ZIP code is a place"
A ZIP is a delivery district— an operational construct of the USPS. Boundaries aren't aligned with any municipal boundary, school district, or political subdivision. Many ZIPs straddle county lines (the dataset records every county a ZIP touches, with weights). A ZIP is not a city, and a city often has many ZIPs.
"The centroid is the post office"
Sometimes, but not by definition. The centroid is a population-weighted point — the average of where people live. The post office (the SCF or local delivery office) may be near the centroid or near the edge of the ZIP, depending on history and population distribution.
"Every ZIP has a centroid in the dataset"
No. PO-Box-only ZIPs, single-organisation ZIPs (large corporations sometimes have a dedicated ZIP), and APO/FPO military ZIPs lack residential geographic footprints. The Census Bureau doesn't produce ZCTAs for them. The dataset either flags them with imprecise=true / military=trueor doesn't include them at all. The report surfaces the flag so you know.
"ZIP+4 gives me address-level precision"
In theory yes — a ZIP+4 identifies a street segment of about a dozen addresses, or a single building. In practice, USPS doesn't publish ZIP+4 coordinate centroids openly, so this lookup uses only the base 5-digit ZIP. For address-level precision use /tools/address-to-coordinates.
"The lookup is calling Google / Mapbox in the background"
No external call. The full dataset is bundled into the server build and indexed at boot. The lookup is a hash-table lookup — instant, deterministic, offline. The only external request the page makes is the optional elevation API for the centroid's elevation in the report, and even that lives behind a server-side proxy with no-store caching.
When to use this tool, when not to
| Use case | This tool? | Why |
|---|---|---|
| Looking up a US ZIP centroid for a map view | Yes — primary | Designed exactly for this — instant, accurate, US Census-sourced. |
| Geocoding a full US street address | No — use address-to-coordinates | You want precise address-level coordinates, not the ZIP centroid. |
| Non-US postal code (UK, France, JP, etc.) | No — use address-to-coordinates | This dataset is US-only. Mapbox handles non-US postal codes there. |
| Building a US territory-aware demo | Yes | Dataset covers PR, USVI, GU, AS, MP alongside the 50 states + DC. |
| Bulk lookup over many ZIPs | Not via the UI | For bulk work use the underlying SimpleMaps CSV directly — no need to round-trip through the UI. |
| Driving a delivery routing system | Use the centroid as a starting point | But add address-to-coordinates for the final-mile precision. |
How this converter is built
The 33,000-entry SimpleMaps US ZIP database (Pro tier, CC-BY 4.0) is loaded once at server boot from src/data/uszips.csv and indexed into a Map<zip, record> for O(1) lookup. The lookup runs in the Server Component for /tools/zip-to-coordinates — the client never receives the full table, only the record for the queried ZIP. Cold load takes about a second; warm lookups are sub-millisecond. The only network request the page makes is the elevation lookup (USGS 3DEP for the US) and that uses Cache-Control: no-store per CLAUDE.md §19.4. No ZIP query is logged or retained.
Related tools
- Address to coordinates— Forward geocoding for full addresses, worldwide
- Coordinates to address— Reverse geocoding for any lat/lon
- Coordinate converter (all six formats)— DD, DMS, DDM, UTM, MGRS, Plus Code
- Elevation— USGS 3DEP / SRTM30m with accuracy band
- Magnetic declination— WMM 2025 declination at any point
- Distance calculator— Haversine + Vincenty between any two points
Related articles
- ZIP codes explained— Pillar article on the structure and history of US ZIPs
- Coordinate formats explained— The six common notations and when each is used
- What is a geodetic datum?— WGS-84, the datum modern coordinate data uses
- Decimal degrees vs DMS— Why modern systems use decimal degrees
Frequently asked questions
What is a ZIP centroid?
A US ZIP code names a delivery district, not a point. The centroid is the single representative coordinate the US Census Bureau computes for that district — the population-weighted average of every residential address inside it. For dense urban ZIPs the centroid is usually within a few hundred metres of any address; for rural ZIPs covering hundreds of square kilometres, it can be many kilometres from any specific address.
Why is this US-only?
The tool runs against a bundled US-only dataset (SimpleMaps Pro, sourced from US Census ZCTA + USPS) for instant offline lookup with no API quotas. For non-US postal codes — UK postcodes, French codes, Japanese codes, etc. — use /tools/address-to-coordinates instead; Mapbox handles worldwide postal codes there.
Does the tool cover US territories?
Yes — Puerto Rico (ZIPs 006xx-009xx), US Virgin Islands (008xx), Guam (969xx), American Samoa (967xx), and the Northern Mariana Islands (969xx) are all included alongside the 50 states + DC. The IANA time zone returned with each record carries the territory's correct zone (e.g. America/Puerto_Rico for PR).
Why doesn't my ZIP return a result?
Three common reasons: (1) it's a PO-Box-only ZIP with no residential geographic footprint; (2) it's a unique-use ZIP assigned to a single corporation or organisation; (3) it's an APO/FPO/DPO military ZIP that has no real geographic location. The Census Bureau's ZCTA dataset doesn't cover these. For an address inside such a ZIP, /tools/address-to-coordinates with the full address will work.
How accurate is the centroid?
The centroid is the population-weighted mean coordinate produced by the US Census Bureau — accurate to within ~10 m of the mathematical centre of the ZCTA polygon. The relevant question is usually whether the centroid is a good representative for a given purpose: in dense urban ZIPs, yes; in rural ZIPs covering wide areas, the centroid may be far from any individual address. The deep report shows the source flags so you know.
How does this differ from address-to-coordinates?
Address-to-coordinates does full geocoding of a street address ("350 5th Avenue, New York, NY 10118") and returns the precise address-level coordinate with confidence bands — for any country in the world. This ZIP tool takes a five-digit US ZIP and returns the centroid of that delivery district. Use ZIP-to-coordinates when you have only the ZIP; use address-to-coordinates when you have the address and need precise coordinates.
Is the data licensed for commercial use?
The dataset is the SimpleMaps US Zip Codes Database (Pro tier), licensed CC-BY 4.0. Commercial use is permitted with attribution to SimpleMaps and the underlying US Census Bureau source. The Coordinately UI carries the required attribution on every results page (in the report block at the bottom).
Are ZIPs and ZCTAs the same thing?
Almost. USPS ZIPs are operational delivery districts (about 42,000 of them); Census ZCTAs are geographic polygons defined for demographic analysis (about 33,000). ZCTAs exclude PO-Box-only and unique-use ZIPs since those have no residential footprint. The dataset here indexes against ZCTAs plus the additional SimpleMaps coverage that fills in some non-ZCTA ZIPs with nominal centroids (flagged as imprecise).
Sources
- SimpleMaps US Zip Codes (Pro) — SimpleMaps US Zip Codes Database (Pro tier) — the data source for this tool. Licensed CC-BY 4.0. Aggregated from US Census ZCTA and USPS delivery records. · https://simplemaps.com/data/us-zips · Accessed .
- US Census Bureau — ZCTAs — US Census Bureau, ZIP Code Tabulation Areas (ZCTAs) — the underlying geographic dataset for ZIP boundaries and population-weighted centroids. · https://www.census.gov/programs-surveys/geography/guidance/geo-areas/zctas.html · Accessed .
- USPS Publication 28 — USPS Publication 28 — Postal Addressing Standards. Appendix B documents the structure of ZIP codes and the ZIP+4 add-on system. · https://pe.usps.com/text/pub28/welcome.htm · Accessed .
- US Census 2020 Gazetteer files — US Census Bureau 2020 ZCTA Gazetteer file — the canonical source for ZIP centroid coordinates and land/water area. · https://www.census.gov/geographies/reference-files/2020/geo/2020-gazetteer-files.html · Accessed .
- IANA Time Zone Database — IANA tz database — the source of the timezone identifier carried alongside each ZIP record. · https://www.iana.org/time-zones · Accessed .
- NIMA TR 8350.2 (WGS 84) — NIMA Technical Report 8350.2 — Department of Defense World Geodetic System 1984. The reference ellipsoid the centroid coordinates use. · https://earth-info.nga.mil/php/download.php?file=coord-wgs84 · Accessed .
- USGS 3DEP — USGS 3D Elevation Program — sub-2 m vertical-accuracy DEM used by the report for elevation at the ZIP centroid. · https://www.usgs.gov/3d-elevation-program · Accessed .
- Creative Commons Attribution 4.0 International — CC-BY 4.0 — the licence under which SimpleMaps publishes the US Zip Codes database. The attribution in the report and on this page is the compliance step. · https://creativecommons.org/licenses/by/4.0/ · Accessed .