Google Maps Scraper — Business Emails, Phones & Leads avatar

Google Maps Scraper — Business Emails, Phones & Leads

Pricing

$6.90 / 1,000 lead records

Go to Apify Store
Google Maps Scraper — Business Emails, Phones & Leads

Google Maps Scraper — Business Emails, Phones & Leads

Turn any Google Maps search into B2B leads: name, address, phone, website, GPS, hours + website-harvested emails & socials, each email MX-verified. Built-in contact enrichment closes the email gap. Apify residential proxy — no external key.

Pricing

$6.90 / 1,000 lead records

Rating

0.0

(0)

Developer

Vitalii Bondarev

Vitalii Bondarev

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

21 hours ago

Last modified

Share

Google Maps Leads — Verified Email, Phone & GPS Contacts

Turn any Google Maps search into a ready-to-use B2B lead list. Every business comes back as a full contact record — name, address, phone, website, GPS, hours, rating — plus a public email harvested from the business website and MX-verified, so the list you export is the list you can actually email. One flat price per lead. No Google API key, no external proxy key — it runs on Apify's residential proxy.

This is the leads-first sibling of a general Maps scraper: contact enrichment and email verification are always on and bundled into one price, not stacked as paid add-ons.

What you get per lead

  • primary_email — the single best public email for the business, picked after verification.
  • email_statusvalid (domain accepts mail), role (shared mailbox like info@), risky (disposable domain), or invalid. You always know what you're emailing.
  • emails — every public email found, de-duplicated and ranked (on-domain + mailto: first).
  • social_links — Facebook, Instagram, LinkedIn, X/Twitter, YouTube, TikTok, Pinterest, Yelp profiles from the site.
  • Full place record — phone, website, address, GPS, category, rating, review count, opening hours, price level, owner-verified flag, and more (32+ fields).

Why this beats the alternatives

  • Closes the email gap. General Maps-contact scrapers land an email on roughly half of businesses because they only read the homepage. This actor walks the highest-yield contact pages (/contact, /about, /kontakt, /impressum, …) and de-obfuscates hidden addresses (info [at] domain [dot] com, HTML-entity forms) — lifting the fill rate where the lead actually lives.
  • Email verification is built in, not a surprise add-on. Each harvested email is checked at the MX layer (does the domain accept mail at all?) and flagged disposable/role/valid — bundled into the per-lead price. Competing stacks charge a separate per-verification fee on top of a separate per-contact fee on top of the base place price.
  • One flat price. You pay one rate per lead record delivered — no base-place fee + contacts add-on + verification add-on arithmetic.
  • Breaks the 20-result ceiling. Auto-paginates (via the Maps !8i offset) up to 300 places per query, deduplicated by place ID.
  • A real B-plan against format drift. Google reshuffles its internal Maps layout between releases — the silent killer that makes index scrapers return zero results that look like an empty area. A secondary regex/structural parser recovers places by stable anchors and flags them (parse_path: "fallback", lower parse_confidence) so degradation is visible, never silent.
  • Self-rotating against blocks. On a CAPTCHA / consent wall / poisoned IP it rotates to a fresh residential exit (up to 3×) — and never charges you for a blocked or empty query.
  • No external key, $0 setup. Uses the Apify residential proxy pool included with your account.

How it compares

This actorGeneral Maps + contacts scraper
Price modelone flat rate per leadbase place + contacts add-on + verification add-on
Email verification✅ MX-verified, email_status per lead➕ extra per-verification fee
Contact-page crawl + de-obfuscation✅ multi-page + decodehomepage-only (≈50% fill)
Best-email pickprimary_email— (raw list only)
Results per queryup to 300 (auto-paginate)~120
Format-drift fallback parser✅ regex B-plan
External key required❌ none❌ none

(Competitor behaviour as observed on the Apify Store, 2026-06; verify current pricing on each listing.)

Input

FieldTypeRequiredDescription
queriesarray of stringsSearch queries, e.g. ["marketing agencies in Austin TX", "dentists near Denver CO"]. Each query is paginated up to maxResults.
maxResultsintegerMax places per query, 1–300 (default 20). Google caps a single area near 120–300; split into narrower queries for fuller coverage.
verifyEmailsbooleanMX-verify every harvested email and surface a primary_email + email_status. Default true. Contact enrichment itself is always on.
languagestringResult language code (BCP-47). Default en.
countrystringCountry code for result localisation. Default us.
proxyConfigurationobjectApify proxy settings. Must be residential — Google Maps blocks datacenter IPs. Default: Apify RESIDENTIAL group. (The GOOGLE_SERP group does not support Maps.)

Output (key lead fields)

FieldTypeDescription
namestringBusiness name
primary_emailstringBest verified public email — the lead's contact
email_statusstringvalid / role / risky / invalid / none
emailsarrayAll public emails found (ranked)
email_countintNumber of distinct emails found
has_emailboolWhether at least one email was harvested
email_checksarrayPer-email MX / role / disposable verification detail
email_source_pagestringURL the primary email was found on
social_linksobject{platform: url} social profiles
phonestringPhone number
websitestringBusiness website URL
addressstringFull street address
latitude / longitudefloatCoordinates
categorystringPrimary category (e.g. "Marketing agency")
rating / reviews_countfloat / intStar rating and review count
opening_hoursarrayStructured weekly hours [{day, hours}]
is_claimedboolOwner-verified listing
maps_urlstringDirect Google Maps link
parse_confidencefloatPer-record data-quality score 0.0–1.0
scraped_atstringISO-8601 UTC timestamp

(Plus place_id, plus_code, price_level, summary, description, image_url, amenities, categories, work_status, parse_path, warnings, query, rank.)

Use cases

  • Cold-email lead lists — pull restaurants, agencies, contractors, dentists, gyms by city with a verified email per business, export straight to your sequencer.
  • Sales prospecting — name + phone + website + primary_email into your CRM in one pass.
  • Local SEO / agency outreach — find businesses with weak is_claimed / rating signals and reach the owner directly.
  • Market research — category, price tier, and amenity distribution across a metro.

Frequently asked questions

Do I need a Google API key or a proxy key? No. Runs on the Apify residential proxy pool included with your account.

How is the email found and verified? The actor fetches each business website over the same residential proxy — homepage plus the highest-yield contact pages — extracts public emails (decoding common [at]/[dot] obfuscation), then checks each at the MX layer to confirm the domain can receive mail and flags role/disposable addresses. The best one is surfaced as primary_email.

Why MX verification and not a full mailbox probe? Outbound SMTP (port 25) is blocked on most cloud infrastructure, so a per-mailbox RCPT probe is unreliable there. MX verification is fast, robust, and honest: it confirms the domain accepts mail and screens disposable/role addresses, which removes the bulk of dead and junk addresses.

What if a business has no website or no public email? You still get the full place record; has_email is false and email_status is none. You're never charged extra for enrichment that found nothing.

How many results per query? Up to 300, paginated automatically. Split large cities into narrower queries for exhaustive coverage.

Will I get charged for failed queries? No. You pay per lead record pushed, after the push. Blocked, empty, or errored queries push nothing and cost nothing.

Pricing

Pay-per-result: $0.0069 per lead record — Google Maps place data plus website email harvesting plus MX email verification, all in one flat rate, no add-on fees. You pay only for lead records actually delivered to your dataset.

Integrations

  • n8n / Make / Zapier — trigger a run or pipe every new lead into 500+ apps (Google Sheets, Airtable, Slack, HubSpot, your CRM) with no code: n8n, Make, Zapier.
  • Webhooks — fire your endpoint the moment a run finishes (docs).
  • MCP server — expose this actor as a tool to Claude, Cursor, or any MCP client so an AI agent can pull leads mid-conversation (guide).
  • API & SDKs — fetch the dataset as JSON, CSV, or Excel via the Apify REST API or the Python / JS SDKs.

See all Apify integrations.

Not affiliated with Google

This actor is not affiliated with, endorsed by, or sponsored by Google LLC. Google Maps and Google are trademarks of Google LLC. Scrape responsibly and in compliance with applicable laws and terms.