482 scrapers live47.7K runs1,562 usersRebuilt in the last 30 days: 482 of 482

Scrapers / Leads & Business

OpenStreetMap POI Scraper logo

OpenStreetMap POI Scraper

hipersoft/osm-poi-scraper

Extract points of interest / local businesses from OpenStreetMap by category and area: name, address, coordinates, phone, website, opening hours and more. Great for lead generation.

Total users

2

Monthly users

1

Total runs

112

Per poi scraped

$0.0008

Last rebuilt

Oct 28, 2026

Overview

Extract points of interest and local businesses from OpenStreetMap by category and area. Give it a place name and a category and get back clean, structured JSON: name, full address, coordinates, phone, website, email, and opening hours. Backed by free community map data — no account, no API key. Great for lead generation, local market research, and building location datasets.

OpenStreetMap POI Scraper input — areas, category and item limit in the Apify Console

Features

  • 🗂️ 20 ready categories — pick from restaurants, cafes, bars, hotels, supermarkets, pharmacies, banks, gyms, and more via category, or use custom.
  • 🏷️ Custom tag filters — with category: custom, target any OSM tags via customFilters like shop=bakery or tourism=museum.
  • 📍 Full location data — each POI carries latitude/longitude, a structured address, plus ready osmUrl and googleMapsUrl links.
  • ☎️ Contact details — phone, website, and email pulled from OSM contact tags where present.
  • 🕒 Rich attributes — openingHours, cuisine, brand, operator, and wheelchair accessibility, plus the raw tags object.
  • 🌍 Any area, auto-geocoded — pass place names like Austin, Texas or Berlin; each is geocoded to a bounding box automatically.
  • 🔢 Volume control — cap output with maxItemsPerArea (up to 10000); results are deduplicated per area.

What you get

OpenStreetMap POI Scraper output example — places with address, coordinates and contact details as structured JSON

Each row is one point of interest:

{
  "name": "Franklin Barbecue",
  "category": "restaurant",
  "area": "Austin, Texas",
  "street": "East 11th Street",
  "houseNumber": "900",
  "city": "Austin",
  "postcode": "78702",
  "country": "United States",
  "phone": "+1-512-653-1187",
  "website": "https://franklinbbq.com",
  "email": null,
  "openingHours": "Tu-Su 11:00-15:00",
  "cuisine": "barbecue",
  "brand": null,
  "operator": null,
  "wheelchair": "yes",
  "latitude": 30.2701,
  "longitude": -97.7314,
  "osmType": "node",
  "osmId": 123456789,
  "osmUrl": "https://www.openstreetmap.org/node/123456789",
  "googleMapsUrl": "https://www.google.com/maps/search/?api=1&query=30.2701,-97.7314",
  "tags": { "amenity": "restaurant", "name": "Franklin Barbecue" }
}

Output schema

Field Type Description
name string Name of the place or business.
category string Category the POI was matched under (e.g. restaurant).
area string Area query the POI was found in.
street string Street name of the address.
houseNumber string Building or house number.
city string City or town.
postcode string Postal code.
country string Country name.
phone string Contact phone number.
website string Website URL.
email string Contact email address.
openingHours string Opening hours in OpenStreetMap syntax.
cuisine string Cuisine type, for food and drink places.
brand string Brand name if the place is part of a chain.
operator string Organisation that operates the place.
wheelchair string Wheelchair accessibility status.
latitude number Latitude coordinate.
longitude number Longitude coordinate.
osmType string OpenStreetMap element type (node, way or relation).
osmId integer OpenStreetMap element identifier.
osmUrl string (URL) Link to the element on OpenStreetMap.
googleMapsUrl string (URL) Google Maps link for the coordinates.
tags object Raw OpenStreetMap tag key/value pairs for the element.

Input

{
  "areas": ["Austin, Texas", "Berlin, Germany"],
  "category": "restaurant",
  "maxItemsPerArea": 500
}
Field Description
areas Place names to search within; each is geocoded to a bounding box (required).
category Type of place, e.g. restaurant, cafe, hotel, pharmacy, or custom. Default restaurant.
customFilters For category: custom, OSM key=value tags like shop=bakery; any match is included.
maxItemsPerArea Maximum POIs to collect per area, 1–10000. Default 500.

Use cases

  • Build local-business lead lists with names, phones, and websites.
  • Research market density and competitors in a target area.
  • Enrich CRM or mapping data with coordinates and opening hours.
  • Assemble category-specific place datasets across multiple cities.

Need more local & maps data?

FAQ

How many places can I scrape? Up to 10,000 POIs per area — set maxItemsPerArea to control the volume; results are deduplicated per area.

Do I need any setup, account or API key? No. Just enter the areas and category and run — no login or key required.

Which categories are supported? 20 ready categories (restaurants, cafes, bars, hotels, supermarkets, pharmacies, banks, gyms and more), plus custom with your own customFilters tags.

What export formats are supported? JSON, CSV, Excel and XML, plus the Apify API for programmatic access.

How does billing work? Pay-per-event: a small amount per run and per item — you only pay for what you get.

Can I connect it to other tools? The OpenStreetMap POI Scraper can be connected with almost any cloud service or web app thanks to integrations on the Apify platform. It works with Make, Zapier, Slack, Airbyte, GitHub, Google Drive and many more, plus the Apify API, JavaScript/Python clients and MCP. Or use webhooks to trigger an action whenever a run finishes.

Notes

Returns only openly available, community-contributed OpenStreetMap data. This is an independent tool and is not affiliated with or endorsed by the OpenStreetMap Foundation; OpenStreetMap is a trademark of its respective owner. Please respect OSM data usage and attribution guidelines.

Input

FieldTypeDescription
areas
Areas
arrayPlace names to search within, e.g. "Austin, Texas" or "Berlin". Each is geocoded to a bounding box.
category
Category
string · restaurant, cafe, bar, fast_food, hotel, supermarket…Type of place to find.
Default: "restaurant"
customFilters
Custom tag filters
arrayFor category "custom": OSM key=value tags, e.g. "shop=bakery", "tourism=museum". Any match is included.
maxItemsPerArea
Max items per area
integerMaximum POIs to collect per area.
Default: 500

API

curl -X POST "https://api.apify.com/v2/acts/hipersoft~osm-poi-scraper/run-sync-get-dataset-items?token=$APIFY_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
  "areas": [
    "Austin, Texas"
  ],
  "customFilters": [
    "shop=bakery",
    "amenity=cinema"
  ]
}'

Pricing

EventPricePaid plans from
POI scraped
One place with name, address, phone, coordinates and tags
$0.0008$0.0004
Geocode request
One area geocoding request
$0.001$0.001
Overpass request
One OpenStreetMap Overpass query
$0.001$0.001

You pay only for what the run returns. Set a maximum cost per run and it stops cleanly at that limit.

Related scrapers

North Data Scraper

Look up European companies on North Data: legal name, former names, register number, address, founding date, LEI, business purpose, managing directors and officers, and recent register publications. Germany, UK, France, Austria and 20+ countries. Bulk lookups.

2,467 runs · 5 users · $0.004 / company

Website Content Crawler

Extract clean, readable content from any list of websites: page title, meta description, headings, main body text, word count and link/image counts. Optional same-domain crawl. Bulk-ready. Great for LLM/RAG ingestion, content audits and research.

206 runs · 20 users · $0.0024 / page scraped

SpyFu Domain Scraper

Bulk SEO and PPC reports for any domain from SpyFu: organic keywords, monthly SEO clicks and value, Google Ads budget, paid keywords, top keywords, competitors, top countries and monthly history. Competitor research for agencies. Export CSV/JSON.

185 runs · 7 users · $0.008 / domain report

Trustpilot Reviews Scraper

Scrape Trustpilot reviews and company ratings by company domain or Trustpilot URL: star rating, title, text, reviewer name & country, verification, date, company reply, plus company TrustScore and total reviews.

146 runs · 4 users · $0.0006 / review scraped

ACRA Singapore Company Registry Scraper

Search and export Singapore's full ACRA corporate registry: UEN, entity name, status, incorporation date, address, SSIC industry codes, officers, former names and audit firms. Filter by name, status, entity type or industry. Public open data, no setup.

138 runs · 10 users · $0.01 / company scraped

Wayback Machine Scraper

List every Internet Archive (Wayback Machine) snapshot of a URL or whole domain: timestamp, snapshot URL, status code, MIME type and content digest. Filter by date, status and dedupe. For SEO, OSINT and historical research. No setup.

135 runs · 15 users · $0.002 / snapshot scraped
Need a source that isn't here?

Send the site and the fields. We build it and you get it first.

Request a build