Costco operates 620 U.S. stores. At a 30-minute drive radius the network reaches 214M Americans — 64.0% of the U.S. population. Average household income of the reached population: $101,956. Median age: 37.9. Working-age population reached: 133M (62.1% of total reach).
Demographic mix of reached population
Age cohort breakdown of the 214M-person trade area at 30-min drive. Numbers are absolute population counts from /api/trade-area.
- 18-24: 19.6M (9.2% of reached pop)
- 25-34: 31.2M (14.6% of reached pop)
- 35-44: 29.2M (13.6% of reached pop)
- 45-54: 26.7M (12.5% of reached pop)
- 55-64: 26.4M (12.3% of reached pop)
- 65+: 33.3M (15.5% of reached pop)
Trade-area overlap with BJ's Wholesale Club
Costco: 620 U.S. stores reaching 214M Americans. BJ's Wholesale Club: 283 U.S. stores reaching 102M. Pairwise overlap computed at 30-min drive isochrone, H3 resolution 7.
Union of reachable population: 233M (69.5% of U.S.).
Both-chains reach: 83.9M — 36.0% of union.
Costco-only reach: 130M — population within 30 min of Costco but NOT BJ's Wholesale Club.
BJ's Wholesale Club-only reach: 18.5M — population within 30 min of BJ's Wholesale Club but NOT Costco.
Higher overlap percentage = the two networks compete more directly for the same trade-area population. 36.0% overlap means roughly 36.0% of the jointly-reachable U.S. population can shop either chain within 30 min, which sets the upper bound on customer-share competition between the two.
Methodology
Drive-time matrix. 1.083B routed pairs (origin H3 cell × destination H3 cell × 5/10/15/30/60-min drive). Built on OpenStreetMap U.S. extract via OSRM contraction-hierarchy.
Demographics. U.S. Census ACS 2023 5-year, block-group level, projected onto 12.86M H3 res-8 cells via overlap-weighted area apportionment.
Overlap. overlap_pct = both_pop / union_pop. Computed cell-by-cell with set operations; no smoothing.
What this post does NOT include. Named-MSA whitespace candidates (the platform's whitespace endpoint returns H3 cells with lat/lng, not MSA names). Store-to-store cannibalization inside a single chain (the platform only computes overlap between two distinct chains, not between sibling stores of one brand). Forward-looking unit-growth projections (these come from management guidance, not the platform).