Distance-band methodology — primary and secondary demand zones
fix(site-selection): register rewrite — route GIS/engineering spec (EPSG/H3/DBSCAN/haversine/IoU formulas) to gis.woodfinegroup.com by consequence-plus-pointer, remove correction/provenance internal-note leaks, rename od-catchment-methodology to distance-band methodology to fix its self-contradicting title (Fable/Opus cross-model synthesis, operator-directed)
@@ -1,6 +1,6 @@ --- schema: foundry-doc-v1 title: "O-D catchment methodology — primary and secondary trade areas" title: "Distance-band methodology — primary and secondary demand zones" slug: od-catchment-methodology category: site-selection index_group: scoring-and-clustering @@ -11,70 +11,49 @@ status: active audience: customer-woodfine bcsc_class: current-fact language_protocol: PROSE-TOPIC last_edited: 2026-05-25 last_edited: 2026-08-26 editor: pointsav-engineering short_description: "Trade areas for each co-location cluster are defined using crow-flies H3 hexagonal distance rings: a 35 km primary zone and a 35–150 km secondary zone, both computed from WorldPop 2026 population data." short_description: "Each co-location cluster is assigned two straight-line distance bands — a primary zone within 35 km and a secondary zone from 35 km to 150 km — that determine the population and spend attributed to it." paired_with: site-selection/od-catchment-methodology.es.md --- The Woodfine [[co-location-methodology|co-location]] platform defines trade areas for each cluster using an Origin-Destination (O-D) model based on crow-flies distance rings over a hexagonal spatial grid. Each cluster is assigned two catchment zones that determine which population and spend data is attributed to it. The trade-area inputs to the [[co-location-ranking-system|deterministic ranking system]] and the [[catchment-ranking-methodology-v3|V3 catchment ranking methodology]] flow from this model; population and spend layers are documented in [[trade-area-data-sources|trade-area data sources]]. The Woodfine [[co-location-methodology|co-location]] platform assigns each cluster two demand zones that determine which population and spend data is attributed to it: a primary zone within 35 km of the cluster, and a secondary zone from 35 km to 150 km. Both are straight-line distance bands, and they are labelled as such: a distance band approximates where customers come from; it is not a measured catchment, and the platform does not label it one. The labelling rule, and the planned move to observed origins and drive-time boundaries, are set out in [[trade-area-methodology]]. The zone inputs to the [[co-location-ranking-system|deterministic ranking system]] and the [[catchment-ranking-methodology-v3|V3 catchment ranking methodology]] flow from this model; population and spend layers are documented in [[trade-area-data-sources|trade-area data sources]]. **Correction (2026-08-02):** this article's own title and body use "catchment" throughout for what is, by its own description, a straight-line crow-flies distance ring. Its sibling [[trade-area-methodology]] (a later article on the identical geometry — same 35 km/150 km rings, same H3 resolution-7 cells, numbers verified matching exactly) explicitly bans this: "any geometry derived from a straight-line formula reads as 'distance band (straight-line)' on the map face and in the detail panel — never 'catchment' and never 'trade area.'" The underlying geometry here is not in dispute; the terminology directly violates a sibling article's explicit, disclosure-relevant labeling rule. **Flagged, not resolved.** ## Zone definitions ## Spatial Framework **Primary zone (0–35 km):** the area within 35 km straight-line distance of the cluster centroid. This zone represents the immediate trade area where the majority of regular shopping trips originate. Trade areas are computed using the H3 global hexagonal grid at resolution 7. Each H3 resolution-7 cell covers approximately 5.16 km² with a centre-to-centre spacing of approximately 2.11 km. The grid is continuous and consistent worldwide, enabling direct comparison between clusters across all countries in the current dataset. **Secondary zone (35–150 km):** the area between 35 km and 150 km straight-line distance of the cluster centroid. This zone captures the wider regional draw, including occasional shoppers and cross-regional trips. ## Catchment Zone Definitions The 35 km primary boundary is a provisional parameter based on established retail geography conventions. It is subject to refinement once empirical origin-destination data becomes available. The 150 km outer boundary aligns with the platform's data collection radius, ensuring that every location contributing to a cluster's zones has been ingested and verified. **Primary catchment:** All H3 resolution-7 cells whose centre point falls within 35 km (crow-flies) of the cluster centroid. This zone represents the immediate trade area where the majority of regular shopping trips originate. Zone membership is resolved on the platform's worldwide spatial grid, so zone figures compare directly between clusters in any country. The full grid specification and membership rule are planned for publication at gis.woodfinegroup.com. **Secondary catchment:** All H3 resolution-7 cells whose centre point falls between 35 km and 150 km (crow-flies) of the cluster centroid. This zone captures the wider regional draw, including occasional shoppers and cross-regional trips. ## Distance method The 35 km primary boundary is a provisional parameter based on established retail geography conventions. It is subject to refinement once empirical origin-destination data becomes available. All distances are straight-line ground distances; no drive-time routing is used at this stage. A 35 km band therefore means the same thing in every market — urban or rural, North American or European — which is what makes cross-cluster comparison possible before observed origin data arrives. Reachability along the road network is a planned improvement, described in [[trade-area-methodology]]. The distance computation itself is planned for publication at gis.woodfinegroup.com. The 150 km outer boundary aligns with the platform's data collection radius, ensuring that every cell contributing to a cluster's catchment has been ingested and verified. ## HOME and AWAY perspectives ## Distance Method The platform distinguishes two perspectives on zone population. All distances are calculated as the crow-flies (great-circle) distance using the haversine formula. No drive-time routing is used. This approach is: - Reproducible without map routing infrastructure - Consistent across urban and rural geographies - Computationally efficient over millions of H3 cells - Suitable as a baseline before empirical O-D data is available H3 ring traversal identifies candidate cells efficiently, with haversine as the definitive distance measure for final inclusion. ## HOME and AWAY Perspectives The platform distinguishes two perspectives on catchment population. **HOME:** Population counts derived from residential data (WorldPop 2026). Represents where people live within each catchment zone. This is the default view and is fully implemented. **HOME:** Population counts derived from residential data (WorldPop 2026). Represents where people live within each zone. This is the default view and is fully implemented. **AWAY:** Population counts representing daytime or workplace population. Workplace distribution differs from residential distribution — concentrated in commercial districts and employment centres rather than dispersed across residential areas. The AWAY perspective is planned; the data source is pending. ## One Cell, Multiple Clusters ## One place, multiple clusters A single H3 cell may fall within the catchment of multiple co-location clusters. This is intentional: trade areas are not exclusive territories. A household within 35 km of two competing clusters contributes to both clusters' primary catchment populations. This reflects the competitive retail landscape and is foundational to the cross-cluster comparison methodology; cluster boundary handling at the same parking lot is documented in [[cluster-deduplication-threshold|cluster deduplication threshold]]. A single location may fall within the zones of multiple co-location clusters. This is intentional: trade areas are not exclusive territories. A household within 35 km of two competing clusters contributes to both clusters' primary-zone populations. This reflects the competitive retail landscape and is foundational to the cross-cluster comparison methodology; cluster boundary handling at the same parking lot is documented in [[cluster-deduplication-threshold|cluster deduplication threshold]]. ## Application Catchment zone membership is the basis for: Zone membership is the basis for: - Population aggregation (census data by zone) - Population aggregation (census-derived population by zone) - Spend aggregation (grocery, hardware, wholesale spend by zone) - Cross-cluster competitive ranking (see: Catchment Ranking Methodology V3) - Cross-cluster competitive ranking (see [[catchment-ranking-methodology-v3]]) The catchment polygons displayed on the map are generated from the same 35 km / 150 km crow-flies radii, visualised in two distinct colours to distinguish primary from secondary zones. The zone polygons displayed on the map are generated from the same 35 km / 150 km straight-line radii, visualised in two distinct colours to distinguish primary from secondary zones. ## See also @@ -86,9 +65,8 @@ The catchment polygons displayed on the map are generated from the same 35 km / - [Catchment area](https://en.wikipedia.org/wiki/Catchment_area_(human_geography)) — Wikipedia, accessed 2026-06-14 - [Trade area](https://en.wikipedia.org/wiki/Trade_area) — Wikipedia, accessed 2026-06-14 - [H3: Uber's Hexagonal Hierarchical Spatial Index](https://h3geo.org/) — H3 Geo, accessed 2026-06-14 - [WorldPop Global High Resolution Population Denominators Project](https://www.worldpop.org/) — WorldPop, University of Southampton, accessed 2026-06-14 *Wikipedia content reproduced under [CC BY-SA 4.0](https://creativecommons.org/licenses/by-sa/4.0/).* *Cluster centroids from which catchment distances are measured are derived from OpenStreetMap POI records. OpenStreetMap data © OpenStreetMap contributors, licensed under ODbL.* *Cluster centroids from which zone distances are measured are derived from OpenStreetMap POI records. OpenStreetMap data © OpenStreetMap contributors, licensed under ODbL.*