Google Maps Scraper
Pricing
Pay per usage
Go to Apify Store
Google Maps Scraper
Scrape Google Maps places and reviews. Extract business name, website, phone, rating, address, city, country, and reviews at scale.
Pricing
Pay per usage
Rating
0.0
(0)
Developer
Harsh Shah
Maintained by Community
Actor stats
0
Bookmarked
3
Total users
2
Monthly active users
6 days ago
Last modified
Categories
Share
Scrape Google Maps places, reviews, emails, and social media links at scale. Extract business name, category, website, phone number, email addresses, social profiles, rating, address, city, and country from any search query. The most complete local business data extraction tool on Apify.
Features
- Business details: name, category, website, phone, rating, address, city, country
- Email extraction: find email addresses from business websites automatically
- Social media links: extract Facebook, Instagram, Twitter/X, LinkedIn, YouTube, TikTok profiles
- Reviews extraction: reviewer name, rating, text, date
- Website filter: scrape only businesses with or without a website
- Scale beyond 120 results: automatic geo-grid splitting for large queries
- Anti-detection: residential proxy rotation, fingerprint generation, resource blocking, random delays
- Crash recovery: automatically resumes from where it stopped
- Deduplication: no duplicate charges for the same place across geo-grid cells
- Smart filtering: junk email and website builder social profile detection
Input
| Field | Type | Default | Description |
|---|---|---|---|
searchQueries | string[] | required | Search terms (e.g. "restaurants in New York") |
maxPlacesPerQuery | integer | 20 | Max places per query (up to 500) |
includeReviews | boolean | false | Extract reviews for each place |
maxReviewsPerPlace | integer | 10 | Max reviews per place (up to 100) |
extractEmails | boolean | false | Visit business websites to find email addresses |
extractSocialLinks | boolean | false | Extract social media profile URLs |
websiteFilter | string | "all" | Filter: "all", "with_website", or "without_website" |
language | string | "en" | Google Maps interface language |
maxConcurrency | integer | 5 | Parallel browser pages (1-10) |
proxyConfiguration | object | Apify Residential | Proxy settings |
Output
Each dataset item contains:
{"name": "Joe's Pizza","category": "Italian restaurant","website": "https://joespizza.com","phone": "+1 212-555-0123","emails": ["info@joespizza.com", "orders@joespizza.com"],"socialLinks": {"facebook": "https://www.facebook.com/joespizza","instagram": "https://www.instagram.com/joespizzanyc"},"rating": 4.5,"address": "123 Broadway, New York, NY 10001, United States","city": "New York","country": "United States","reviews": [{"reviewerName": "John D.","rating": 5,"reviewText": "Best pizza in NYC!","date": "2 months ago"}],"searchQuery": "pizza in New York","url": "https://www.google.com/maps/place/...","scrapedAt": "2026-03-21T10:00:00.000Z"}
Pricing
Pay only for what you scrape:
| Event | Price |
|---|---|
| Place scraped | $0.003 per place |
| Review scraped | $0.0003 per review |
| Email scraped | $0.004 per email found |
Example costs:
- 1,000 places (basic): ~$3.00
- 1,000 places + emails: ~$3.00 + $0.004 per email found
- 1,000 places + 10 reviews each: ~$6.00
- 5,000 places + emails + social links: ~$15.00 + email charges
Category and social media links are included free with every place scraped.
Use Cases
- Lead generation: Find local businesses with emails and social profiles for outreach
- Market research: Analyze business categories, ratings, and density in any area
- Competitor analysis: Track ratings, reviews, and online presence of competitors
- Web development leads: Filter for businesses without websites using the website filter
- SEO/Marketing leads: Filter for businesses with websites to offer digital marketing services
Tips for best results
- Use residential proxies (default) — Google blocks datacenter IPs aggressively
- Keep concurrency at 3-5 for stability, increase to 8-10 if you have good proxies
- Be specific with queries — "Italian restaurants in Manhattan" yields better results than "restaurants"
- For large extractions (>120 places), the scraper automatically splits the search area into a geographic grid
- Enable email extraction for lead generation — only charged when emails are actually found
- Use the website filter to target your ideal prospects (e.g. "without website" for web dev leads)
Limitations
- Google Maps DOM structure changes periodically. The scraper uses fallback selectors but may need updates.
- Some places may have partial data (null fields) if Google doesn't display certain information.
- Review dates are relative ("2 months ago") as displayed by Google, not absolute dates.
- Email extraction depends on the business website being accessible and containing visible email addresses.
- Social media links from websites are filtered to exclude website builder profiles (Wix, Squarespace, etc.).