📩📍 Google Maps Email Extractor Pro
Pricing
from $2.50 / 1,000 results
📩📍 Google Maps Email Extractor Pro
Search Google Maps by keyword and extract verified business emails, phones, websites, addresses, ratings and social profiles. DNS/MX-validated emails, confidence scoring, CSV/JSON export. Built for lead generation and local outreach.
Pricing
from $2.50 / 1,000 results
Rating
0.0
(0)
Developer
Virtual Footprint LLC
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
a day ago
Last modified
Categories
Share
Why use this Actor?
Google Maps itself only shows you a name, address, and rating. Turning that into a usable business record -- an actual contact email, a phone number, what technology the business's website runs on -- normally means visiting each listing's website by hand.
This Actor does that automatically for every result: it finds the business on Google Maps, visits its website when one exists, and extracts contact details and technology signals from it.
What you get
Execution modes
| Mode | Behavior |
|---|---|
fast_lookup | Cache-first, base Google Maps results only, targets under 800ms. |
enrich (default) | Full multi-source enrichment: emails, phones, tech stack, social links. |
batch | Queue-based enrichment for large query lists. |
Use cases
- Build a business contact list by category and city
- Identify which local businesses use a specific technology or platform
- Pull social profile links alongside contact details for outreach
- Feed enriched business records into a CRM or lead-scoring pipeline (see the companion
b2b-lead-enrichment-suiteActor, which calls this one internally)
Input
| Field | Type | Default | Description |
|---|---|---|---|
queries | array of strings | ["restaurants in New York"] | Search queries or business names. |
mode | select | enrich | fast_lookup, enrich, or batch (see above). |
maxResults | integer | 25 | Max listings per query (1-1000). |
extractEmails | boolean | true | Extract emails from business websites. |
verifyEmails | boolean | false | Validate extracted emails via open-source MX/DNS check (~3s per email, no paid API). |
extractPhones | boolean | true | Extract phone numbers. |
extractSocialMedia | boolean | true | Extract social profile links. |
includeTechStack | boolean | true | Detect website technology stack. |
includeReviews | boolean | true | Include rating and review count. |
language / country | string | en / us | Search locale. |
proxyConfiguration | object | Apify Residential | Google Maps blocks datacenter IPs -- residential proxy is on by default and strongly recommended. |
Input example
{"queries": ["coffee shops in Seattle"],"mode": "enrich","maxResults": 25,"extractEmails": true,"extractPhones": true,"includeTechStack": true}
Output
One dataset row per business found:
| Field | Type | Description |
|---|---|---|
name / address | string | Business identity. |
rating / reviewCount | string | Google rating and review count. |
googleMapsUrl | string | Direct Google Maps link. |
website | string | Business website, if found. |
emails / phones | array | Contact details extracted from the website. |
socialMedia | array | Detected social platform names. |
techStack | array | Detected technologies on the business website. |
confidenceScore | number | 0-1 confidence in the extracted data. |
sources | array | Which providers contributed to this record (e.g. google_maps, website_scraper). |
providerHealth | object | Per-provider status/latency diagnostics for this record. |
cacheStatus | string | hit or miss. |
mode | string | Execution mode used. |
extractedAt | string | ISO timestamp. |
Sample output
Real result from a live run:
{"name": "Piedmont Café","address": "1215 Seneca St Ste 100, Seattle, WA 98101","rating": "4.8","reviewCount": "290","website": "https://piedmontseattle.com/","emails": ["eben@eyebytes.com"],"phones": ["(206) 659-9899"],"socialMedia": [],"techStack": ["Angular", "Google Analytics", "Google Tag Manager", "Bootstrap", "Magento"],"confidenceScore": 1,"sources": ["google_maps", "website_scraper"],"cacheStatus": "miss","mode": "enrich","extractedAt": "2026-08-01T16:03:21.942293Z"}
Pricing
Pay-per-result: $2.50 per 1,000 enriched results ($0.0025/result), plus a small one-time Actor Start fee. You only pay for businesses actually returned -- no charge for empty/failed lookups. It's also used internally by the b2b-lead-enrichment-suite Actor for lead scoring on top of these results.
Notes and limitations
- Google Maps aggressively blocks datacenter IPs -- residential proxy is enabled by default and strongly recommended; results may come back empty without it.
- Contact/tech-stack extraction depends on the business having a public website; listings without one will still return Google Maps data (name, address, rating) with empty
emails/phones/techStack. verifyEmailsadds real latency per email (~3s) since it performs a live MX/DNS check -- leave it off if speed matters more than pre-validated addresses.
Frequently asked questions
What's the difference between the three modes?
fast_lookup skips website enrichment entirely for speed; enrich (default) visits each business's website for contacts/tech stack; batch is built for large query lists processed via a queue.
Do I need my own proxy? No -- Apify Residential proxy is the default and is what makes Google Maps scraping work reliably; you can override it but datacenter-only proxy is likely to return empty results.
Does verifyEmails guarantee the email is real?
No -- it confirms the domain has valid MX/DNS records, which rules out typos and dead domains, but doesn't confirm the specific mailbox exists.
Start extracting business data
Add your search queries, pick a mode, and run the Actor. Enable verifyEmails if you need pre-validated contact addresses at the cost of extra run time.
Related Actors
Used internally by B2B Lead Enrichment Suite for lead scoring on top of these results. Also see Website Contact & Company Extractor if you already have a domain list and don't need the Google Maps search step.