Apify Local Business Leads avatar

Apify Local Business Leads

Pricing

from $2.00 / 1,000 lead scrapeds

Go to Apify Store
Apify Local Business Leads

Apify Local Business Leads

Pricing

from $2.00 / 1,000 lead scrapeds

Rating

0.0

(0)

Developer

Abdelkader BENAISSI

Abdelkader BENAISSI

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

18 days ago

Last modified

Categories

Security

Limited permissions

Share

Local Business Leads

Find local businesses for any search query + location — name, category, address, coordinates, phone, website and opening hours — using free OpenStreetMap data over plain HTTP. No headless browser, no API key, no per-request fees.

Feed it a query like coffee shop and a location like Algiers, Algeria, and get back one dataset row per business lead, ready to drop into a CRM, an outreach list, or an AI agent's research step.

How it works

  1. Geocode — your location text is resolved to a bounding box via OpenStreetMap Nominatim (respecting its usage policy: max 1 request/second, proper User-Agent).
  2. POI search — the Overpass API is queried for points of interest inside that bounding box. Common query words map to OSM tags (coffee → amenity=cafe, hotel → tourism=hotel, pharmacy → amenity=pharmacy, …); anything else falls back to a case-insensitive search over business names and tags.
  3. Normalize — each result becomes a clean lead: name, amenity=cafe-style category, composed street address, city, country, latitude/longitude, phone, website, opening hours, plus the OSM element type/id for traceability.

Because it's pure HTTP against free APIs, a search costs essentially nothing to run.

Input

FieldDescription
queryWhat kind of business to find, e.g. coffee shop, restaurant, hotel, pharmacy, gym (required)
locationWhere to search, e.g. Algiers, Algeria, Austin, Texas (required)
maxResultsMax leads to return (default 20, up to 200)

Example input:

{
"query": "coffee shop",
"location": "Algiers, Algeria",
"maxResults": 20
}

Output

One dataset row per business lead:

FieldDescription
nameBusiness name (when tagged in OSM)
categoryCategory as OSM tag, e.g. amenity=cafe
address, city, countryAddress composed from OSM addr:* tags
latitude, longitudeCoordinates
phone, website, openingHoursContact details and hours (when tagged)
osmType, osmIdOpenStreetMap element type and id

Pricing

EventPrice
Lead scraped$0.002 per business lead successfully scraped

You are only charged for leads that are actually delivered — failed searches cost nothing. (Apify platform usage costs are paid by you as usual.)

Data note

All business data comes from OpenStreetMap, the free community map of the world. Data © OpenStreetMap contributors, available under the Open Database License (ODbL) — see openstreetmap.org/copyright. Coverage and detail vary by area: dense city centers tend to have rich listings, rural areas sparser ones. Fields like phone, website and opening hours are only present when OSM contributors tagged them.

Quality rules (measured in an October 2026 audit of real runs):

  • Only named businesses are returned. About a third of raw OSM POIs have no name tag; those rows are dropped, never delivered and never charged.
  • City falls back to the location you searched when a business's own tags do not carry one, and addresses are completed by reverse geocoding when the tags have none.
  • Even so, expect sparse fields outside well-mapped regions: in the same audit, phone numbers were present for about 1 in 9 businesses and websites for about 1 in 25, with much denser coverage in France/Western Europe than in Algeria. If a field matters to you, treat this Actor as a discovery tool, not a verified directory.
  • Address accuracy spot check (October 2026): 20 delivered addresses were checked against independent reverse geocoding of their own coordinates. 16 of 20 matched exactly. The other 4 were coarse (locality only) or sat in a neighbouring commune of the same metro area — none pointed to a wrong street. Each row states where its address came from (addressSource: osm_tag, reverse_geocoded, or none) and whether its city is the searched-location fallback (cityIsFallback).