OSM Business Lead Generator — Free B2B Leads from OpenStreetMap avatar

OSM Business Lead Generator — Free B2B Leads from OpenStreetMap

Pricing

Pay per usage

Go to Apify Store
OSM Business Lead Generator — Free B2B Leads from OpenStreetMap

OSM Business Lead Generator — Free B2B Leads from OpenStreetMap

Generate B2B business leads from OpenStreetMap open data. Search by category (dentist, restaurant, hotel) and city. Free data, no API key needed.

Pricing

Pay per usage

Rating

0.0

(0)

Developer

Niu Yuchiao

Niu Yuchiao

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

a day ago

Last modified

Share

Generate verified B2B business leads from OpenStreetMap open data — completely free, no API key required, no anti-scraping limitations. Search by business category and city, and get name, address, phone, website, coordinates, and more.

Why OpenStreetMap?

FeatureOSM (This Actor)Google Maps Scraper
CostFree dataExpensive compute
Reliability100% (open API)Varies (blocks)
LegalODbL open licenseTOS grey area
SpeedVery fastSlow (browser)
Coverage190+ countries190+ countries

OpenStreetMap has over 1 billion nodes of business data contributed by millions of volunteers worldwide. For B2B prospecting, this is often more current than Google Maps because local businesses update their own OSM listings.

Use Cases

  • Sales prospecting: Find dental clinics, law firms, restaurants, hotels in any city
  • Market research: Count competitors by category and location
  • CRM enrichment: Add addresses, phones, websites to your lead lists
  • Local SEO agencies: Audit business listing coverage in any area
  • Healthcare outreach: Find hospitals, pharmacies, clinics, doctors

Supported Business Types

Healthcare

dentist · doctor · hospital · pharmacy · clinic · optician · physiotherapist

Food & Hospitality

restaurant · cafe · bar · fast_food · hotel · hostel · guest_house

Professional Services

lawyer · accountant · insurance · bank · post_office

Retail

supermarket · convenience · bakery · hairdresser · beauty · electronics

Education & Fitness

school · university · gym · sports_centre · swimming_pool

Any valid OpenStreetMap amenity= or shop= tag is supported.

Input

{
"businessType": "dentist",
"city": "Taipei",
"country": "TW",
"maxResults": 100,
"includeCoordinates": true
}
FieldTypeRequiredDescription
businessTypeStringOSM amenity/shop tag (e.g., dentist, restaurant, hotel)
cityStringEnglish city name (e.g., Taipei, Tokyo, Berlin)
countryStringISO country code (e.g., TW, US, JP) — improves accuracy
maxResultsIntegerMax leads to return, 1–1000 (default: 100)
includeCoordinatesBooleanInclude lat/lon in output (default: true)

Output

Each record in the dataset:

{
"name": "Dr. Chen Dental Clinic",
"category": "dentist",
"address": "123 Zhongshan N. Rd., Zhongshan District",
"street": "Zhongshan N. Rd.",
"city": "Taipei",
"postcode": "10401",
"country": "TW",
"phone": "+886 2 1234 5678",
"website": "https://example.com",
"email": "contact@example.com",
"openingHours": "Mo-Fr 09:00-18:00",
"lat": 25.0639,
"lon": 121.5278,
"osmId": 1234567890,
"osmType": "node",
"sourceUrl": "https://www.openstreetmap.org/node/1234567890"
}

After the run, a summary is also saved to the Key-Value store (OUTPUT_SUMMARY) with total count and stats on how many leads have phone, website, and email.

Tips for Best Results

  1. Use English city namesTaipei not 台北市, Tokyo not 東京
  2. Large cities return more resultsLondon beats Kensington
  3. Combine with other data — Use the sourceUrl to link back to OSM for the most up-to-date info
  4. Export to CSV — In the dataset view, click "Export to CSV" for use in Excel or CRM

Data License

All data is sourced from OpenStreetMap under the Open Database License (ODbL). You are free to use this data commercially, with attribution to OpenStreetMap contributors.

Integrate with Your Stack

Export to CSV (no code)

Click "Export" → "CSV" in the Apify Console dataset view.

Via Apify API

const { ApifyClient } = require('apify-client');
const client = new ApifyClient({ token: 'YOUR_TOKEN' });
const run = await client.actor('yuchiaoniu/osm-business-lead-generator').call({
businessType: 'dentist',
city: 'Tokyo',
country: 'JP',
maxResults: 500,
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items); // Array of business leads

Python

from apify_client import ApifyClient
client = ApifyClient("YOUR_TOKEN")
run = client.actor("yuchiaoniu/osm-business-lead-generator").call(run_input={
"businessType": "restaurant",
"city": "Berlin",
"country": "DE",
"maxResults": 200,
})
items = client.dataset(run["defaultDatasetId"]).list_items().items

FAQ

Is this legal? Yes. OpenStreetMap data is licensed under ODbL, which permits commercial use with attribution. No website is being scraped; we query the official Overpass API.

Why is my city returning 0 results? Try using the English name of the city, and check that the businessType is a valid OSM tag. Smaller cities may have less coverage in OSM.

What's the maximum results I can get? The Actor supports up to 1,000 results per run. For larger datasets, run multiple queries with different cities.

Does this data include emails? Only if the business has listed their email on OpenStreetMap. Coverage varies — expect about 5–15% of records to have email addresses.

How fresh is the data? OpenStreetMap is updated continuously by contributors. Major cities are typically updated within days to weeks of real-world changes.