BizGapMap

Home / Offices of physical, occupational & speech therapists / Pennsylvania / Chester County, PA

Chester County, PA — Physical therapy Saturation

How many physical therapy 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. 52 ZIP codes analyzed.

Includes: Physical therapy clinics · Occupational therapy offices · Speech therapy offices · Audiology offices. Counted together because official statistics use one 621340 code.

Measured density: Range spans bands — 1.20× the U.S. rate (between 1.20× and 1.69× 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. 37 ZIP cells in this county are withheld, 21 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   Chester County physical therapy — 120–169% of the U.S. rate

101 physical therapy are counted in Chester County — 1.5 per 10,000 people present (residents + daytime workers), 120% of the U.S. rate of 1.3.

On the comparable ZIP set (ZIPs with a published count in every year), the total has risen 33% between 2015 and 2023 (64 → 85). 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 19301 (Paoli), 19390 (West Grove), 19520 (Elverson) — well above the national rate. On measured density alone, the lowest-density residential ZIPs with a published count are 19320 (Coatesville), 19460 (Phoenixville), 19355 (Malvern).

Census County Business Patterns (2023) puts the county-wide count at 117 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: Chester County sits at 120% of the U.S. rate for physical therapy. 21 ZIPs with population have no published count (each 0–2 businesses), so the true per-capita rate is between 120% and 169% of the U.S. rate. Why. The highest measured density is in 19301 and 19390; the lowest measured density is in 19320 and 19460.

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

Physical therapy
101–175
published count; upper bound counts each withheld ZIP cell as 2 (37 cells) (2023)
Per 10,000 present
1.5
residents + daytime workers
U.S. average
1.3
per 10,000 present
County index
1.20×
vs. U.S.
Latest year (CBP)
117
2023 — $51M annual payroll
Residents
535,535
36 ZIPs with data
Workers
241,727
jobs located in county

Is the area growing?

Population
560,745
Census PEP, July 1 2024
Change since 2020
+4.8%
+25,885 people
Net migration 2024
+4,089
international +4,285, domestic −196
Jobs located here
264,432
LODES 2022, +1.7% since 2019

Chester County had an estimated 560,745 residents on July 1, 2024 — 4.8% more than in 2020 (+25,885). In the latest year it gained 5,435 people: births minus deaths +1,362, international migration +4,285, domestic migration −196. Components are published separately and may not sum exactly.

264,432 jobs were located in the county in 2022 (+1.7% since 2019), and 260,947 employed residents lived there (+0.9% 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
19383 West Chester
+109.4%
19311 Avondale
+29.9%
19341 Exton
+23.5%
ZIP losing residents
2015–19 → 2020–24
Change
19390 West Grove
−14.6%

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
429
no paid employees (2024)
Receipts
$18.2M
published gross receipts
Receipts per business
$43K
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 physical therapy 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 33% since 2015

Number of physical therapy in Chester 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.

64
2015
75
2018
79
2020
81
2021
85
2022
85
2023

Highest measured density

ZIP
vs. U.S. average
Index
19301 Paoli
495%
19390 West Grove
385%
19520 Elverson
316%
19348 Kennett Square
285%
19333 Devon
257%
19311 Avondale
237%
19341 Exton
236%
19335 Downingtown
143%
19312 Berwyn
133%
19380 West Chester
128%
19382 West Chester
122%
19355 Malvern
121%
19460 Phoenixville
76%
19320 Coatesville
39%

Lowest measured density

ZIP
vs. U.S. average
Index
19320 Coatesville
39%
19460 Phoenixville
76%
19355 Malvern
121%
19382 West Chester
122%
19380 West Chester
128%
19312 Berwyn
133%
19335 Downingtown
143%
19341 Exton
236%
19311 Avondale
237%
19333 Devon
257%
19348 Kennett Square
285%
19520 Elverson
316%
19390 West Grove
385%
19301 Paoli
495%
Low measured density is not evidence of opportunity. A ZIP with few physical therapy 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 ResidentsWorkersPhysical therapyIndex
19374Toughkenamon Employment hub 4341,211 0–2 —

Scroll the table sideways to see all columns.

All ZIP codes

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

ZIPNeighborhood ResidentsWorkersPhysical therapy Per 10kIndexStatus
19372Thorndale 1,8541,661 3 11.2 869% Very high density
19301Paoli 7,8146,352 7 6.4 495% Very high density
19390West Grove 12,5463,192 7 4.9 385% Very high density
19520Elverson 6,2772,190 3 4.1 316% Very high density
19348Kennett Square 23,62112,734 11 3.7 285% Very high density
19333Devon 7,4713,246 3 3.3 257% Very high density
19311Avondale 11,6922,891 4 3.0 237% High density
19341Exton 21,70929,076 11 3.0 236% High density
19335Downingtown 53,62912,099 11 1.8 143% Above average
19312Berwyn 12,28310,473 3 1.7 133% Above average
19380West Chester 49,85633,781 11 1.6 128% Above average
19382West Chester 54,12719,365 10 1.6 122% Above average
19355Malvern 29,42556,600 9 1.6 121% Above average
19460Phoenixville 45,42311,706 5 1.0 76% Below average
19320Coatesville 55,9419,302 3 0.5 39% Far below average
19310Atglen 2,950927 0–2 — — Not published
19316Brandamore 38935 0–2 — — Not published
19330Cochranville 5,957523 0–2 — — Not published
19343Glenmoore 8,4501,750 0–2 — — Not published
19344Honey Brook 12,8273,058 0–2 — — Not published
19345Immaculata 768905 0–2 — — Not published
19347Kemblesville —12 0–2 — — Not published
19350Landenberg 10,945928 0–2 — — Not published
19351Lewisville —40 0–2 — — Not published
19352Lincoln University 11,484482 0–2 — — Not published
19353Lionville —89 0–2 — — Not published
19357Mendenhall —83 0–2 — — Not published
19358Modena 19169 0–2 — — Not published
19360New London —57 0–2 — — Not published
19362Nottingham 6,0921,240 0–2 — — Not published
19363Oxford 18,2314,070 0–2 — — Not published
19365Parkesburg 8,0062,347 0–2 — — Not published
19367Pomeroy 2111 0–2 — — Not published
19369Sadsburyville 12293 0–2 — — Not published
19374Toughkenamon 4341,211 0–2 — — Not published
19375Unionville 23445 0–2 — — Not published
19376Wagontown —44 0–2 — — Not published
19381West Chester —249 0–2 — — Not published
19383West Chester 6,537439 0–2 — — Not published
19395Westtown —39 0–2 — — Not published
19399Southeastern —15 0–2 — — Not published
19421Birchrunville —35 0–2 — — Not published
19425Chester Springs 17,2193,109 0–2 — — Not published
19432Devault —52 0–2 — — Not published
19442Kimberton 0648 0–2 — — Not published
19457Parker Ford 148225 0–2 — — Not published
19465Pottstown 18,5643,705 0–2 — — Not published
19470Saint Peters —32 0–2 — — Not published
19475Spring City 12,2981,887 0–2 — — Not published
19480Uwchland —227 0–2 — — Not published
19481Valley Forge —186 0–2 — — Not published
19482Valley Forge —474 0–2 — — Not published

Scroll the table sideways to see all columns.

Find an actual space in Malvern

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 Malvern retail space →
Crexi
Free listings + market data
Browse Malvern retail space →
CityFeet
Retail space for lease
Browse Malvern 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 Chester County and physical therapy

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 621340 — offices of physical, occupational and speech therapists, and audiologists. 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: 117 establishments and $51M 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.29 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.