Google Maps Business Leads Scraper
Pricing
from $2.00 / 1,000 results
Google Maps Business Leads Scraper
Collect business listings from Google Maps search results and export them as structured records in an Apify Dataset.
Pricing
from $2.00 / 1,000 results
Rating
0.0
(0)
Developer
Dmytro Paduchak
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
7 days ago
Last modified
Categories
Share
Collect business listings from Google Maps search results and export them as structured records in an Apify Dataset.
Use this Actor to build local lead lists, enrich CRM data, research competitors, map locations in a market, or collect business contact details for sales and operations workflows. Enter a search like coffee shops in London, choose how many results you want, and the Actor returns business names, categories, addresses, websites, phone numbers, ratings, opening hours, coordinates, and Google Maps URLs when available.
No Google Maps API key is required.
What You Can Use It For
- Build prospect lists by city, niche, or service category
- Find local businesses with websites, phone numbers, and addresses
- Research competitors in a target area
- Collect store, restaurant, clinic, agency, venue, or service-provider locations
- Feed business data into CRM, spreadsheets, BI tools, or enrichment workflows
- Monitor public business listings for market research
Input
Configure the Actor with a simple JSON input:
{"searchQuery": "coffee shops in London","maxResults": 100,"language": "en","country": "uk","apifyProxy": true,"apifyProxyGroups": ["RESIDENTIAL", "DATACENTER"],"proxyCountries": [],"proxyUrls": [],"proxySessionRetries": 2,"adaptiveThrottle": true}
| Field | Type | Default | Description |
|---|---|---|---|
searchQuery | string | required | Search phrase to run on Google Maps, such as dentists in Manchester or plumbers in Austin. |
maxResults | number | 50 | Maximum number of unique businesses to save. |
language | string | "en" | Preferred Google Maps interface language. |
country | string | - | Optional country hint, such as uk, us, de, or fr. |
apifyProxy | boolean | true | Enable Apify Proxy for more reliable scraping. |
apifyProxyGroups | string[] | ["RESIDENTIAL", "DATACENTER"] | Proxy pools: RESIDENTIAL, DATACENTER, SERP. |
proxyCountries | string[] | [] | Route through specific countries using ISO 2-letter country codes. |
proxyUrls | string[] | [] | Custom proxy URLs. If provided, these override Apify Proxy. |
proxySessionRetries | number | 2 | Number of retryable browser sessions after blocking, empty results, or navigation failures. |
adaptiveThrottle | boolean | true | Automatically slows down when Google Maps loads slowly, returns sparse results, or shows blocking signals. |
baseThrottleDelayMs | number | 250 | Starting adaptive delay before business-card actions. |
maxThrottleDelayMs | number | 10000 | Maximum adaptive delay. |
slowLoadThresholdMs | number | 12000 | Load duration that causes the Actor to increase adaptive delay. |
Output
Each result is saved to the default Apify Dataset as one business record.
{"businessName": "Example Coffee","category": "Coffee shop","rating": 4.6,"reviewCount": 321,"address": "10 Example Street, London","phone": "+44 1234 567890","website": "https://example.com/","googleMapsUrl": "https://www.google.com/maps/place/Example+Coffee/...","latitude": 51.5072,"longitude": -0.1276,"placeId": "0x487...","openingHours": ["Monday: 8 AM-6 PM"],"sourceQuery": "coffee shops in London","scrapedAt": "2026-05-08T12:00:00.000Z"}
Some fields may be missing when they are not publicly visible on a business listing. The Actor still saves the available data and continues with the next result.
How It Works
The Actor opens public Google Maps search results, loads the listings for your query, visits each business profile, extracts available business data, skips duplicates, and stores clean records in the dataset.
Deduplication uses:
- Google Maps URL
- place ID
- business name plus address
Reliability Notes
Google Maps can show captcha or automated-traffic blocking, especially on repeated runs, high result counts, or datacenter IPs. The Actor detects common blocking pages and fails clearly instead of silently saving bad data.
For larger production runs:
- Enable
apifyProxy - Set
apifyProxyGroups,proxyCountries, orproxyUrlswhen you need a specific proxy pool or geography - Increase
proxySessionRetriesandmaxThrottleDelayMsfor long or sensitive runs - Keep each query reasonably focused
- Prefer moderate
maxResultsvalues - Run searches at a steady cadence
- Review output quality before scaling to many queries
No API Key Required
This Actor collects publicly visible Google Maps listing data. It does not use the Google Maps API and does not require a Google API key.
Legal Disclaimer
This Actor is intended for academic, educational, and research purposes only. Users are responsible for ensuring that their use of this tool complies with Google's Terms of Service, Google Maps Terms, and any applicable local laws regarding data privacy and scraping (such as GDPR or CCPA).
Automated access to Google services may be restricted. We do not encourage or condone the use of this tool for any activity that violates the rights of others or the service provider.