๐ฉ Google Maps Scraper: Emails + Socials in 1 Run
Pricing
from $20.00 / 1,000 starter โ $0.02/leads
๐ฉ Google Maps Scraper: Emails + Socials in 1 Run
Extract Google Maps business leads with emails, phone numbers, websites, ratings, addresses, GPS coordinates, photos, and Facebook/Instagram/LinkedIn/X links in one run. Built for local agencies, cold outreach, local SEO, and sales prospecting.
Pricing
from $20.00 / 1,000 starter โ $0.02/leads
Rating
0.0
(0)
Developer
Gagan
Maintained by CommunityActor stats
3
Bookmarked
204
Total users
6
Monthly active users
8 days ago
Last modified
Categories
Share
Find outreach-ready local business leads from Google Maps and enrich them with emails, phone numbers, websites, ratings, addresses, GPS coordinates, photos, and social profile links in the same run.
This actor is built for small agencies, local SEO teams, and founders who need a CSV they can actually use for outreach โ not just a list of business names.
What you pay for: scraped Google Maps business results enriched with website emails and social links when available. Current Apify listing price is $20 / 1,000 leads ($0.02 per lead). No separate enrichment actor is required.
Why use this instead of a generic Google Maps scraper?
Most Google Maps scrapers stop at business name, address, phone, and website. For outreach, that still leaves you doing the hard part: opening websites, finding emails, checking social links, and cleaning the CSV.
This actor does that enrichment step for you:
| Data field | Included |
|---|---|
| Business name, category, rating, reviews | โ |
| Address, phone, website, Google Maps URL | โ |
| GPS coordinates + Place ID | โ |
| Emails from business website | โ |
| Facebook / Instagram / LinkedIn / X links | โ |
| Photos, hours, closed status, menu URL | โ |
| Flat CSV-friendly output | โ |
Best use cases
1. Local agency lead lists
Example:
{"searchQueries": ["dentists in Austin TX"],"maxResults": 50,"extractEmails": true}
Use the output to find clinics with emails, weak social presence, missing websites, or low review counts.
2. Cold outreach prospecting
Example:
{"searchQueries": ["roofing companies in Dallas TX"],"maxResults": 100,"extractEmails": true}
Export as CSV and filter by businesses with websites + emails + social profiles.
3. Local SEO opportunity research
Example:
{"searchQueries": ["plumbers in Phoenix AZ", "electricians in Phoenix AZ"],"maxResults": 75,"extractEmails": true}
Compare rating, review counts, category, website availability, and social presence.
4. Market mapping
Example:
{"searchQueries": ["restaurants in Brooklyn NY"],"maxResults": 200,"extractEmails": false}
Turn off enrichment when you only need fast market/density data.
Example output
{"businessName": "Austin Dental Works","category": "Dentist","rating": "4.9","reviewCount": "260","address": "Austin, TX","phone": "+1 512-555-0100","website": "https://www.austindentalworks.com","emails": ["info@austindentalworks.com"],"emailsString": "info@austindentalworks.com","facebookUrl": "https://www.facebook.com/AustinDentalWorks/","instagramUrl": "https://www.instagram.com/austindentalworks/","linkedinUrl": "","twitterUrl": "","latitude": 30.2672,"longitude": -97.7431,"url": "https://www.google.com/maps/place/...","scrapedAt": "2026-07-24T00:00:00.000Z"}
All fields are flat, so exports work cleanly in CSV, Excel, Google Sheets, Airtable, or a CRM.
Input parameters
| Parameter | Type | Default | Description |
|---|---|---|---|
searchQueries | string[] | [] | Google Maps searches such as dentists in Austin TX |
startUrls | object[] | [] | Direct Google Maps search/place URLs |
maxResults | number | 100 | Maximum businesses to scrape per run. Start with 25โ100 for best reliability. |
maxCrawledPages | number | 50 | Safety cap for crawler pages |
extractEmails | boolean | true | Visit each business website to extract emails and social links |
proxyConfiguration | object | Apify Proxy | Proxy settings |
Reliability notes
For best results:
- Start with
maxResultsbetween 25 and 100. - Use specific searches:
dentists in Austin TXbeatsbusinesses in USA. - Keep
extractEmails: truefor outreach lists; turn it off for faster market mapping. - Large jobs take longer because the actor visits each business website plus contact/about pages.
The actor uses Apify Proxy, scroll pagination, retries, duplicate filtering, and website enrichment across homepage/contact/about pages.
Pricing
Current Apify listing price:
$20 / 1,000 leads = $0.02 per lead
This includes Google Maps business data plus email/social enrichment when available. You do not need to chain a separate email/social scraper.
FAQ
Does every business have an email?
No. The actor extracts emails from the business website when emails are publicly available. Local businesses vary widely. US professional services such as dentists, clinics, roofers, salons, contractors, and agencies usually perform better than generic retail or restaurants.
Are emails verified?
Emails are extracted and filtered from public website/contact/about pages. They are not SMTP-verified. If you need deliverability validation, run the CSV through your email verification provider before outreach.
Why did my run take a long time?
Email/social extraction requires opening the business website and common pages like /contact and /about. For fast market research, set extractEmails to false.
Why did I get fewer results than requested?
Google Maps may return fewer visible places for a query, especially broad or low-density locations. Try a more specific city/category pair or split the area into multiple searches.
Can I use this from API or MCP?
Yes. Like every Apify actor, it can be called from the Apify API, scheduled, connected to Make/Zapier/n8n, or used via Apify MCP-compatible clients.
Suggested starter tasks
Try these first:
{"searchQueries":["dentists in Austin TX"],"maxResults":25,"extractEmails":true}
{"searchQueries":["plumbers in Phoenix AZ"],"maxResults":50,"extractEmails":true}
{"searchQueries":["roofing companies in Dallas TX"],"maxResults":50,"extractEmails":true}
{"searchQueries":["restaurants in Brooklyn NY"],"maxResults":100,"extractEmails":false}