Healthcare Facilities Scraper – OpenStreetMap (OSM)
Pricing
from $3.00 / 1,000 results
Healthcare Facilities Scraper – OpenStreetMap (OSM)
Extract healthcare facilities from OpenStreetMap by area, radius, or name: pharmacies, doctors, dentists, clinics, hospitals & nursing homes. Get speciality, dispensing, contact and address. No API key; open (ODbL) data.
Pricing
from $3.00 / 1,000 results
Rating
0.0
(0)
Developer
Daniel Brenner
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
a day ago
Last modified
Categories
Share
Healthcare Facilities Scraper – Pharmacies, Clinics, Doctors & Dentists (OpenStreetMap)
Extract healthcare facilities from OpenStreetMap by area, radius, or name — no API key, no medical-directory subscription, no anti-bot battles. Open, legal (ODbL) data you can redistribute. Public facility listings only — no patient data.
Give it an area like "Manchester, United Kingdom" and get back tidy rows for every pharmacy, doctor's surgery, dentist, clinic, hospital and nursing home: name, facility type, speciality, dispensing, emergency flag, operator, full address, coordinates, contact, and the raw OpenStreetMap tags. You can also search around a point (every clinic within X km) or filter by name (e.g. every "Boots" pharmacy).
Why use this scraper?
- Healthcare-specific fields. Beyond a generic POI dump —
facility_type, normalizedhealthcare,speciality,dispensing(pharmacies) andemergencyare parsed out of the OpenStreetMap tags. - Legal & open. OpenStreetMap data is ODbL-licensed — redistributable with attribution. Facility listings, not patient/PII data. No login.
- No API key. No medical-data provider account, no quota.
- Search by area, radius, or name. A whole city/region, everything within X metres of a point, or every facility of one brand.
- Filter by type. Pharmacies only, or clinics + doctors, etc.
- No duplicates. When OpenStreetMap maps one facility twice (a node and a building outline), you get a single, richer row.
- Honest data. Every value comes straight from OpenStreetMap; anything not mapped is left empty (
null) — never guessed. - Global coverage & reliable. Anywhere OSM has data; retries across multiple Overpass mirrors.
Great for
- Medical / pharmacy / clinic directories and finder apps
- Healthcare market research, coverage and access analysis
- B2B lead lists for healthcare suppliers and services
- Care-access mapping, public-health datasets, AI/RAG pipelines
Input
| Field | Type | Description |
|---|---|---|
area | string | Place to search within, e.g. "Manchester, United Kingdom". Geocoded to a bounding box. |
aroundLocation | string | (optional) Address/place to search around within a radius. Pair with radiusMeters. |
radiusMeters | integer | (optional) Radius in metres for around-a-location search (default 3000). |
centerPoint | object | (advanced) Explicit center { "lat":.., "lon":.. } to search around. |
boundingBox | object | (advanced) Explicit { "south":.., "west":.., "north":.., "east":.. }. Overrides area. |
facilityTypes | array | (optional) Which types to include: pharmacy, doctors, dentist, clinic, hospital, nursing_home. Default: all. |
searchTerm | string | (optional) Only return facilities whose name contains this text (case-insensitive), e.g. "Boots". |
maxResults | integer | Maximum number of facilities to return (default 1000). |
Example input
{"area": "Manchester, United Kingdom","facilityTypes": ["pharmacy", "doctors", "dentist", "clinic"],"maxResults": 500}
Every Boots pharmacy within 15 km of a point:
{"aroundLocation": "Leeds City Centre","radiusMeters": 15000,"facilityTypes": ["pharmacy"],"searchTerm": "Boots"}
Output
One row per facility:
| Field | Description |
|---|---|
name | Facility name |
facility_type | pharmacy / doctors / dentist / clinic / hospital / nursing_home |
healthcare | Normalized OSM healthcare value |
speciality | Medical speciality (from healthcare:speciality) |
dispensing | Pharmacy dispensing flag |
emergency | Emergency service flag |
operator, brand | Operator (e.g. NHS) and brand/chain |
branch | Branch / location name of a chain outlet (e.g. Times Square) |
wheelchair | Accessibility |
latitude, longitude | Coordinates |
street, housenumber, city, postcode, country | Address |
state | State / province (addr:state / addr:province); common in US/CA/AU |
phone, email, website, opening_hours | Contact + hours |
osm_id, osm_type, all_tags, source_url | OpenStreetMap identifiers, raw tags, and link |
full_address | All present address parts in one string (e.g. Main St 1, 10115 Berlin) |
map_url | Google Maps link to the coordinates |
Example output
{"name": "Boots","facility_type": "pharmacy","healthcare": "pharmacy","speciality": null,"dispensing": "yes","emergency": null,"operator": "Boots UK","brand": "Boots","city": "Manchester","postcode": "M1 1AA","country": "GB","phone": "+44 161 000 0000","opening_hours": "Mo-Sa 09:00-18:00","osm_type": "node","source_url": "https://www.openstreetmap.org/node/..."}
Any field is null when the facility hasn't tagged it in OpenStreetMap — values are never guessed.
FAQ
Do I need an API key or account? No — give it an area (plus optional radius/name filters) and run. No data-provider key, no quota, no setup.
Is the data legal to use and redistribute? Yes. It comes from OpenStreetMap under the Open Database License (ODbL): public data you can redistribute with attribution (© OpenStreetMap contributors). No logins, no Terms-of-Service violations.
How is this different from a Google Maps scraper?
It uses open OpenStreetMap data instead of scraping a site behind anti-bot defenses and Terms of Service — so it's legal, needs no API key, and returns an honest null for anything OSM hasn't mapped instead of guessing. It returns facility data only (type, speciality, contact) — no patient or personal data.
How much does it cost? Pay-per-result: $3 per 1,000 results — you only pay for the rows you actually get.
Which countries does it cover? Worldwide — anywhere OpenStreetMap has data.
How fresh is the data? It's pulled live from OpenStreetMap at run time, so it reflects the current map.
Data source & license
Data comes from OpenStreetMap via the public Nominatim (geocoding) and Overpass (querying) APIs. OpenStreetMap data is © OpenStreetMap contributors, licensed under the Open Database License (ODbL). If you publish or redistribute results, attribute "© OpenStreetMap contributors".
Notes
- Coverage and tag richness vary by region — OSM is community-mapped, so cities are richer than rural areas.
- This returns facility information (names, addresses, phones, specialities) — not individual practitioners or any patient data.
More OpenStreetMap data actors
Part of dataquarry's family of clean, ODbL OpenStreetMap extractors — same flexible area / radius / bounding-box / name search, same honest-null data (a field that isn't mapped is left empty, never guessed):
- OpenStreetMap Places Scraper — POI & local business, 115+ categories
- EV Charging Stations Scraper — socket types, power (kW), networks
- Hotels & Lodging Scraper — stars, rooms, brands
- Healthcare Facilities Scraper — pharmacies, doctors, dentists, clinics
- Tourist Attractions & Museums Scraper — Wikidata & Wikipedia links
- Fuel Station Scraper — fuel types, brands, payment methods
- Supermarket & Grocery Scraper — brands, organic, payment methods