BizGapMap

Home / Coffee shops & beverage bars / Illinois / DuPage County, IL

DuPage County, IL — Coffee shops Saturation

How many coffee shops exist per person present — residents plus daytime workers — by ZIP code, compared with the U.S. average. Establishment data: Census ZBP 2023. Population: ACS 2024 5-year. 41 ZIP codes analyzed.

Includes: Coffee shops · Espresso bars · Boba / bubble tea shops · Juice & smoothie bars · Ice cream & frozen yogurt shops. Counted together because official statistics use one 722515 code.

Measured density: Above average — 1.02× the U.S. rate (between 1.02× and 1.07× once withheld ZIP cells are counted)

Why a range: Census does not publish a ZIP-by-industry count when that ZIP has 0–2 businesses. 13 ZIP cells in this county are withheld, 7 of them with residents. Each could hold 0, 1, or 2 businesses: counting them all as 0 gives the low end, counting them all as 2 gives the high end — the data cannot say where the truth sits. The density range uses only the populated cells, since ZIPs without residents are excluded from per-person rates. How ranges work

In line with the U.S. rate   DuPage County coffee shops — 102–107% of the U.S. rate

270 coffee shops are counted in DuPage County — 2.1 per 10,000 people present (residents + daytime workers), 102% of the U.S. rate of 2.1.

On the comparable ZIP set (ZIPs with a published count in every year), the total has risen 24% between 2015 and 2023 (207 → 256). That set is smaller than today's county total. 2020–2021 were pandemic-distorted, and Census rounds counts, so small moves are within noise.

Measured supply density is highest in 60540 (Naperville), 60532 (Lisle), 60521 (Hinsdale) — well above the national rate. On measured density alone, the lowest-density residential ZIPs with a published count are 60189 (Wheaton), 60188 (Carol Stream), 60101 (Addison).

BLS QCEW puts the latest county-wide count (2026 Q1) at 225 establishments, the freshest available signal.

Measured density: DuPage County sits at 102% of the U.S. rate for coffee shops. 7 ZIPs with population have no published count (each 0–2 businesses), so the true per-capita rate is between 102% and 107% of the U.S. rate. Why. The highest measured density is in 60540 and 60532; the lowest measured density is in 60189 and 60188.

This is a supply-side read: it counts existing coffee shops and the people present, not foot traffic, income, rent, or whether locals want more. Treat low density as a question to check, not an answer.

Coffee shops
270–296
published count; upper bound counts each withheld ZIP cell as 2 (13 cells) (2023)
Per 10,000 present
2.1
residents + daytime workers
U.S. average
2.1
per 10,000 present
County index
1.02×
vs. U.S.
Latest quarter (QCEW)
225
2026 Q1 — county total
Residents
961,096
35 ZIPs with data
Workers
599,180
jobs located in county

Is the area growing?

Population
937,142
Census PEP, July 1 2024
Change since 2020
+0.6%
+5,634 people
Net migration 2024
+4,966
international +11,567, domestic −6,601
Jobs located here
627,316
LODES 2022, −2.0% since 2019

DuPage County had an estimated 937,142 residents on July 1, 2024 — 0.6% more than in 2020 (+5,634). In the latest year it gained 7,962 people: births minus deaths +2,922, international migration +11,567, domestic migration −6,601. Components are published separately and may not sum exactly.

627,316 jobs were located in the county in 2022 (−2.0% since 2019), and 467,437 employed residents lived there (−2.4% since 2019). LODES counts wage and salary jobs covered by unemployment insurance plus federal jobs; it excludes the self-employed and military, and counts jobs rather than unique people. 2019→2022 spans the pandemic, so read it as one change, not a trend.

Population and migration say whether the customer base is growing. They do not say whether people want another business of this type. Definitions and limits →  ·  Full county detail →

ZIP gaining residents
2015–19 → 2020–24
Change
60555 Warrenville
+14.7%
60108 Bloomingdale
+4.9%
ZIP losing residents
2015–19 → 2020–24
Change
60185 West Chicago
−6.6%
60540 Naperville
−6.5%
60139 Glendale Heights
−3.8%

ACS 5-year estimates for 2015–2019 and 2020–2024. Only ZIPs with at least 2,000 residents in both windows and a change larger than the survey margin of error (90%) are listed — small ZIPs move a lot on paper without a real signal.

Nonemployer businesses (no paid employees)

Nonemployer businesses
40
no paid employees (2024)
Receipts
$2.3M
published gross receipts
Receipts per business
$57K
gross, not profit

Census Nonemployer Statistics counts businesses with no paid employees — a separate universe from the employer establishments counted above; a business is in one or the other, never both. They are not storefronts by definition: many are home-based, mobile, or part-time.

We show them beside the density index, not inside it. In categories such as nail and beauty salons, child care, and pet care, one-person businesses can outnumber employer establishments, so the employer-only count understates how many businesses exist. That is not evidence of higher demand.

Receipts are gross revenue reported for these businesses — not profit, and not the size of the local market. Census publishes this only at county level, so it is not shown on the ZIP map. See methodology.

Saturation map

Each ZIP area is shaded by its density of this business type per person present (residents + workers) vs. the U.S. average. Click any ZIP to zoom to its boundary, see its numbers, and switch to aerial imagery. Individual mapped shops appear as dots at street level — Show locations zooms you in to them (scroll or double-click to zoom).

Basemap:
Under 50% 50–100% 100–150% 150–250% 250%+ 0–2 (not published) / no data ZIP total (dot size) Mapped shop (OpenStreetMap, street level)

Map data © OpenStreetMap contributors, tiles by OpenFreeMap.

White dots are ZIP totals from the official Census count — the bigger the dot, the more coffee shops in that ZIP. They are aggregated, not individual shops. Turquoise dots are individual locations mapped in OpenStreetMap, shown only at street level; they are crowd-sourced and indicative, may be incomplete, and do not equal the official counts. Only the official ZIP totals feed the saturation index.

Market trend — up 24% since 2015

Number of coffee shops in DuPage County across 2015–2023, on a consistent set of ZIP codes present in every year — so changes are real, not ZIP-boundary artifacts. 2015/2018 are pre-pandemic baselines; 2020/2021 are COVID-distorted.

207
2015
208
2018
209
2020
220
2021
230
2022
256
2023

Highest measured density

ZIP
vs. U.S. average
Index
60540 Naperville
290%
60532 Lisle
197%
60521 Hinsdale
179%
60502 Aurora
174%
60187 Wheaton
155%
60181 Villa Park
144%
60108 Bloomingdale
142%
60504 Aurora
131%
60137 Glen Ellyn
131%
60185 West Chicago
114%
60172 Roselle
113%
60191 Wood Dale
112%
60515 Downers Grove
110%
60106 Bensenville
100%
60563 Naperville
96%

Lowest measured density

ZIP
vs. U.S. average
Index
60189 Wheaton
44%
60188 Carol Stream
53%
60101 Addison
54%
60565 Naperville
56%
60517 Woodridge
57%
60555 Warrenville
67%
60527 Willowbrook
71%
60139 Glendale Heights
74%
60148 Lombard
86%
60103 Bartlett
90%
60126 Elmhurst
91%
60559 Westmont
95%
60563 Naperville
96%
60106 Bensenville
100%
60515 Downers Grove
110%
Low measured density is not evidence of opportunity. A ZIP with few coffee shops may simply lack foot traffic, retail space, or demand. We rank only residential and mixed ZIPs here; employment hubs and visitor destinations are listed separately below. ZIPs where Census did not publish a count (0–2 businesses) are not ranked: they may be the least served of all, but the data cannot tell 0 from 1 or 2. Verify those locally.

Employment hubs & destinations

These ZIPs have far more workers (or visitors) than residents, so their counts are driven by daytime and visitor demand — not a place to read "shortage" from resident numbers alone.

ZIPNeighborhoodType ResidentsWorkersCoffee shopsIndex
60523Oak Brook Employment hub 10,14437,633 7 115%
60143Itasca Employment hub 11,32425,654 0–2 —

Scroll the table sideways to see all columns.

All ZIP codes

Click a column header to sort. Index = coffee shops per 10,000 people present (residents + 0.5×workers) ÷ the U.S. average. 100% = exactly average.

ZIPNeighborhood ResidentsWorkersCoffee shops Per 10kIndexStatus
60540Naperville 42,25227,132 34 6.1 290% Very high density
60532Lisle 28,54724,870 17 4.1 197% High density
60521Hinsdale 18,05611,613 9 3.8 179% High density
60502Aurora 23,30813,334 11 3.7 174% High density
60187Wheaton 28,81515,800 12 3.3 155% High density
60181Villa Park 30,34625,300 13 3.0 144% Above average
60108Bloomingdale 23,60413,062 9 3.0 142% Above average
60504Aurora 39,35822,555 14 2.8 131% Above average
60137Glen Ellyn 38,6969,454 12 2.8 131% Above average
60523Oak Brook 10,14437,633 7 2.4 115% Above average
60185West Chicago 33,70316,202 10 2.4 114% Above average
60172Roselle 24,14110,525 7 2.4 113% Above average
60191Wood Dale 14,39613,569 5 2.4 112% Above average
60515Downers Grove 29,76252,551 13 2.3 110% Above average
60106Bensenville 20,04516,758 6 2.1 100% Above average
60563Naperville 39,33040,593 12 2.0 96% Below average
60559Westmont 24,23111,757 6 2.0 95% Below average
60126Elmhurst 47,51630,767 12 1.9 91% Below average
60103Bartlett 41,38211,955 9 1.9 90% Below average
60148Lombard 52,59627,553 12 1.8 86% Below average
60139Glendale Heights 32,84811,020 6 1.6 74% Below average
60527Willowbrook 29,02821,833 6 1.5 71% Below average
60555Warrenville 15,22312,321 3 1.4 67% Below average
60517Woodridge 33,15616,892 5 1.2 57% Below average
60565Naperville 40,4833,254 5 1.2 56% Below average
60101Addison 37,44831,553 6 1.1 54% Below average
60188Carol Stream 42,30722,322 6 1.1 53% Below average
60189Wheaton 31,0423,097 3 0.9 44% Far below average
60138Glen Ellyn —25 0–2 — — Not published
60143Itasca 11,32425,654 0–2 — — Not published
60157Medinah 2,577398 0–2 — — Not published
60184Wayne 2,557298 0–2 — — Not published
60186West Chicago —1,640 0–2 — — Not published
60190Winfield 11,8267,635 0–2 — — Not published
60514Clarendon Hills 9,9181,632 0–2 — — Not published
60516Downers Grove 28,0623,589 0–2 — — Not published
60522Hinsdale —66 0–2 — — Not published
60561Darien 23,0694,699 0–2 — — Not published
60566Naperville —2,305 0–2 — — Not published
60567Naperville —269 0–2 — — Not published
60598Aurora —19 0–2 — — Not published

Scroll the table sideways to see all columns.

Find an actual space in Downers Grove

The numbers above tell you how the market looks. To find a specific storefront, these marketplaces list available retail space for lease.

LoopNet
Largest commercial marketplace
Browse Downers Grove retail space →
Crexi
Free listings + market data
Browse Downers Grove retail space →
CityFeet
Retail space for lease
Browse Downers Grove retail space →

Open vacancy data (actual empty units) is only published by some cities; where it exists we show it directly. Listings above are third-party.

Census withholds some ZIP-by-industry cells to protect small businesses. 0–2 means the cell was not published (Census publishes industry counts only at 3+ per ZIP), so the ZIP is left unranked rather than counted as zero. ~ means the count is estimated from the broader industry group and can be off by a business or two.

Follow DuPage County and coffee shops

When a data vintage changes or a section of this report is revised, we post it to a public update feed. No email address, no account, no tracking — and nothing is sent unless something actually changed.

Subscribe to updates (RSS) How these numbers are built →

Methodology & sources

Establishments. U.S. Census ZIP Code Business Patterns (ZBP 2023), NAICS 722515 — snack & non-alcoholic beverage bars (incl. coffee shops). Counts establishments with paid employees. ZBP is published annually with a ~2-year lag.

Fresh county signal. BLS QCEW (quarterly) is newer than ZBP — 2026 Q1 shows 225 establishments county-wide for this industry. It cannot be broken down by ZIP.

Population. U.S. Census American Community Survey 2024 5-year ZCTA population (table B01003). Workers are the ZIP's total employment from the same 2023 ZBP file.

Demand ("people present"). Demand comes from residents and daytime workers: residents + 0.5 × workers. This is the single documented assumption in the model and can be tuned.

Index. index = (ZIP establishments ÷ ZIP demand × 10,000) ÷ the U.S. average for this industry (2.10 per 10,000 present). It is a supply-side density measure; it does not capture income, rent, tourism, or whether locals actually want more.

Read the full methodology →  ·  Data sources & vintages →

BizGapMap — free, no-login small-business saturation reports for major U.S. counties. Built entirely from public U.S. Census, BLS, and IRS data (ZBP 2023, ACS 2024 5-year, PEP 2024, LODES, QCEW, IRS SOI). No forecasts, no revenue guesses — withheld cells are marked, and the few derived counts are labelled as estimates.