BizGapMap

Home / Pharmacies & drug stores / Illinois / Cook County, IL

Cook County, IL — Pharmacies Saturation

How many pharmacies 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. 186 ZIP codes analyzed.

Includes: Pharmacies · Drug stores · Community & compounding pharmacies. Counted together because official statistics use one 446110 code.

Measured density: Below average — 0.74× the U.S. rate (between 0.74× and 0.97× 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. 94 ZIP cells in this county are withheld, 74 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

Range spans the U.S. rate   Cook County pharmacies — 74–97% of the U.S. rate

486 pharmacies are counted in Cook County — 0.8 per 10,000 people present (residents + daytime workers), 74% of the U.S. rate of 1.0.

On the comparable ZIP set (ZIPs with a published count in every year), the total has fallen 12% between 2015 and 2023 (513 → 449). 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 60155 (Broadview), 60714 (Niles), 60162 (Hillside) — well above the national rate. On measured density alone, the lowest-density residential ZIPs with a published count are 60632 (Chicago), 60004 (Arlington Heights), 60612 (Chicago).

Census County Business Patterns (2023) puts the county-wide count at 576 establishments, including locations in ZIP codes that do not map to a ZCTA — so it can run slightly above the sum of the ZIP rows on this page. It is annual, so it lags more than QCEW.

Measured density: Cook County sits at 74% of the U.S. rate for pharmacies. 74 ZIPs with population have no published count (each 0–2 businesses), so the true per-capita rate is between 74% and 97% of the U.S. rate. Why. The highest measured density is in 60155 and 60714; the lowest measured density is in 60632 and 60004.

This is a supply-side read: it counts existing pharmacies 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.

Pharmacies
486–674
published count; upper bound counts each withheld ZIP cell as 2 (94 cells) (2023)
Per 10,000 present
0.8
residents + daytime workers
U.S. average
1.0
per 10,000 present
County index
0.74×
vs. U.S.
Latest year (CBP)
576
2023 — $574M annual payroll
Residents
5,132,257
166 ZIPs with data
Workers
2,445,383
jobs located in county

Is the area growing?

Population
5,182,617
Census PEP, July 1 2024
Change since 2020
−1.6%
−84,455 people
Net migration 2024
+30,570
international +67,763, domestic −37,193
Jobs located here
2,616,104
LODES 2022, −1.9% since 2019

Cook County had an estimated 5,182,617 residents on July 1, 2024 — 1.6% fewer than in 2020 (−84,455). In the latest year it gained 40,095 people: births minus deaths +9,459, international migration +67,763, domestic migration −37,193. Components are published separately and may not sum exactly.

2,616,104 jobs were located in the county in 2022 (−1.9% since 2019), and 2,331,664 employed residents lived there (−3.2% 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
60654 Chicago
+28.6%
60605 Chicago
+24.6%
60611 Chicago
+13.5%
ZIP losing residents
2015–19 → 2020–24
Change
60445 Midlothian
−44.7%
60426 Harvey
−16.7%
60827 Riverdale
−13.2%

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
114
no paid employees (2024)
Receipts
$12.9M
published gross receipts
Receipts per business
$113K
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 pharmacies 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 — down 12% since 2015

Number of pharmacies in Cook 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.

513
2015
554
2018
545
2020
532
2021
517
2022
449
2023

Highest measured density

ZIP
vs. U.S. average
Index
60155 Broadview
257%
60714 Niles
251%
60162 Hillside
248%
60457 Hickory Hills
241%
60455 Bridgeview
220%
60445 Midlothian
218%
60805 Evergreen Park
212%
60305 River Forest
203%
60053 Morton Grove
194%
60643 Chicago
173%
60194 Schaumburg
173%
60463 Palos Heights
172%
60467 Orland Park
169%
60429 Hazel Crest
168%
60659 Chicago
166%

Lowest measured density

ZIP
vs. U.S. average
Index
60632 Chicago
39%
60004 Arlington Heights
47%
60612 Chicago
50%
60626 Chicago
54%
60402 Berwyn
56%
60525 La Grange
56%
60018 Des Plaines
56%
60620 Chicago
57%
60629 Chicago
60%
60638 Chicago
64%
60804 Cicero
64%
60193 Schaumburg
65%
60201 Evanston
69%
60107 Streamwood
69%
60016 Des Plaines
70%
Low measured density is not evidence of opportunity. A ZIP with few pharmacies 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 ResidentsWorkersPharmaciesIndex
60602Chicago Destination 1,48033,916 3 158%
60603Chicago Destination 1,29860,606 5 153%
60611Chicago Employment hub 37,70589,024 8 94%
60607Chicago Employment hub 32,39268,600 6 87%
60654Chicago Employment hub 25,75568,006 5 81%
60601Chicago Employment hub 15,23583,170 4 68%
60606Chicago Destination 3,840203,655 5 46%
60141Hines Destination 1953,318 0–2 —
60173Schaumburg Employment hub 13,65052,694 0–2 —
60208Evanston Destination 25520,972 0–2 —

Scroll the table sideways to see all columns.

All ZIP codes

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

ZIPNeighborhood ResidentsWorkersPharmacies Per 10kIndexStatus
60461Olympia Fields 4,7613,726 3 4.5 439% Very high density
60155Broadview 7,9066,792 3 2.7 257% Very high density
60714Niles 30,30524,130 11 2.6 251% Very high density
60162Hillside 8,0847,285 3 2.6 248% High density
60457Hickory Hills 14,5033,211 4 2.5 241% High density
60455Bridgeview 16,87210,328 5 2.3 220% High density
60445Midlothian 14,2686,940 4 2.3 218% High density
60805Evergreen Park 19,4206,844 5 2.2 212% High density
60305River Forest 11,9924,595 3 2.1 203% High density
60053Morton Grove 24,61910,528 6 2.0 194% High density
60643Chicago 45,9429,019 9 1.8 173% High density
60194Schaumburg 19,7565,345 4 1.8 173% High density
60463Palos Heights 13,7226,296 3 1.8 172% High density
60467Orland Park 24,3988,422 5 1.7 169% High density
60429Hazel Crest 14,8644,802 3 1.7 168% High density
60659Chicago 41,7289,683 8 1.7 166% High density
60621Chicago 28,3013,833 5 1.7 160% High density
60712Lincolnwood 13,11210,293 3 1.6 159% High density
60304Oak Park 16,9552,964 3 1.6 158% High density
60602Chicago 1,48033,916 3 1.6 158% High density
60603Chicago 1,29860,606 5 1.6 153% High density
60640Chicago 65,44517,714 11 1.5 143% Above average
60302Oak Park 32,8627,083 5 1.4 133% Above average
60618Chicago 91,90120,260 14 1.4 133% Above average
60616Chicago 54,30824,459 9 1.4 131% Above average
60091Wilmette 27,3335,627 4 1.3 129% Above average
60625Chicago 76,76012,820 11 1.3 128% Above average
60624Chicago 35,2636,140 5 1.3 126% Above average
60614Chicago 70,69327,556 11 1.3 126% Above average
60169Hoffman Estates 33,40110,355 5 1.3 126% Above average
60005Arlington Heights 28,84320,389 5 1.3 124% Above average
60647Chicago 84,74918,625 12 1.3 124% Above average
60657Chicago 71,90420,985 10 1.2 118% Above average
60622Chicago 54,60925,035 8 1.2 115% Above average
60453Oak Lawn 56,86120,791 8 1.2 115% Above average
60076Skokie 32,95319,696 5 1.2 113% Above average
60430Homewood 19,83812,628 3 1.1 111% Above average
60623Chicago 81,27712,534 10 1.1 111% Above average
60131Franklin Park 18,05417,688 3 1.1 108% Above average
60067Palatine 38,20413,951 5 1.1 107% Above average
60628Chicago 60,4317,654 7 1.1 106% Above average
60615Chicago 42,9757,045 5 1.1 104% Above average
60706Harwood Heights 24,2607,647 3 1.1 103% Above average
60610Chicago 44,88324,563 6 1.0 102% Above average
60608Chicago 80,73729,377 10 1.0 102% Above average
60660Chicago 42,72411,098 5 1.0 100% Above average
60077Skokie 28,50120,601 4 1.0 100% Below average
60090Wheeling 38,29820,419 5 1.0 100% Below average
60487Tinley Park 26,0436,646 3 1.0 99% Below average
60025Glenview 41,68915,355 5 1.0 98% Below average
60617Chicago 74,7909,915 8 1.0 97% Below average
60630Chicago 55,4869,520 6 1.0 96% Below average
60655Chicago 28,4343,995 3 1.0 95% Below average
60609Chicago 62,02818,440 7 1.0 95% Below average
60639Chicago 84,24015,433 9 1.0 95% Below average
60611Chicago 37,70589,024 8 1.0 94% Below average
60438Lansing 28,8067,275 3 0.9 90% Below average
60646Chicago 28,7808,214 3 0.9 88% Below average
60607Chicago 32,39268,600 6 0.9 87% Below average
60160Melrose Park 24,54917,614 3 0.9 87% Below average
60634Chicago 73,8859,038 7 0.9 86% Below average
60636Chicago 32,1983,505 3 0.9 86% Below average
60068Park Ridge 38,65015,904 4 0.9 83% Below average
60654Chicago 25,75568,006 5 0.8 81% Below average
60411Chicago Heights 52,17515,397 5 0.8 81% Below average
60613Chicago 52,24415,412 5 0.8 81% Below average
60202Evanston 32,3417,547 3 0.8 80% Below average
60641Chicago 68,89412,906 6 0.8 77% Below average
60649Chicago 48,0564,778 4 0.8 77% Below average
60062Northbrook 41,40646,099 5 0.8 75% Below average
60056Mount Prospect 55,81817,452 5 0.8 75% Below average
60409Calumet City 35,1007,660 3 0.8 75% Below average
60651Chicago 63,3356,154 5 0.8 73% Below average
60133Hanover Park 36,7326,371 3 0.8 73% Below average
60074Palatine 36,4608,793 3 0.7 71% Below average
60016Des Plaines 60,89817,329 5 0.7 70% Below average
60107Streamwood 38,8866,624 3 0.7 69% Below average
60201Evanston 43,74425,259 4 0.7 69% Below average
60601Chicago 15,23583,170 4 0.7 68% Below average
60193Schaumburg 40,1469,409 3 0.7 65% Below average
60804Cicero 82,79714,661 6 0.7 64% Below average
60638Chicago 57,07437,741 5 0.7 64% Below average
60629Chicago 108,3248,370 7 0.6 60% Below average
60620Chicago 64,8717,319 4 0.6 57% Below average
60018Des Plaines 27,95247,694 3 0.6 56% Below average
60525La Grange 31,32441,056 3 0.6 56% Below average
60402Berwyn 63,72112,054 4 0.6 56% Below average
60626Chicago 49,6627,775 3 0.6 54% Below average
60612Chicago 35,74444,360 3 0.5 50% Below average
60004Arlington Heights 51,83520,130 3 0.5 47% Far below average
60606Chicago 3,840203,655 5 0.5 46% Far below average
60632Chicago 89,10720,101 4 0.4 39% Far below average
60006Arlington Heights —36 0–2 — — Not published
60007Elk Grove Village 32,59244,419 0–2 — — Not published
60008Rolling Meadows 22,80021,481 0–2 — — Not published
60017Des Plaines —170 0–2 — — Not published
60022Glencoe 8,3522,391 0–2 — — Not published
60026Glenview 14,0698,480 0–2 — — Not published
60029Golf 51888 0–2 — — Not published
60043Kenilworth 2,503555 0–2 — — Not published
60065Northbrook —201 0–2 — — Not published
60070Prospect Heights 15,4961,603 0–2 — — Not published
60078Palatine —40 0–2 — — Not published
60082Techny —184 0–2 — — Not published
60093Winnetka 19,86710,004 0–2 — — Not published
60104Bellwood 18,2563,868 0–2 — — Not published
60130Forest Park 13,9437,440 0–2 — — Not published
60141Hines 1953,318 0–2 — — Not published
60153Maywood 23,20111,871 0–2 — — Not published
60154Westchester 16,4369,124 0–2 — — Not published
60159Schaumburg —14 0–2 — — Not published
60161Melrose Park —61 0–2 — — Not published
60163Berkeley 5,1991,517 0–2 — — Not published
60164Melrose Park 20,8728,892 0–2 — — Not published
60165Stone Park 4,4821,140 0–2 — — Not published
60168Schaumburg —27 0–2 — — Not published
60171River Grove 10,4512,096 0–2 — — Not published
60173Schaumburg 13,65052,694 0–2 — — Not published
60176Schiller Park 11,3936,458 0–2 — — Not published
60179Hoffman Estates —1,237 0–2 — — Not published
60192Hoffman Estates 16,4617,007 0–2 — — Not published
60195Schaumburg 4,3975,331 0–2 — — Not published
60196Schaumburg —3,103 0–2 — — Not published
60203Evanston 4,680390 0–2 — — Not published
60204Evanston —160 0–2 — — Not published
60208Evanston 25520,972 0–2 — — Not published
60301Oak Park 3,4754,793 0–2 — — Not published
60303Oak Park —20 0–2 — — Not published
60406Blue Island 23,3274,972 0–2 — — Not published
60412Chicago Heights —43 0–2 — — Not published
60415Chicago Ridge 14,0994,484 0–2 — — Not published
60418Crestwood 10,5722,133 0–2 — — Not published
60419Dolton 20,8252,530 0–2 — — Not published
60422Flossmoor 9,5421,424 0–2 — — Not published
60425Glenwood 8,7141,909 0–2 — — Not published
60426Harvey 23,9067,383 0–2 — — Not published
60428Markham 10,9273,809 0–2 — — Not published
60439Lemont 24,19212,721 0–2 — — Not published
60443Matteson 20,6637,534 0–2 — — Not published
60452Oak Forest 26,7395,281 0–2 — — Not published
60454Oak Lawn —156 0–2 — — Not published
60456Hometown 4,215339 0–2 — — Not published
60458Justice 14,2001,189 0–2 — — Not published
60459Burbank 28,7394,621 0–2 — — Not published
60462Orland Park 41,45617,270 0–2 — — Not published
60464Palos Park 9,7731,758 0–2 — — Not published
60465Palos Hills 18,0813,499 0–2 — — Not published
60466Park Forest 21,4612,093 0–2 — — Not published
60469Posen 5,205774 0–2 — — Not published
60471Richton Park 12,8481,435 0–2 — — Not published
60472Robbins 4,563217 0–2 — — Not published
60473South Holland 21,22510,974 0–2 — — Not published
60475Steger 10,035887 0–2 — — Not published
60476Thornton 1,940780 0–2 — — Not published
60477Tinley Park 35,97613,621 0–2 — — Not published
60478Country Club Hills 16,3902,171 0–2 — — Not published
60480Willow Springs 5,388773 0–2 — — Not published
60482Worth 10,8971,288 0–2 — — Not published
60499Bedford Park —77 0–2 — — Not published
60501Summit Argo 11,4324,212 0–2 — — Not published
60513Brookfield 19,3433,146 0–2 — — Not published
60526La Grange Park 13,4591,746 0–2 — — Not published
60534Lyons 10,3272,008 0–2 — — Not published
60546Riverside 16,3224,686 0–2 — — Not published
60558Western Springs 13,4462,222 0–2 — — Not published
60604Chicago 61641,171 0–2 — — Not published
60605Chicago 36,21022,820 0–2 — — Not published
60619Chicago 59,5036,093 0–2 — — Not published
60631Chicago 30,92423,781 0–2 — — Not published
60633Chicago 12,47410,315 0–2 — — Not published
60637Chicago 52,72131,368 0–2 — — Not published
60642Chicago 21,78921,425 0–2 — — Not published
60644Chicago 47,2105,433 0–2 — — Not published
60645Chicago 48,2084,307 0–2 — — Not published
60652Chicago 41,0745,715 0–2 — — Not published
60653Chicago 33,3833,171 0–2 — — Not published
60656Chicago 29,5385,140 0–2 — — Not published
60661Chicago 11,39864,670 0–2 — — Not published
60666Chicago —37,159 0–2 — — Not published
60673Chicago —7 0–2 — — Not published
60680Chicago —80 0–2 — — Not published
60690Chicago —25 0–2 — — Not published
60699Chicago —50 0–2 — — Not published
60707Elmwood Park 41,1166,357 0–2 — — Not published
60803Alsip 22,10615,497 0–2 — — Not published
60827Riverdale 24,7132,241 0–2 — — Not published

Scroll the table sideways to see all columns.

Find an actual space in Chicago

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 Chicago retail space →
Crexi
Free listings + market data
Browse Chicago retail space →
CityFeet
Retail space for lease
Browse Chicago 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 Cook County and pharmacies

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 446110 — pharmacies & drug stores. Counts establishments with paid employees. ZBP is published annually with a ~2-year lag.

Fresh county signal. This industry has no clean QCEW series, so the freshest county signal is Census County Business Patterns 2023: 576 establishments and $574M in annual payroll county-wide. This count includes locations in ZIP codes that do not map to a ZCTA, so it can be slightly higher than the sum of the ZIP rows. CBP is annual and slower than QCEW. 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 (1.03 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.