Google Maps Data Scraper Pro
Pricing
from $8.00 / 1,000 results
Go to Apify Store
Google Maps Data Scraper Pro
Scrape Google Maps business data — name, phone, address, rating, reviews, website, geo — using Apify resources only (RESIDENTIAL proxy).
Pricing
from $8.00 / 1,000 results
Rating
0.0
(0)
Developer
Admo Solutions
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
2 hours ago
Last modified
Categories
Share
Scrape business data from Google Maps using only Apify resources (Apify RESIDENTIAL proxy + Playwright). Extract names, phones, addresses, ratings, reviews, websites, and geo coordinates.
💰 Pricing
This Actor uses the Pay Per Event pricing model:
| Event | Price |
|---|---|
| Per business scraped | $8.00 / 1,000 |
For example, scraping 100 businesses costs: $0.80
📥 Input
| Field | Type | Required | Default | Description |
|---|---|---|---|---|
searchStringsArray | array | ✅ | ["restaurant"] | What to search in Google Maps |
locationQuery | string | ❌ | "Mumbai, India" | Free-text location (city/region) |
maxPlaces | integer | ❌ | 20 | Stop after this many places (0 = no limit) |
language | string | ❌ | "en" | Google Maps UI language |
maxConcurrency | integer | ❌ | 3 | Number of browser pages open in parallel |
maxRequestRetries | integer | ❌ | 5 | Retries per request on block/timeout |
proxyConfiguration | object | ❌ | {"useApifyProxy": true, "apifyProxyGroups": ["RESIDENTIAL"]} | Proxy settings (RESIDENTIAL required) |
Example Input
{"searchStringsArray": ["restaurant", "dentist"],"locationQuery": "New York, NY","maxPlaces": 100,"maxConcurrency": 3,"maxRequestRetries": 5}
📤 Output
| Field | Type | Description |
|---|---|---|
title | string | Business name |
category | string | Type of business |
types | array | Sub-types if present |
address | string | Full street address |
phone | string | Phone number(s) |
website | string | Website URL |
rating | number | Star rating (e.g. 4.4) |
reviewsCount | number | Number of reviews |
priceLevel | string | Price level (e.g. $$) |
hours | object | Opening hours by day |
plusCode | string | Google Plus Code |
imageUrl | string | Hero image URL |
latitude | number | Geo latitude |
longitude | number | Geo longitude |
permanentlyClosed | boolean | Whether business is permanently closed |
claimed | boolean | Whether business is owner-claimed |
reviews | array | Top review snippets { author, rating, text } |
url | string | Google Maps URL |
Example Output
{"title": "Joe's Pizza","category": "Restaurant","types": ["Pizza restaurant", "Italian restaurant"],"address": "123 Main St, New York, NY 10001","phone": "+1 212-555-1234","website": "https://joespizza.com","rating": 4.5,"reviewsCount": 1234,"priceLevel": "$$","hours": {"Monday": "11:00 AM – 10:00 PM","Tuesday": "11:00 AM – 10:00 PM"},"plusCode": "87G8M2+V9","imageUrl": "https://lh5.googleusercontent.com/...","latitude": 40.7128,"longitude": -74.0060,"permanentlyClosed": false,"claimed": true,"reviews": [{ "author": "John D.", "rating": 5, "text": "Best pizza in town!" }],"url": "https://maps.google.com/..."}
🔧 How It Works
- Opens a Google Maps search for each term + location (forced
hl=en&gl=usfor stable English UI) - Collects each result's place link
- Opens each place and reads the business panel (name, phone, address, website, rating, reviews, hours, geo, image)
- Retries on blocked/slow loads
🔗 Integration
- Zapier: Use the "Run Actor" action with dataset polling
- Make.com: Use the HTTP module to call the Actor API
- n8n: Use the Apify node or HTTP Request node
- OpenAI MCP: Connect via the Apify MCP server
⚠️ Notes
- Uses Apify RESIDENTIAL proxy + browser compute
- Google Maps limits scrolling to ~120 results per search term
- Category may appear in local language due to Google geolocation behavior
- Use
maxPlacesto control cost per search