Local business data · Chicago
Where Chicago's local businesses are most crowded
We counted 16 kinds of storefront and office businesses per 1,000 households in 313 residential ZIP codes across the Chicago metro (3,615,837 households). Here's where competition is densest, how the metro compares with Illinois and the U.S., and the big ZIPs where fewer than 3 of a business type are recorded.
Key findings
- Oak Brook (60523) ranks among the 10 most crowded ZIPs in the metro for 10 of 16 business types, including dentists, chiropractors, veterinarians.
- Chicago has 1.4 times the U.S. rate of general auto repair shops per household: 0.77 per 1,000 households, against 0.57 nationally.
- Chicago has about 17% fewer veterinary practices per household than the U.S. as a whole (0.15 per 1,000 households, against 0.18).
- Downers Grove (60515) has 12 pet care businesses for 11,939 households, about 6 times the metro rate.
- Chicago (60619), with 28,016 households, has fewer than 3 general auto repair shops recorded. Counts under 3 aren't published, so it could be one or two.
The metro at a glance
Businesses per 1,000 households across the metro, next to Illinois and the U.S.
| Business type | Metro | IL | U.S. |
|---|---|---|---|
| Dentists | 1.33 | 1.11 | 1.00 |
| Chiropractors | 0.29 | 0.29 | 0.25 |
| Veterinarians | 0.15 | 0.14 | 0.18 |
| Gyms & fitness centers | 0.31 | 0.27 | 0.26 |
| Beauty salons | 0.78 | 0.63 | 0.61 |
| Nail salons | 0.19 | 0.15 | 0.23 |
| Full-service restaurants | 2.02 | 1.90 | 1.93 |
| Fast-food & counter-service restaurants | 2.25 | 2.08 | 2.04 |
| General auto repair shops | 0.77 | 0.69 | 0.57 |
| Dry cleaners & laundry services | 0.10 | 0.08 | 0.07 |
| Child care centers | 0.69 | 0.56 | 0.56 |
| Pet care (grooming, boarding, training) | 0.16 | 0.14 | 0.13 |
| Law offices | 1.60 | 1.34 | 1.22 |
| Insurance agencies | 1.07 | 1.06 | 0.97 |
| CPA offices | 0.46 | 0.39 | 0.37 |
| Investment advisers | 0.18 | 0.13 | 0.14 |
Dentists
4,805 recorded across the metro, 1.33 per 1,000 households (1.3 times the U.S. rate). The most crowded ZIPs:
| ZIP | Place | Recorded | Per 1,000 |
|---|---|---|---|
| 60301 | Oak Park | 20 | 9.58 |
| 60026 | Glenview | 34 | 6.16 |
| 60521 | Hinsdale | 35 | 5.83 |
| 60463 | Palos Heights | 30 | 5.74 |
| 60305 | River Forest | 21 | 4.91 |
| 60523 | Oak Brook | 19 | 4.52 |
| 60068 | Park Ridge | 68 | 4.48 |
| 60195 | Schaumburg | 10 | 4.28 |
| 60173 | Schaumburg | 26 | 3.95 |
| 60564 | Naperville | 62 | 3.92 |
Large ZIPs with fewer than 3 recorded: Chicago (60649) – 24,326 households, Chicago (60644) – 18,748 households, Chicago (60653) – 16,833 households, Chicago (60624) – 13,435 households, Chicago (60636) – 11,444 households, Chicago (60621) – 11,382 households. Counts under 3 aren't published, so each could have one or two.
Chiropractors
1,062 recorded across the metro, 0.29 per 1,000 households (1.2 times the U.S. rate). The most crowded ZIPs:
| ZIP | Place | Recorded | Per 1,000 |
|---|---|---|---|
| 60301 | Oak Park | 5 | 2.40 |
| 60187 | Wheaton | 17 | 1.70 |
| 60048 | Libertyville | 16 | 1.53 |
| 60005 | Arlington Heights | 19 | 1.51 |
| 60523 | Oak Brook | 6 | 1.43 |
| 60134 | Geneva | 15 | 1.38 |
| 60173 | Schaumburg | 9 | 1.37 |
| 60174 | Saint Charles | 15 | 1.20 |
| 60423 | Frankfort | 13 | 1.18 |
| 60463 | Palos Heights | 6 | 1.15 |
Large ZIPs with fewer than 3 recorded: Chicago (60629) – 34,229 households, Chicago (60617) – 30,248 households, Chicago (60620) – 25,896 households, Chicago (60649) – 24,326 households, Chicago (60626) – 24,103 households, Chicago (60609) – 23,174 households. Counts under 3 aren't published, so each could have one or two.
Veterinarians
541 recorded across the metro, 0.15 per 1,000 households (below the U.S. rate of 0.18). The most crowded ZIPs:
| ZIP | Place | Recorded | Per 1,000 |
|---|---|---|---|
| 47978 | Rensselaer | 5 | 1.25 |
| 60523 | Oak Brook | 4 | 0.95 |
| 60174 | Saint Charles | 10 | 0.80 |
| 60048 | Libertyville | 8 | 0.77 |
| 46341 | Hebron | 3 | 0.76 |
| 60177 | South Elgin | 6 | 0.70 |
| 60044 | Lake Bluff | 3 | 0.70 |
| 60175 | Saint Charles | 6 | 0.68 |
| 60450 | Morris | 6 | 0.67 |
| 60442 | Manhattan | 3 | 0.66 |
Large ZIPs with fewer than 3 recorded: Chicago (60629) – 34,229 households, Chicago (60617) – 30,248 households, Chicago (60608) – 30,070 households, Chicago (60619) – 28,016 households, Chicago (60634) – 27,575 households, Chicago (60623) – 27,450 households. Counts under 3 aren't published, so each could have one or two.
Gyms & fitness centers
1,136 recorded across the metro, 0.31 per 1,000 households (1.2 times the U.S. rate). The most crowded ZIPs:
| ZIP | Place | Recorded | Per 1,000 |
|---|---|---|---|
| 60606 | Chicago | 7 | 2.65 |
| 60301 | Oak Park | 4 | 1.92 |
| 60069 | Lincolnshire | 6 | 1.69 |
| 60045 | Lake Forest | 12 | 1.60 |
| 60173 | Schaumburg | 10 | 1.52 |
| 60521 | Hinsdale | 8 | 1.33 |
| 60607 | Chicago | 20 | 1.33 |
| 60195 | Schaumburg | 3 | 1.28 |
| 60514 | Clarendon Hills | 5 | 1.27 |
| 60048 | Libertyville | 13 | 1.24 |
Large ZIPs with fewer than 3 recorded: Chicago (60629) – 34,229 households, Chicago (60617) – 30,248 households, Chicago (60619) – 28,016 households, Chicago (60623) – 27,450 households, Chicago (60620) – 25,896 households, Waukegan (60085) – 25,514 households. Counts under 3 aren't published, so each could have one or two.
Note: Independent personal trainers without employees aren't counted.
Beauty salons
2,838 recorded across the metro, 0.78 per 1,000 households (1.3 times the U.S. rate). The most crowded ZIPs:
| ZIP | Place | Recorded | Per 1,000 |
|---|---|---|---|
| 60195 | Schaumburg | 10 | 4.28 |
| 60712 | Lincolnwood | 16 | 3.48 |
| 60301 | Oak Park | 7 | 3.35 |
| 60521 | Hinsdale | 20 | 3.33 |
| 60187 | Wheaton | 27 | 2.70 |
| 60525 | La Grange | 33 | 2.69 |
| 60523 | Oak Brook | 11 | 2.62 |
| 60134 | Geneva | 25 | 2.30 |
| 60048 | Libertyville | 24 | 2.30 |
| 60714 | Niles | 26 | 2.30 |
Large ZIPs with fewer than 3 recorded: Chicago (60617) – 30,248 households, Chicago (60619) – 28,016 households, Chicago (60620) – 25,896 households, Chicago (60649) – 24,326 households, Chicago (60609) – 23,174 households, Chicago (60628) – 23,170 households. Counts under 3 aren't published, so each could have one or two.
Note: Booth renters and self-employed stylists aren't counted, so the real number of stylists is much higher than the number of salons.
Nail salons
690 recorded across the metro, 0.19 per 1,000 households (below the U.S. rate of 0.23). The most crowded ZIPs:
| ZIP | Place | Recorded | Per 1,000 |
|---|---|---|---|
| 60022 | Glencoe | 3 | 1.02 |
| 60093 | Winnetka | 7 | 0.97 |
| 60654 | Chicago | 15 | 0.94 |
| 60035 | Highland Park | 11 | 0.93 |
| 60521 | Hinsdale | 5 | 0.83 |
| 60546 | Riverside | 5 | 0.77 |
| 60048 | Libertyville | 8 | 0.77 |
| 60415 | Chicago Ridge | 4 | 0.75 |
| 60068 | Park Ridge | 11 | 0.73 |
| 60026 | Glenview | 4 | 0.72 |
Large ZIPs with fewer than 3 recorded: Chicago (60629) – 34,229 households, Chicago (60623) – 27,450 households, Crown Point (46307) – 25,363 households, Cicero (60804) – 25,031 households, Chicago (60649) – 24,326 households, Chicago (60637) – 22,628 households. Counts under 3 aren't published, so each could have one or two.
Note: Self-employed nail technicians aren't counted.
Full-service restaurants
7,291 recorded across the metro, 2.02 per 1,000 households. The most crowded ZIPs:
| ZIP | Place | Recorded | Per 1,000 |
|---|---|---|---|
| 60173 | Schaumburg | 66 | 10.0 |
| 60606 | Chicago | 23 | 8.72 |
| 60301 | Oak Park | 18 | 8.62 |
| 60607 | Chicago | 116 | 7.71 |
| 60523 | Oak Brook | 27 | 6.42 |
| 60654 | Chicago | 102 | 6.39 |
| 60195 | Schaumburg | 13 | 5.57 |
| 60661 | Chicago | 41 | 5.48 |
| 60622 | Chicago | 134 | 5.24 |
| 60611 | Chicago | 115 | 4.88 |
Large ZIPs with fewer than 3 recorded: Chicago (60644) – 18,748 households, Chicago (60624) – 13,435 households, Chicago (60621) – 11,382 households. Counts under 3 aren't published, so each could have one or two.
Fast-food & counter-service restaurants
8,126 recorded across the metro, 2.25 per 1,000 households (1.1 times the U.S. rate). The most crowded ZIPs:
General auto repair shops
2,792 recorded across the metro, 0.77 per 1,000 households (1.4 times the U.S. rate). The most crowded ZIPs:
| ZIP | Place | Recorded | Per 1,000 |
|---|---|---|---|
| 60455 | Bridgeview | 27 | 4.33 |
| 60171 | River Grove | 13 | 3.17 |
| 60131 | Franklin Park | 17 | 2.91 |
| 60101 | Addison | 40 | 2.91 |
| 60436 | Joliet | 19 | 2.89 |
| 60501 | Summit Argo | 11 | 2.88 |
| 60191 | Wood Dale | 14 | 2.63 |
| 60534 | Lyons | 10 | 2.43 |
| 60172 | Roselle | 22 | 2.41 |
| 60176 | Schiller Park | 10 | 2.36 |
Large ZIPs with fewer than 3 recorded: Chicago (60619) – 28,016 households, Chicago (60610) – 27,145 households, Chicago (60620) – 25,896 households, Chicago (60611) – 23,564 households, Chicago (60615) – 22,430 households, Chicago (60605) – 18,822 households. Counts under 3 aren't published, so each could have one or two.
Note: Specialty shops (body, transmission, oil change) and car washes are counted separately and aren't included; solo mechanics without employees aren't counted.
Dry cleaners & laundry services
373 recorded across the metro, 0.10 per 1,000 households (1.5 times the U.S. rate). The most crowded ZIPs:
| ZIP | Place | Recorded | Per 1,000 |
|---|---|---|---|
| 60093 | Winnetka | 8 | 1.11 |
| 60022 | Glencoe | 3 | 1.02 |
| 60521 | Hinsdale | 6 | 1.00 |
| 60091 | Wilmette | 8 | 0.78 |
| 60053 | Morton Grove | 7 | 0.77 |
| 60305 | River Forest | 3 | 0.70 |
| 60035 | Highland Park | 8 | 0.68 |
| 60108 | Bloomingdale | 6 | 0.65 |
| 60302 | Oak Park | 9 | 0.61 |
| 60478 | Country Club Hills | 3 | 0.55 |
Large ZIPs with fewer than 3 recorded: Chicago (60647) – 38,440 households, Chicago (60629) – 34,229 households, Chicago (60623) – 27,450 households, Chicago (60632) – 27,058 households, Chicago (60639) – 26,703 households, Waukegan (60085) – 25,514 households. Counts under 3 aren't published, so each could have one or two.
Note: Coin-operated laundromats are a separate category and aren't included.
Child care centers
2,504 recorded across the metro, 0.69 per 1,000 households (1.2 times the U.S. rate). The most crowded ZIPs:
| ZIP | Place | Recorded | Per 1,000 |
|---|---|---|---|
| 60022 | Glencoe | 8 | 2.72 |
| 46409 | Gary | 6 | 2.26 |
| 60087 | Waukegan | 18 | 1.86 |
| 60636 | Chicago | 21 | 1.84 |
| 60099 | Zion | 20 | 1.77 |
| 60153 | Maywood | 13 | 1.77 |
| 60804 | Cicero | 44 | 1.76 |
| 60195 | Schaumburg | 4 | 1.71 |
| 60041 | Ingleside | 6 | 1.70 |
| 60069 | Lincolnshire | 6 | 1.69 |
Large ZIPs with fewer than 3 recorded: Orland Park (60462) – 16,446 households, Wheaton (60189) – 12,054 households, Chicago (60655) – 10,817 households. Counts under 3 aren't published, so each could have one or two.
Note: Home-based child care run without employees isn't counted.
Pet care (grooming, boarding, training)
570 recorded across the metro, 0.16 per 1,000 households (1.2 times the U.S. rate). The most crowded ZIPs:
| ZIP | Place | Recorded | Per 1,000 |
|---|---|---|---|
| 60042 | Island Lake | 4 | 1.29 |
| 60044 | Lake Bluff | 5 | 1.17 |
| 60515 | Downers Grove | 12 | 1.01 |
| 60152 | Marengo | 4 | 0.89 |
| 60642 | Chicago | 10 | 0.88 |
| 60048 | Libertyville | 9 | 0.86 |
| 60083 | Wadsworth | 3 | 0.84 |
| 60177 | South Elgin | 7 | 0.82 |
| 60491 | Homer Glen | 6 | 0.80 |
| 60084 | Wauconda | 5 | 0.77 |
Large ZIPs with fewer than 3 recorded: Chicago (60629) – 34,229 households, Chicago (60617) – 30,248 households, Chicago (60619) – 28,016 households, Chicago (60623) – 27,450 households, Chicago (60610) – 27,145 households, Chicago (60632) – 27,058 households. Counts under 3 aren't published, so each could have one or two.
Note: Veterinarians are a separate category; mobile and solo groomers without employees aren't counted.
Law offices
5,772 recorded across the metro, 1.60 per 1,000 households (1.3 times the U.S. rate). The most crowded ZIPs:
| ZIP | Place | Recorded | Per 1,000 |
|---|---|---|---|
| 60606 | Chicago | 387 | 146.8 |
| 60601 | Chicago | 369 | 38.3 |
| 60654 | Chicago | 261 | 16.4 |
| 60523 | Oak Brook | 59 | 14.0 |
| 60301 | Oak Park | 25 | 12.0 |
| 60187 | Wheaton | 94 | 9.41 |
| 60661 | Chicago | 70 | 9.36 |
| 60173 | Schaumburg | 53 | 8.06 |
| 60432 | Joliet | 47 | 7.29 |
| 60463 | Palos Heights | 36 | 6.89 |
Large ZIPs with fewer than 3 recorded: Chicago (60619) – 28,016 households, Chicago (60620) – 25,896 households, Chicago (60649) – 24,326 households, Chicago (60626) – 24,103 households, Chicago (60628) – 23,170 households, Chicago (60651) – 20,880 households. Counts under 3 aren't published, so each could have one or two.
Insurance agencies
3,854 recorded across the metro, 1.07 per 1,000 households (1.1 times the U.S. rate). The most crowded ZIPs:
| ZIP | Place | Recorded | Per 1,000 |
|---|---|---|---|
| 60606 | Chicago | 121 | 45.9 |
| 60523 | Oak Brook | 45 | 10.7 |
| 60173 | Schaumburg | 48 | 7.30 |
| 60515 | Downers Grove | 54 | 4.52 |
| 60062 | Northbrook | 71 | 4.36 |
| 60601 | Chicago | 40 | 4.15 |
| 60463 | Palos Heights | 21 | 4.02 |
| 60008 | Rolling Meadows | 34 | 3.90 |
| 60661 | Chicago | 28 | 3.75 |
| 60018 | Des Plaines | 35 | 3.57 |
Large ZIPs with fewer than 3 recorded: Chicago (60620) – 25,896 households, Chicago (60651) – 20,880 households, Chicago (60644) – 18,748 households, Chicago (60653) – 16,833 households, Chicago (60612) – 14,934 households, Chicago (60624) – 13,435 households. Counts under 3 aren't published, so each could have one or two.
CPA offices
1,652 recorded across the metro, 0.46 per 1,000 households (1.2 times the U.S. rate). The most crowded ZIPs:
| ZIP | Place | Recorded | Per 1,000 |
|---|---|---|---|
| 60606 | Chicago | 50 | 19.0 |
| 60062 | Northbrook | 84 | 5.16 |
| 60523 | Oak Brook | 20 | 4.76 |
| 60173 | Schaumburg | 31 | 4.71 |
| 60069 | Lincolnshire | 12 | 3.38 |
| 60015 | Deerfield | 34 | 3.32 |
| 60018 | Des Plaines | 24 | 2.45 |
| 60181 | Villa Park | 28 | 2.44 |
| 60712 | Lincolnwood | 11 | 2.39 |
| 60448 | Mokena | 19 | 2.13 |
Large ZIPs with fewer than 3 recorded: Chicago (60629) – 34,229 households, Chicago (60617) – 30,248 households, Chicago (60623) – 27,450 households, Chicago (60632) – 27,058 households, Chicago (60639) – 26,703 households, Chicago (60620) – 25,896 households. Counts under 3 aren't published, so each could have one or two.
Note: Tax-prep-only offices are a separate category and aren't included.
Investment advisers
635 recorded across the metro, 0.18 per 1,000 households (1.3 times the U.S. rate). The most crowded ZIPs:
| ZIP | Place | Recorded | Per 1,000 |
|---|---|---|---|
| 60606 | Chicago | 60 | 22.8 |
| 60523 | Oak Brook | 16 | 3.81 |
| 60093 | Winnetka | 17 | 2.36 |
| 60173 | Schaumburg | 12 | 1.82 |
| 60601 | Chicago | 16 | 1.66 |
| 60045 | Lake Forest | 12 | 1.60 |
| 60563 | Naperville | 23 | 1.42 |
| 60515 | Downers Grove | 14 | 1.17 |
| 60187 | Wheaton | 11 | 1.10 |
| 60062 | Northbrook | 16 | 0.98 |
Large ZIPs with fewer than 3 recorded: Chicago (60640) – 37,727 households, Chicago (60629) – 34,229 households, Chicago (60625) – 31,681 households, Chicago (60617) – 30,248 households, Chicago (60608) – 30,070 households, Chicago (60619) – 28,016 households. Counts under 3 aren't published, so each could have one or two.
How to read the numbers
- Counts cover business locations with paid employees, in 2023. Self-employed owners aren't included, so every count is a minimum.
- Counts under 3 aren't published for a ZIP and business type, so "fewer than 3 recorded" can mean one, two, or none.
- "Most crowded" ranks ZIPs with at least 2,000 households by businesses per 1,000 households. Downtowns and shopping districts rank high because they serve workers and visitors as well as residents.
- The metro is the Chicago-Naperville-Elgin, IL-IN metropolitan area. A ZIP counts toward it when most of its land is in one of the metro's counties.
- Free to quote or chart with credit to Good Mail Co and a link to this page.
Check any ZIP code
The free lookup covers every residential ZIP in the country, with nearby ZIPs and your state for comparison.
Look up a ZIP