BizGapMap

Home / Full-service restaurants / Missouri / St. Louis County, MO

St. Louis County, MO — Restaurants Saturation

How many restaurants 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. 51 ZIP codes analyzed.

Includes: Sit-down restaurants with table service. Counted together because official statistics use one 722511 code.

Measured density: Below average — 0.85× the U.S. rate (between 0.85× and 0.87× 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. 15 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

Below the U.S. rate   St. Louis County restaurants — 85–87% of the U.S. rate

727 restaurants are counted in St. Louis County — 5.4 per 10,000 people present (residents + daytime workers), 85% of the U.S. rate of 6.4.

On the comparable ZIP set (ZIPs with a published count in every year), the total has fallen 4% between 2015 and 2023 (758 → 727). 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 63143 (Saint Louis), 63011 (Ballwin), 63127 (Saint Louis) — well above the national rate. On measured density alone, the lowest-density residential ZIPs with a published count are 63021 (Ballwin), 63136 (Saint Louis), 63146 (Saint Louis).

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

Measured density: St. Louis County sits at 85% of the U.S. rate for restaurants. 7 ZIPs with population have no published count (each 0–2 businesses), so the true per-capita rate is between 85% and 87% of the U.S. rate. Why. The highest measured density is in 63143 and 63011; the lowest measured density is in 63021 and 63136.

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

Restaurants
727–757
published count; upper bound counts each withheld ZIP cell as 2 (15 cells) (2023)
Per 10,000 present
5.4
residents + daytime workers
U.S. average
6.4
per 10,000 present
County index
0.85×
vs. U.S.
Latest quarter (QCEW)
734
2026 Q1 — county total
Residents
1,028,683
43 ZIPs with data
Workers
614,590
jobs located in county

Is the area growing?

Population
992,929
Census PEP, July 1 2024
Change since 2020
−1.0%
−10,447 people
Net migration 2024
+2,644
international +6,550, domestic −3,906
Jobs located here
639,388
LODES 2022, −1.4% since 2019

St. Louis County had an estimated 992,929 residents on July 1, 2024 — 1.0% fewer than in 2020 (−10,447). In the latest year it gained 2,054 people: births minus deaths −620, international migration +6,550, domestic migration −3,906. Components are published separately and may not sum exactly.

639,388 jobs were located in the county in 2022 (−1.4% since 2019), and 468,077 employed residents lived there (−1.5% 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
63025 Eureka
+32.3%
63122 Saint Louis
+6.3%
ZIP losing residents
2015–19 → 2020–24
Change
63135 Saint Louis
−18.1%

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
124
no paid employees (2024)
Receipts
$9.0M
published gross receipts
Receipts per business
$73K
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 restaurants 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 4% since 2015

Number of restaurants in St. Louis 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.

758
2015
766
2018
754
2020
736
2021
728
2022
727
2023

Highest measured density

ZIP
vs. U.S. average
Index
63143 Saint Louis
294%
63011 Ballwin
172%
63127 Saint Louis
168%
63105 Saint Louis
165%
63017 Chesterfield
150%
63132 Saint Louis
145%
63119 Saint Louis
140%
63131 Saint Louis
134%
63044 Bridgeton
126%
63117 Saint Louis
123%
63005 Chesterfield
122%
63122 Saint Louis
116%
63088 Valley Park
113%
63126 Saint Louis
111%
63130 Saint Louis
104%

Lowest measured density

ZIP
vs. U.S. average
Index
63021 Ballwin
21%
63136 Saint Louis
24%
63146 Saint Louis
32%
63134 Saint Louis
39%
63042 Hazelwood
41%
63031 Florissant
53%
63128 Saint Louis
58%
63026 Fenton
64%
63124 Saint Louis
64%
63135 Saint Louis
65%
63114 Saint Louis
69%
63043 Maryland Heights
71%
63033 Florissant
73%
63129 Saint Louis
74%
63123 Saint Louis
79%
Low measured density is not evidence of opportunity. A ZIP with few restaurants 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 ResidentsWorkersRestaurantsIndex
63141Saint Louis Employment hub 20,93252,455 32 106%

Scroll the table sideways to see all columns.

All ZIP codes

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

ZIPNeighborhood ResidentsWorkersRestaurants Per 10kIndexStatus
63143Saint Louis 8,9757,569 24 18.8 294% Very high density
63011Ballwin 35,92017,394 49 11.0 172% High density
63127Saint Louis 5,2689,987 11 10.7 168% High density
63105Saint Louis 18,87532,529 37 10.5 165% High density
63017Chesterfield 43,24338,461 60 9.6 150% High density
63132Saint Louis 14,28327,674 26 9.2 145% Above average
63119Saint Louis 34,18116,880 38 8.9 140% Above average
63131Saint Louis 17,93531,648 29 8.6 134% Above average
63044Bridgeton 10,32419,240 16 8.0 126% Above average
63117Saint Louis 9,2619,423 11 7.9 123% Above average
63005Chesterfield 19,77929,717 27 7.8 122% Above average
63122Saint Louis 41,63416,646 37 7.4 116% Above average
63088Valley Park 8,2262,869 7 7.2 113% Above average
63126Saint Louis 15,4525,629 13 7.1 111% Above average
63141Saint Louis 20,93252,455 32 6.8 106% Above average
63130Saint Louis 28,91032,314 30 6.7 104% Above average
63144Saint Louis 9,50515,025 11 6.5 101% Above average
63025Eureka 19,5084,920 14 6.4 100% Below average
63040Wildwood 8,5261,923 6 6.3 99% Below average
63074Saint Ann 15,7934,511 11 6.1 95% Below average
63125Saint Louis 33,29411,096 20 5.1 81% Below average
63123Saint Louis 49,07713,475 28 5.0 79% Below average
63129Saint Louis 51,55310,796 27 4.7 74% Below average
63033Florissant 43,0568,105 22 4.7 73% Below average
63043Maryland Heights 21,92426,758 16 4.5 71% Below average
63114Saint Louis 33,96914,050 18 4.4 69% Below average
63135Saint Louis 18,3811,728 8 4.2 65% Below average
63124Saint Louis 10,8397,791 6 4.1 64% Below average
63026Fenton 45,35427,259 24 4.1 64% Below average
63128Saint Louis 30,54013,976 14 3.7 58% Below average
63031Florissant 50,1966,797 18 3.4 53% Below average
63042Hazelwood 17,81318,020 7 2.6 41% Far below average
63134Saint Louis 13,05921,824 6 2.5 39% Far below average
63146Saint Louis 30,67827,092 9 2.0 32% Far below average
63136Saint Louis 40,9299,720 7 1.5 24% Far below average
63021Ballwin 55,6666,403 8 1.4 21% Far below average
63006Chesterfield —80 0–2 — — Not published
63022Ballwin —27 0–2 — — Not published
63032Florissant —26 0–2 — — Not published
63034Florissant 18,9081,619 0–2 — — Not published
63038Wildwood 7,107783 0–2 — — Not published
63045Earth City 016,570 0–2 — — Not published
63099Fenton —1,401 0–2 — — Not published
63121Saint Louis 25,0084,540 0–2 — — Not published
63133Saint Louis 6,5692,285 0–2 — — Not published
63137Saint Louis 19,6841,296 0–2 — — Not published
63138Saint Louis 18,2331,791 0–2 — — Not published
63140Saint Louis 316572 0–2 — — Not published
63145Saint Louis —3,086 0–2 — — Not published
63151Saint Louis —35 0–2 — — Not published
63167Saint Louis —3,516 0–2 — — Not published

Scroll the table sideways to see all columns.

Find an actual space in Saint Louis

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 Saint Louis retail space →
Crexi
Free listings + market data
Browse Saint Louis retail space →
CityFeet
Retail space for lease
Browse Saint Louis 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 St. Louis County and restaurants

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 722511 — full-service restaurants. 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 734 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 (6.39 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.