Map with ZIP Codes
By Marko Visic · Updated Oct 19, 2026
🇺🇸United States onlyFree ZIP code map maker. Paste a list of US ZIP codes (with optional values or labels) and instantly render a heat map, dot map, or territory map. All 41,545 US ZIPs are covered. Three render modes, no sign-up, no watermark; your pasted values stay in your browser.
Three ways to visualize ZIP codes
ZIP-level data has three standard visualization formats. Most online tools make you pick one and re-paste your data to switch. Map with ZIP Codes keeps your data loaded when you switch modes; only the rendering changes.
Heatmap mode (county-aggregate choropleth)
Each ZIP’s value is rolled up to its county FIPS code, and the county is colored by the aggregated value (sum, average, max, min, or count). This is the publication-ready format: readable at a national zoom level, resistant to outlier ZIPs, and the way Census, BLS, and county-government data is typically published. It's the default mode on first visit, so the page auto-loads the Population sample and you see a national heat map immediately.
Dots mode (per-ZIP circles)
Each ZIP renders as a colored circle at its centroid (the geometric centroid of its ZCTA polygon). Color encodes value via the chosen gradient. Optional: scale circle radius by ZIP population, so a 60,000-resident urban ZIP has visual weight different from a 100-resident rural ZIP with the same value. This is the right mode for granular per-ZIP comparisons, precise market sizing, or any case where the county aggregation hides what you care about.
Territory mode (categorical labels)
Each ZIP gets a label (sales rep, region, service tier, school district) and the tool auto-assigns one color per unique label. The result is a categorical territory map where every label has a clear color and the legend is one row per group. Click any pill in the legend to cycle its color. Useful for sales teams, service-area businesses, school districts, healthcare networks, and direct-mail operations.
How to plot ZIP codes on a map
Six steps from a CSV in your clipboard to a finished map. Click any sample dataset in the tool above to see the entire flow rendered instantly.
- Pick a render mode. Choose Heatmap (county-aggregate choropleth from ZIP-level values), Dots (one circle per ZIP), or Territory (categorical labels with one color per group). Switch between modes without re-pasting: your data stays loaded.
- Paste your ZIP codes. One ZIP per line, optionally followed by a numeric value or a categorical label. ZIP+4 codes are auto-truncated to 5 digits. Tab-separated paste from Excel and Google Sheets works directly.
- Or load a sample dataset. Six built-in datasets: population, density, median income, home value, median rent, and commute time. Population is the most complete (covers 33,169 ZIPs); 23,947 ZIPs have data for all six metrics. The "Regions" sample loads US Census regions as a categorical territory example.
- Customize colors and bins. Pick a sequential gradient (green, blue, red, purple, brown) or a diverging gradient (red↔blue, purple↔green). For heatmap mode, choose how to aggregate ZIP values inside each county: sum, average, max, min, or count.
- Filter to a single state. Tap any state chip to render only ZIPs in that state — useful when your CSV spans multiple states but you want one regional snapshot at a time. Tap "All" to see the whole national map again.
- Add title, label, export. Type a map title and value label (e.g. "dollars", "customers", "deliveries"). Image and data export isn't available yet. For now, capture the finished map with your browser's screenshot tool for a slide deck, blog post, or report.
Sample datasets you can try
Six built-in datasets: population, density, median income, home value, median rent, and commute time. Population is the most complete (33,169 ZIPs); 23,947 ZIPs have data for all six metrics. Click any sample on the tool above and the data loads instantly along with a sensible default gradient and aggregation method.
Residents per ZIP code. Best as a heat map (county-aggregate): urban centers light up immediately while rural ZIPs fade. The "where do people live" view.
How packed each ZIP is. Manhattan ZIPs hit 80,000+ people per square mile while many Western ZIPs stay below 5. Shows the urban-rural divide more starkly than raw population.
Median household income per ZIP. Reveals wealth corridors (Bay Area, Westchester, DC suburbs, Greenwich CT) and persistent rural-poverty regions (Mississippi Delta, Appalachia, Native reservations).
Median home value per ZIP. Especially useful for real estate teams comparing markets: a single national heat map shows where the $1M+ ZIPs cluster vs sub-$200K markets.
Median monthly rent per ZIP. Rental affordability is more useful than home value for roles in healthcare, hospitality, and retail thinking about workforce reach.
Average one-way commute time. Long-commute ZIPs cluster around exurban metros (Atlanta, DC, NY, LA) and dense urban cores with bad transit. Short commutes are rural towns and suburb-of-suburb belts.
What people use Map with ZIP Codes for
Six common use cases, each starting with a CSV pulled from a CRM, mail manifest, public dataset, or private database. Map with ZIP Codes is the rendering layer between data and a slide deck, blog post, grant report, or one-page coverage flyer.
Sales territory mapping
Paste a CSV of `zip,owner_name` to render a national territory map showing every ZIP each rep is responsible for. Diverging colors highlight where territories meet, where coverage gaps exist, and where two reps overlap. The map exports straight to a quarterly business review or a Salesforce custom-record screen for AEs.
Direct-mail and door-drop reach
Marketing planners paste a CSV of `zip,impressions` (or `zip,deliveries`) from a mail-house manifest to visualize campaign reach. The heat map mode aggregates to county for executive-level slides; the dot map shows precise per-ZIP saturation for granular targeting reviews.
Service-area coverage (HVAC, telecom, healthcare)
Service-area businesses paste their licensed/served ZIP list to communicate coverage to customers, brokers, or referral partners. A clean territory map ("Service available" / "Service planned" / "No service") makes a one-page coverage flyer that beats a paragraph of city names every time.
Real estate market analysis
Real estate analysts paste Zillow ZHVI data, Redfin median sale price, or year-over-year change at the ZIP level. The dot map mode lets you see ZIP-precision price clusters; the heat map aggregates to county for region-level comparison. Export to PNG for buyer-broker presentations or SVG for designers.
Voter contact and canvassing
Campaign field teams paste lists of high-priority ZIPs from VAN, NGP, or Catalist exports. A territory map shows door-knock zones; a heat map shows turnout-targeted ZIPs by intensity. Useful for state-level coordinator briefings and grant-funded GOTV programs.
Demographic visualization for grant writing
Non-profits and policy researchers paste ACS-derived ZIP-level data (uninsured rate, food-insecurity rate, broadband access) to make heat maps for grant applications. Federal HRSA and HUD reviewers expect visual evidence of geographic need, and a ZIP-level heat map aggregated to county is the standard format.
How to make a ZIP code heat map
A "ZIP code heat map" usually means one of two things, and most people who search for it want the second.
Density heat map. A pure spatial-density visualization (how many ZIPs are in this area) with no per-ZIP value attached. This is what tools like CARTO and Mapbox call a "heatmap layer": a Gaussian-blurred density estimate. Useful for "where are my customers clustered?" but not for "what’s the value per ZIP?".
Choropleth heat map (county-aggregate). ZIP-level values rolled up to a coarser geography (usually county) and rendered as a filled-polygon choropleth. This is the format used by news outlets, policy researchers, and Census tools. It’s what Map with ZIP Codes’ Heatmap mode produces. Pros: readable at national zoom, resistant to ZIP outliers, easy to export to a slide. Cons: hides ZIP-level variation within a single county.
Step-by-step: switch to Heatmap mode, paste `zip,value` rows, pick an aggregation method (sum for total counts, average for medians/percents, max for "highest value in the county"), choose a gradient (sequential for ordered data, diverging for value-with-midpoint), and pick 5 quantile bins as a starting point. Adjust bin count and classification method until the map reads well: quantile is best for unevenly-distributed data, equal-interval for bounded percent data, natural breaks for finding clusters.
How to plot a list of ZIP codes (without values)
Sometimes you just want to see a list of ZIPs on a map, with no values and no heat, just dots. Common scenarios: visualizing a customer list, mapping the ZIP codes in a service area, showing where a survey respondent set lives.
Switch to Dots mode and paste your ZIP list (one per line, no second column needed). Each ZIP becomes a single dot at its centroid. The default dot size is fixed (every ZIP equally weighted). Toggle "Size by population" to scale by ZIP population; this is the right call for customer-list maps, where a ZIP with 50K residents intuitively deserves more visual weight than a 200-resident ZIP.
For state-specific views, tap any state chip to filter, which helps when your CSV spans the whole country but you only want a one-state slide for a regional briefing. Tap "All" to return to the national view.
ZIP code territory mapping for sales teams
Sales territory maps are the most common use of categorical ZIP mapping. The end-result slide answers four questions for an executive: which rep owns which ZIP, where two reps overlap, where a territory is so sparse it should be redrawn, and where the company has no coverage at all.
Workflow: export `zip,owner_name` from your CRM (Salesforce reports, HubSpot territories, Microsoft Dynamics zones, since every CRM has this view). Paste into Map with ZIP Codes in Territory mode. Each owner becomes a colored region; the legend lists every owner with a ZIP count next to their name. Click an owner pill to recolor (e.g. "all enterprise reps green, all SMB reps blue").
Common patterns to look for: orphan ZIPs (high-density ZIPs with no assigned rep, usually in newly-grown metros), vintage assignments (a single rep covering 200+ ZIPs spanning four states because nobody re-cut the territory after 2018), and overlap zones (two reps assigned to the same ZIP, which usually triggers commission disputes). The map exposes all three at a glance.
ZIP-5, ZIP+4, and ZCTA — what’s the difference?
These three terms get mixed up constantly. Each refers to a different thing maintained by a different agency, and the distinction matters when you join datasets that use different ones.
ZIP-5 (5-digit ZIP code). Maintained by the United States Postal Service, introduced in 1963. Every populated address in the US is in exactly one ZIP-5. There are 41,545 active ZIP-5 codes, but only 33,782 have a Census ZCTA (the geographic ZIPs with a populated area); the rest are PO-Box-only codes, unique-customer ZIPs (assigned to a single large firm like Walmart HQ, NASA, or the Pentagon), and military/diplomatic codes. Map with ZIP Codes uses 41,545 ZIP-5 codes from the SimpleMaps dataset.
ZIP+4 (9-digit ZIP code). An extension introduced in 1983 that appends 4 more digits to the ZIP-5 to identify a specific block face, building, PO Box group, or large-volume mail recipient. ZIP+4 isn’t a geography; it’s a delivery routing hint. There are roughly 35 million unique ZIP+4 codes. Map with ZIP Codes auto-truncates ZIP+4 input to its first 5 digits when matching.
ZCTA (ZIP Code Tabulation Area). Maintained by the US Census Bureau, not USPS. Because USPS ZIPs are routes (linear delivery paths) rather than polygons, the Census Bureau invented ZCTAs in 2000 as polygon approximations of ZIP service areas. ZCTAs are built by aggregating Census blocks: every block is assigned to the most-common USPS ZIP among its addresses. ZCTAs cover ~95% of populated USPS ZIPs cleanly; the remaining ~5% are PO-Box-only ZIPs (no Census blocks, so no ZCTA) and unique-customer ZIPs (no general public addresses, so no ZCTA). The Census Bureau publishes ZCTA polygon shapefiles annually as part of TIGER/Line. Map with ZIP Codes uses ZIP centroids (lat/lng) for dot rendering and county-FIPS aggregation for heatmap rendering, not ZCTA polygons.
Why no boundary file? The USPS doesn’t maintain ZIP boundaries because ZIPs aren’t polygons. They’re postal routes, optimized for mail truck efficiency, and they cross municipal, county, and even state lines. The closest thing to a "ZIP boundary map" is a ZCTA polygon, which Esri, Mapbox, and HUD all publish in derivative form. Most non-technical users actually want either a centroid map (Dots mode here) or a county-aggregate choropleth (Heatmap mode), both of which avoid the boundary problem entirely.
How many ZIP codes does each US state have?
Counts below are populated geographic ZIP-5 codes from the SimpleMaps US Zips dataset (the dataset that powers this tool). PO-Box-only and unique-customer ZIPs are excluded; they have no geographic centroid. Need a single-state ZIP map? Tap the state chip in the tool above to filter your data to that state only.
In the SimpleMaps US Zips dataset that powers this table, Texas, Pennsylvania, and New York have the most ZIP codes of any state, both because of size and because of dense rural networks of small towns each with their own ZIP. Delaware, Rhode Island, and Hawaii have the fewest.
ZIP codes vs counties vs cities — when to use which
Three overlapping geographies, three different use cases. Picking wrong is the most common mistake in geographic data work, usually the result of "we already had it in this format" rather than a deliberate choice.
Use ZIPs for direct-mail, USPS-derived data (deliveries, returns, change-of- address), customer-database mapping (because every customer has a ZIP from checkout/billing), and IRS/HUD-derived ZIP-level data (income, mortgage, tax-credit usage). ZIP-level granularity is essential when ZIP-to-county mapping is many-to-many in your area (a single ZIP straddling two counties, or a single county containing 200+ ZIPs).
Use counties for Census ACS data (population, demographics, education), Bureau of Labor Statistics data (unemployment, wages, employment by industry), election results (every Presidential and Senate result is published by county), and most state-agency data. County is also the right level when you want a clean choropleth that doesn’t rely on point-density tricks. Map with Counties is the dedicated tool for this.
Use cities for hyperlocal customer-acquisition spend, retail-location decisions, real estate listings (MLS data is always city-keyed), and any case where the political identity of the place matters more than the demographic envelope. City boundaries change over time (annexations, incorporations) so historical city-level series are tricky.
ZIP code data sources
Where to pull ZIP-level data, by domain. All of the following publish free and most are directly downloadable as CSV with a ZIP-5 column.
| Source | What you get | License / cost |
|---|---|---|
| USPS | Authoritative ZIP-5 list with city/state — bare-bones | Free with terms |
| US Census Bureau | ZCTA polygon shapefile, ACS 5-year data by ZCTA | Public domain |
| SimpleMaps US ZIP Codes | 41,545 ZIP centroids (33,782 with ACS demographics) — what this tool uses | Paid (used under license) |
| IRS Statistics of Income | Adjusted gross income, tax filings, charitable giving by ZIP | Public domain |
| HUD USPS Crosswalk | ZIP→tract, ZIP→county, ZIP→CBSA mapping (quarterly) | Free with registration |
| Zillow ZHVI by ZIP | Median home value time-series by ZIP | Free for non-commercial |
| Esri demographic | Premium ZIP-level demographic forecasts | Paid (subscription) |
| CoreLogic / Black Knight | Premium real estate ZIP-level data | Paid (enterprise) |
Common ZIP code data mistakes
Five pitfalls we see repeatedly when people work with ZIP-level data, and how to avoid each.
1. Leading-zero loss in Excel
Excel auto-converts numeric-looking columns to numbers, which strips leading zeros. "02115" (Boston/Northeastern) becomes "2115", which is invalid and unmappable. Fix: format the ZIP column as Text BEFORE pasting (Format Cells → Text), or save the source CSV with the ZIP column quoted. Map with ZIP Codes left-pads short ZIPs to 5 digits as a safety net, but the cleanest source data is always 5-digit zero-padded strings.
2. ZIP+4 in input data
Address-validation services and CRM exports often store ZIP+4 codes ("90210-1234"). These won’t match against geographic ZIP-5 datasets unless truncated. Map with ZIP Codes auto-truncates to the first 5 digits, but other tools may not.
3. Treating ZIP as equal to city
ZIPs and cities don’t map 1:1. A single ZIP can span multiple cities (especially in rural areas) and a single large city can contain hundreds of ZIPs. New York City has 195 ZIP codes. Houston has 175. "Map all customers in Houston" via "ZIP starts with 770" misses a chunk of the metro and includes parts of suburban Harris County.
4. ZCTA vs USPS ZIP confusion
ACS demographic data is published at the ZCTA level, not the USPS ZIP level; they’re ~95% aligned but PO-Box-only ZIPs and unique-customer ZIPs are missing from ZCTA. If your CRM data is keyed on USPS ZIP and your demographic data is keyed on ZCTA, expect ~5% unmatched rows when joining.
5. PO Box ZIPs in geographic analysis
Some ZIPs are PO-Box-only (no geographic delivery; recipients pick up mail at the post office). Others are unique-customer ZIPs assigned to a single corporation, military installation, or government agency. Both have no geographic centroid in the conventional sense. They’ll appear unmatched in this tool because the SimpleMaps dataset excludes them. If your data has many of these (e.g., a list of corporate-billing addresses), expect a high unmatched rate, and that’s the data, not the tool.
Map with ZIP Codes vs other tools
Each tool wins different scenarios. The table below is a feature checklist, not a value judgment.
Map with ZIP Codes takes a ZIP list from your clipboard to a ZIP map with three render modes, no account, and no watermark.
Related tools and resources
Map with ZIP Codes pairs naturally with several other SimpleMaplab tools. To build a target ZIP list from a starting location and radius, use Find ZIP Codes in Radius. To find the ZIP that contains an address or coordinates, use What ZIP Code Am I In?. To measure distance between two ZIP codes, use Distance Between ZIP Codes.
For county-level rather than ZIP-level visualization, use Map with Counties (paste FIPS or county-name + value, get a county choropleth across all 3,132 US counties). For categorical coloring of countries or US states (visited-countries, lived-states, etc.), use Color a Map. For population estimates within a radius (useful for ZIP territory sizing), use Population Within Radius.
Frequently asked questions
ZIP code data: SimpleMaps US Zip Codes Database v1.95.1 (Jul 8, 2026). ZIP lists use the free version (CC BY 4.0); demographics come from the licensed Comprehensive version. Population: American Community Survey 2024 5-year estimates. Coordinates are the geometric centroids of Census ZIP Code Tabulation Areas (2010 ZCTA boundaries). 41,545 populated ZIPs covered. County boundaries: US Census Bureau TIGER/Line at 1:10,000,000 scale, via us-atlas counties-10m TopoJSON (public domain). ZIP-to-county joins use the SimpleMaps 'countyFips' field, derived from the Census Bureau’s ZCTA-to-County relationship file. State borders: us-atlas states-10m TopoJSON (public domain). ZIP coordinates and demographics are resolved on demand through our lookup API; no full ZIP table is downloaded to your browser.
More SimpleMapLab tools
Discover every ZIP within X miles of a starting location. Build target lists.
Paste county FIPS + values, get a national choropleth across 3,132 US counties.
Measure the distance between any two US ZIP codes with bearing.
Estimate the US population inside any radius using ZIP-level Census data.