Google Maps Leads Scraper | $1.5/1k places
Pricing
from $1.50 / 1,000 results
Google Maps Leads Scraper | $1.5/1k places
Scrape unlimited Google Maps business leads — names, addresses, phones, websites, ratings, and optional [Add On] emails + Social Profiles from business websites. Type any city ('Chicago', 'Paris, France') and grid search covers the entire area, bypassing Google's ~120-results-per-search cap.
Pricing
from $1.50 / 1,000 results
Rating
0.0
(0)
Developer
Mamies Tech
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
0
Monthly active users
21 hours ago
Last modified
Categories
Share
Google Maps Leads Scraper 🗺️
Extract unlimited business leads from Google Maps — names, addresses, phone numbers, websites, emails, and ratings — exported clean as JSON, CSV, or Excel. Built for lead generation, sales prospecting, and market research.
Beat Google's 120-result limit with grid search, and enrich your leads with contact emails and social media profiles pulled straight from business websites.
🚀 Why this scraper?
A normal Google Maps search caps out at ~120 places. This scraper uses grid search — splitting your target area into a grid of smaller searches — so you can extract every business in a city, not just the first screen.
- ✅ Complete contact data — name, full address, phone, website
- ✅ Email + social enrichment — contact emails, social profiles (Facebook, Instagram, LinkedIn, and 7 more), and the contact page, pulled from business websites
- ✅ Ratings — star rating for every business
- ✅ Precise location — GPS coordinates for every place
- ✅ Unlimited results — grid search bypasses the 120-place cap
- ✅ Any niche, any city — just type a search term
- ✅ Clean export — JSON, CSV, Excel, XML, or HTML
📊 Data fields extracted
| Field | Description |
|---|---|
| title | Business name |
| category | Business type (e.g. "Italian restaurant") |
| address | Full street address |
| phone | Phone number (where listed) |
| web_site | Business website URL (where listed) |
| emails | Contact emails found on the business website (when contact enrichment is enabled) |
| facebook … whatsapp | Social profile links — Facebook, Instagram, LinkedIn, Twitter/X, YouTube, TikTok, Pinterest, GitHub, Telegram, WhatsApp (when contact enrichment is enabled) |
| contact_page | URL of the website's contact page (when contact enrichment is enabled) |
| review_rating | Average star rating (1–5) |
| latitude / longtitude | GPS coordinates |
⬆️ Output example
Each business is returned as one record. With email extraction enabled:
{"title": "SoHo Dental Group NYC","category": "Dentist","address": "552 Broadway #505, New York, NY 10012","phone": "(212) 878-7646","web_site": "https://sohodentalgroup.com/","emails": ["info@sohodentalgroup.com"],"facebook": "https://www.facebook.com/sohodentalgroup","instagram": "https://www.instagram.com/sohodentalgroup","linkedin": null,"contact_page": "https://www.sohodentalgroup.com/contact-us","review_rating": 4.7,"latitude": 40.7237243,"longtitude": -73.9980315}
Trimmed for readability — every record carries many more fields, and contact-enriched records always include all 10 social platform fields (facebook, instagram, linkedin, twitter, youtube, tiktok, pinterest, github, telegram, whatsapp); platforms the business doesn't have come back as null.
About emails & socials: Contacts are extracted by visiting each business's website, so they're available only for businesses that have a website. Many Google Maps listings have no website, so coverage varies by search — expect contacts on a portion of results, not all of them. Enable Extract emails + social profiles in the input to turn this on.
Download the full dataset as JSON, CSV, Excel, XML, or HTML from the Output tab.
🎯 Use cases
- Lead generation — build targeted prospect lists with phone numbers and emails
- Sales prospecting — find every business in a niche and city
- Market research — analyze competitor density, ratings, and coverage by area
- Local outreach — identify top-rated businesses for partnerships
⬇️ Input
| Parameter | Required | Description |
|---|---|---|
| queries | Yes | Search terms, one per line — e.g. restaurants in New York |
| maxResultsPerQuery | No | Cap on results per query (default 10) |
| extractEmails | No | Visit each business website to extract contact emails, social profiles, and the contact page (adds the emails, social, and contact_page fields) |
| gridCity | No | Easiest way to scrape a whole area: a city name, e.g. Chicago, Springfield, Illinois, Paris, France, or Richmond, Victoria, Australia — coordinates are resolved automatically; regions/states work for every country |
| gridRadiusKm | No | With gridCity: how far around the city center to search (default 5 km) |
| gridBbox | No | Alternative to gridCity for precise control: exact minLat,minLon,maxLat,maxLon (takes priority if both are set) |
| gridCellKm | No | Grid cell size in km (default 1) — smaller cells are more thorough but slower |
| language | No | Google language code (default en) |
Tip: Use distinct search terms (restaurant, cafe, bar) rather than near-duplicates to maximize unique results.
⚡ Why not just use the Google Places API?
| Google Places API | This scraper | |
|---|---|---|
| Result limit | Caps results per search | Unlimited via grid search |
| Emails & social profiles | Not provided | Extracted from business websites |
| Setup | API keys, billing, complex config | Just type a search term |
| Coordinates & ratings | Available | Included by default |
❓ FAQ
How does it work? It talks to Google Maps' own search backend directly — no browser, no page rendering — which makes it fast and lightweight. Grid search goes further: it splits your target area into small cells and searches each cell's location separately, so results come from every corner of the area instead of one map viewport.
How do I get more than 120 results?
Use grid search: type a city into gridCity (e.g. Chicago or Miami) — or provide exact coordinates via gridBbox. Either way your area is divided into smaller cells and each cell searches its own spot on the map, bypassing Google's ~120-per-search cap. Raise maxResultsPerQuery accordingly (it caps the total across all cells).
Why don't all results have emails? Emails come from business websites. Listings without a website, or whose website doesn't publish an email, won't have one. Email coverage naturally varies by area and industry.
What export formats are supported? JSON, CSV, Excel, XML, and HTML — from the Output tab or the Apify API.
Can I automate it? Yes — integrate with Make, n8n, Zapier, Google Sheets, and more via Apify's integrations and webhooks, or call it through the Apify API.
Is scraping Google Maps legal? This actor extracts publicly available business information. As with all web scraping, review the applicable terms and only collect data you have a legitimate basis to use.
💡 Tips
- Proxies are managed automatically — no proxy setup or configuration needed.
- For full-city coverage, use grid search: just type the city name (or a bounding box for exact control).
- Contact enrichment costs more per result — use it when you need emails, social profiles, or contact pages.
Unofficial scraper — not affiliated with, endorsed by, or sponsored by Google. City-name lookup uses GeoNames data, licensed under CC BY 4.0.