Open Catchment Accessibility Analyzer
Pricing
from $0.01 / 1,000 results
Open Catchment Accessibility Analyzer
Analyze service coverage and accessibility around any location using OpenStreetMap. Generate distance-based catchment metrics and export results as Dataset, CSV, XLSX, and summary JSON for planning and site selection.
Pricing
from $0.01 / 1,000 results
Rating
5.0
(1)
Developer

Artashes Arakelyan
Actor stats
0
Bookmarked
3
Total users
1
Monthly active users
8 days ago
Last modified
Categories
Share
Open Catchment & Accessibility Analyzer
Perform location-based accessibility and catchment analysis using OpenStreetMap data. The Actor computes radius-based service coverage, distance and travel metrics, and produces structured outputs suitable for urban planning, retail analysis, infrastructure assessment, and GIS-driven decision making.
Analyze service coverage and accessibility around any location using OpenStreetMap (OSM) data.
This Actor generates distance-based catchment metrics (e.g. 300 m, 500 m, 1 km) around one or more locations and exports results in multiple formats for planning, site selection, and accessibility analysis.
🚀 What this Actor does
For each selected location (“anchor”), the Actor:
Creates distance-based catchments (buffers in meters)
Retrieves nearby services (POIs) from OpenStreetMap
Counts and evaluates service coverage per radius
Produces clean, structured outputs ready for analysis or reporting
📤 Outputs
The Actor can export results as:
📊 Apify Dataset (interactive table)
📁 CSV
📘 Excel (XLSX)
🧾 Summary JSON
🧠 Typical use cases
Business & retail site selection
Service gap analysis (where services are missing)
Urban accessibility studies
Transport & walkability screening
Preliminary spatial analysis (without GIS software)
⚙️ Key features
📍 Analyze accessibility around any coordinate or address
📏 Distance-based catchments (buffers in meters)
🏪 Multiple service categories (businesses, retail, food, transport, etc.)
🗺️ Powered by OpenStreetMap (Overpass API)
📤 Clean exports: Dataset, CSV, XLSX, summary JSON
⚙️ Preset-based workflows for common planning tasks
▶️ How it works
You provide one or more anchors (latitude / longitude)
You define catchment radii (e.g. 300 m, 500 m, 1000 m)
You select service categories
The Actor:
Fetches POIs from OpenStreetMap
Counts services within each radius
Generates structured outputs
🧪 Example input
Austin, TX – ZIP 78753
⚠️ Some parameters expect JSON arrays encoded as strings, as required by the Apify input form.
{ "presetId": "business_placement", "studyName": "Austin TX 78753 – Catchment Demo", "anchors": "[{"id":"austin_78753","name":"Austin TX 78753","lat":30.38353,"lon":-97.67335,"type":"zip_center"}]", "radiiMeters": "[300,500,1000,3000]", "serviceCategories": "["businesses","pharmacy","post_office","public_transport_stop"]", "outputFormats": "["dataset","csv","xlsx","summaryJson"]", "outputMode": "summary", "includeGeometries": true, "servicesSource": "overpass", "maxResultsPerCategory": 2000 }
⚙️ Input parameters (overview) anchors (required, stringified JSON array)
Locations to analyze.
[ { "id": "site_1", "name": "My location", "lat": 40.18, "lon": 44.51 } ]
radiiMeters (stringified JSON array)
Catchment distances in meters.
[300, 500, 1000]
serviceCategories
OSM-based service groups, for example:
businesses
business_retail
business_food
business_services
pharmacy
post_office
public_transport_stop
outputFormats
Any combination of:
dataset
csv
xlsx
summaryJson
📊 Dataset output (example)
Each dataset row represents:
Anchor × Radius × Service Category
{ "study_name": "Austin TX 78753 – Catchment Demo", "anchor_id": "austin_78753", "anchor_name": "Austin TX 78753", "radius_m": 500, "service_category": "pharmacy", "services_count": 4, "coverage_adequate": true }
📁 Key-Value Store files File Description catchment_metrics.csv Tabular catchment metrics catchment_metrics.xlsx Excel version summary.json High-level summary INPUT Stored input (reproducibility) 🧾 Summary JSON (example) { "studyName": "Austin TX 78753 – Catchment Demo", "anchorsAnalyzed": 1, "radiiMeters": [300, 500, 1000, 3000], "serviceCategories": ["businesses", "pharmacy", "post_office", "public_transport_stop"], "keyFindings": { "pharmacy": { "500": "adequate", "300": "limited" }, "public_transport_stop": { "300": "adequate" } } }
🌍 Data source
OpenStreetMap (OSM) via Overpass API
Data quality depends on OSM community coverage in each region
⚠️ Notes & limitations
Distance-based (Euclidean) analysis
Network-based travel time is not included yet
Population metrics are placeholders (future extension)
🧩 Roadmap ideas
Walk / drive travel-time catchments
Population-weighted accessibility
User-provided POIs (GeoJSON upload)
Advanced business-specific presets
📬 Support & feedback
For questions, ideas, or feature requests, please contact the author via Apify.
📜 License & compliance
Uses open data from OpenStreetMap
Does not scrape restricted websites
Fully compliant with Apify Store rules
✅ Store-ready
This Actor is ready for:
Apify Store publication
Pay-per-event monetization
Reuse as a template for future spatial analysis tools
