Scrape

Finds US businesses with phone numbers and emails — straight from the map and their own websites. Free, no API key.

Run history (0)
Home services
Auto
Health & appointments
Professional
Food & hospitality
Sources
Yelp, YellowPages, Manta & Hotfrog block scrapers (403) — these are the free ones that work.

Defaults come from Setup · phone required: yes · auto email hunt: on · 8 sites at a time · only new to this browser — sign in to share

How the scraper actually works

  1. 01The city becomes a point on the map
    Pick from the list and its coordinates are already known. Type something freehand and it is geocoded by Nominatim, OpenStreetMap's free address lookup.
  2. 02The radius becomes a box, not a circle
    A box query uses the map's spatial index and answers in seconds; a radius query scans every business in the world with that tag first and times out. So 15 miles means a box 15 miles either side of the centre.
  3. 03Each niche becomes a map tag
    "plumber" is craft=plumber, "dentist" is amenity=dentist. Type something that is not in the list and it guesses across the seven tag families. You can also type a raw tag like craft=chimney_sweeper.
  4. 04Overpass answers, three mirrors deep
    Overpass is the free query engine over OpenStreetMap data. It is donated infrastructure, so if the first mirror is busy the run falls through to the second and third rather than failing.
  5. 05MerchantCircle is scraped in parallel
    A business directory that still serves readable HTML. Yelp, YellowPages, Manta and Hotfrog all answer 403 to a server — they sell their data. Where MerchantCircle blocks this server's datacenter IP, the request is retried through Jina's free reader.
  6. 06Rows are filtered and de-duplicated
    Your 'Looking for' choice decides whether a business with a website is kept. Duplicates across niches and sources collapse on phone number. A Facebook-only page still counts as having no website.
  7. 07Then the email hunt crawls their own sites
    For every row with a website, it fetches the homepage, then the contact page if the homepage was quiet. It undoes 'info [at] acme [dot] com', decodes Cloudflare's hidden addresses, and renders JavaScript-built sites through Jina when the raw HTML comes back empty. An address on their own domain beats a stray one; info@ beats a random personal address.

What a row does not prove. “No website in OSM” means the map does not record one — not that the business has none. Use the Google link on the row before anyone spends a call on it. Yield varies wildly by city, and it tracks how well-mapped a place is rather than how big it is: small cities often out-produce big metros.

Cost: nothing. No API key, no billing account, no rate limit you can hit by hand. In return the console waits 1.2 seconds between requests and identifies itself honestly to every source it asks — which is what their fair-use policies ask for, and the reason they keep answering.