Google Maps Scraper [Advance]
Pricing
from $2.00 / 1,000 results
Google Maps Scraper [Advance]
Most powerful actory that automatically extracts business data from Google Maps, including names, addresses, phone numbers, ratings, reviews, and more.
Pricing
from $2.00 / 1,000 results
Rating
5.0
(3)
Developer
Shop Intel
Actor stats
1
Bookmarked
0
Total users
0
Monthly active users
4 days ago
Last modified
Categories
Share
Google Maps Scraper (Advance)
Apify actor: scrapeio/google-maps-scraper-advance
Google Maps Scraper (Advance) turns map searches into structured tables: names, links, ratings, and—when you enable deeper options—phones, sites, reviews, photos, and optional website contact hints. Each run gives you a Dataset you can export (CSV, JSON, Excel) plus key-value files for summaries and validation.
At a glance
- What it does: Automates the public Google Maps experience (browser-style), then normalizes results into rows you can analyze or pipe into CRMs and BI tools.
- Ways to search: Keyword + location, Maps URLs / place IDs, GeoJSON area, or explore at lat/lng.
- Richer data: Optional place pages, reviews (up to 5,000 per place, UI permitting), photos (up to 200), website crawl, social preview checkboxes, filters.
- Where data lives: Dataset (one object per place),
RESULTS_CSV,RESULTS_JSON,OUTPUT,OUTPUT_VALIDATION, optionalREVIEWS_ROWS. - Independence: Independent product; not affiliated with Google.
Features
| Area | What this actor gives you |
|---|---|
| Search | Find places by keyword + location, or by Maps URLs, place IDs, GeoJSON area, or map coordinates (explore mode). |
| Volume | Up to 500 unique places per run; optional language for the Maps UI. |
| List data | Business name, Google Maps link, card text, rating when shown, open/closed hints when visible. |
| Detail data (optional) | Phone, website, address, coordinates when the place page exposes them. |
| Reviews & photos (optional) | Up to 5,000 reviews and 200 images per place (subject to what Maps shows). |
| Extras (optional) | Q&A-style text, web-result links, directory links, reservation hints — when present on the page. |
| Contacts (optional) | Crawl each business website for emails, phones, social URLs; optional public preview text for Facebook, Instagram, YouTube, TikTok, X. |
| Filters (optional) | Min rating, with / without website, name matching, skip closed-looking listings, topic keywords after scrape. |
Input
Where: Apify → this actor → Input tab (form or JSON).
Rule: You must choose at least one way to tell the actor what to scrape:
- Keyword search — blocks 1 (and optionally 6 for structured address), or
- URLs / place IDs — block 2, or
- GeoJSON area — block 3, or
- Map explore — block 4: turn on Explore map at coordinates and fill map center (
lat,lng, optionalzoom).
Form layout (collapsible sections):
| # | Section title | What you set there |
|---|---|---|
| 1 | Search by keyword | Main query, extra queries, location line |
| 2 | Maps URLs or place IDs | Lists of URLs or Google place IDs |
| 3 | GeoJSON area | Point / polygon / multipolygon JSON |
| 4 | Map explore | Checkbox + map center JSON |
| 5 | Run size & language | Max places (1–500), language code |
| 6 | Composed address | City, state, county, postal, country (optional alternative to one location string) |
| 7 | Filter results | Categories, min rating, website filter, name match mode, skip closed |
| 8 | Place details & reviews | Open place pages, max reviews, sort, review text filter, reviewer names |
| 9 | More from place page | Max photos, web results, directories, Q&A, reservation hints |
| 10 | Website & social | Crawl site for contacts; per-network social preview checkboxes |
| 11 | Advanced / API aliases | Alternate field names and JSON social override for old integrations |
Every field in the form is connected to the scraper — nothing is a placeholder. Optional blocks can stay closed if you do not need them.
Output
All outputs belong to the run you started.
Where to download
| Output | What it is | Where in Apify |
|---|---|---|
| Dataset | One JSON record per business — main export | Run → Dataset → Export (JSON, CSV, Excel, …) |
| RESULTS_CSV | Same-style data as a CSV file | Run → Storage → Key-value store → RESULTS_CSV |
| RESULTS_JSON | Full summary + places in one JSON string (if under size limits) | Storage → RESULTS_JSON |
| OUTPUT | Run summary: counts, status, validation summary | Storage → OUTPUT |
| OUTPUT_VALIDATION | Checks and warnings (e.g. optional data missing) | Storage → OUTPUT_VALIDATION |
| REVIEWS_ROWS | Flat list of reviews (only if you enable it in input) | Storage → REVIEWS_ROWS |
What a typical place record contains
Depends on your input. Common fields include:
| Kind of data | Example field names (not every run has every field) |
|---|---|
| Identity & link | displayName, title, googleMapsUri, url |
| List snippet | listSnippet |
| Scores | rating, reviewsCount, userRatingCount |
| Status | businessStatus |
| Detail | nationalPhoneNumber, websiteUri, formattedAddress, location (lat/lng object) |
| Reviews / media | reviews, images, questionsAndAnswers |
| Extras | webResults, directoryPlaces, reservation-related fields |
| Contact crawl | emails, phonesFromWebsite, social URL fields, socialProfilesEnriched |
Preview the Dataset after a run to see exactly which columns you got for that configuration.
Quick start
- Open Input → section 1: e.g. query
coffee shop, locationSeattle, WA. - Section 5: set max places (e.g.
50). - Start → Dataset → Export → CSV or Excel.
- For phone and website, open section 8 and enable open each place page (or set max reviews / photos — detail turns on automatically).
Example inputs (JSON)
Simple list
{"query": "yoga studio","location": "Denver, CO","maxResults": 50}
With phone, website, 10 reviews each
{"query": "italian restaurant","location": "Boston, MA","maxResults": 30,"scrapePlaceDetailPage": true,"maxReviews": 10}
Website crawl for contacts
{"query": "marketing agency","location": "San Francisco, CA","maxResults": 40,"scrapePlaceDetailPage": true,"enrichContactsFromWebsite": true}
Explore map (no keyword)
{"exploreMapInsteadOfSearch": true,"mapCenter": { "lat": 48.8566, "lng": 2.3522, "zoom": 14 },"maxResults": 80}
FAQ
Does this use the Google Maps Platform (paid) APIs?
No. The actor does not call Google’s billed Maps / Places web services. It drives the consumer Maps UI, so you do not configure Google Cloud API keys for this actor.
Why are some columns empty?
Listings differ: some cards lack ratings, phones, or sites until you open place details (section 8). Use OUTPUT_VALIDATION after a run to see hints.
When do emails appear?
Only if crawl business website is on and a website was found; values come from public pages the crawler can read.
Legal use
Follow Google’s terms of service and privacy / marketing laws in your region (especially for review text and personal names).
Discoverability & related topics
Google Maps scraper Apify · local business export · Maps search to CSV · place reviews dataset · website contact enrichment · GeoJSON area search · map explore coordinates · Apify Maps actor
FastAd — automation & growth tooling.