Google Maps Reviews Scraper
Pricing
from $0.22 / 1,000 review scrapeds
Google Maps Reviews Scraper
Scrape full Google Maps reviews from any business by URL, place ID, or CID. Filter by rating, date, and keyword. Skip already-collected review IDs for incremental runs.
Pricing
from $0.22 / 1,000 review scrapeds
Rating
0.0
(0)
Developer
LurkAPI
Actor stats
1
Bookmarked
2
Total users
1
Monthly active users
16 hours ago
Last modified
Categories
Share
Scrape every review from any Google Maps business. Drop in a URL, place ID, or CID, and pull the full review history with reviewer info, ratings, owner replies, photos, and place metadata.
🎯 What it does
Give it a Google Maps business and it will:
- Resolve the place from a URL, place ID, or CID
- Fetch every review (up to your cap), with full reviewer profile, owner replies, and attached photos
- Filter on the fly by star rating, date range, keyword, or owner reply presence
- Skip reviews you've already collected so monitoring runs only pay for new content
Built for reputation monitoring, competitor research, sentiment analysis, and any workflow that needs reliable, structured Google Maps review data.
📋 How to use it
Step 1: Pick your inputs
Paste any combination of:
- Google Maps URLs: long URLs, share links (maps.app.goo.gl), or place URLs
- Place IDs: the
ChIJ...identifiers Google uses - CIDs: the long numeric IDs from old-style Maps URLs
- Search queries (paid): text searches like
"coffee shops in Seattle"that auto-resolve to up to N businesses each
You can mix and match. Every business is processed independently.
Step 2: Tune the scrape
- Max reviews per place: cap how many reviews to fetch (0 = unlimited)
- Sort by: Newest, Most Relevant, Highest Rating, or Lowest Rating
- Reviews start date: skip reviews older than a date (Newest sort only)
- Language: affects auto-translation
- Filters: minimum / maximum rating, keyword filter, only-with-text filter, owner-reply-only filter
- Skip review IDs: bulk paste IDs from a previous run; so you're only charged for new reviews
- Since review ID: stop when you reach a known ID (resume mode)
Step 3: Read your results
Click Start. Reviews stream into the Output tab as each page is fetched. Every row carries the status field first (Success or a descriptive error), the full review payload, and the place metadata (name, address, rating, category, ...).
The dataset is one row per review. Use the Overview view for a quick scan or the Full view for every populated field.
💰 Pricing
Pay only for the reviews you actually receive.
| Event | Price | When |
|---|---|---|
| Review scraped | $0.25 per 1,000 reviews | per review delivered |
| Keyword filter | $0.10 per 1,000 reviews | only when Include keyword is set |
| Owner reply filter | $0.10 per 1,000 reviews | only when Only with owner reply is set |
| Search place found | $5.00 per 1,000 places | per place surfaced by a search query. Cap with Max places per query to bound the cost. |
No charge for places that fail to resolve, reviews you skip via Skip-IDs, or reviews dropped by filters.
🌐 Proxy settings
By default the Actor uses Apify's datacenter proxies, which is fast and cheap and works for nearly every place.
- Automatic (default): Apify picks the best proxy.
- Datacenter: Fastest and cheapest. Works for most places.
- Residential: Switch to this if you see frequent block errors or empty pages.
- Own proxies: Bring your own proxy URLs.
- No proxy: Disable proxies entirely.
💡 Good to know
- Google caps reviews per place at roughly 4,000-5,000 even on very busy listings. The Actor stops cleanly when Google says there are no more.
- Date filter only works with Newest sort. Google does not support date filtering on other sort modes.
- Skip-IDs are free: paste up to thousands of review IDs from a prior run; they're filtered out before any charge.
- Resume mode: set Since review ID to the most recent review ID from the previous run. The Actor stops when it hits that ID, so monitoring runs only collect what's new.
- Output toggles let you trim each row to just the fields you need.
- Files and datasets are stored in your Apify storage. How long they're kept depends on your Apify plan.
❓ FAQ
Why are some review fields null? Google does not always populate every field. Reviews without text, without owner replies, or without attached photos return null for those fields. That's expected; it's how the data is on Google's side.
Why didn't I get all reviews? Google has a hard cap of about 4,000-5,000 reviews per place even when the listing reports more. Switching sort modes (Most Relevant vs Newest) sometimes surfaces a different set of reviews because Google partitions them.
Which proxy should I use? Start with the default. If you see lots of failed places or empty pages, switch to Residential.
Can I scrape from search queries (like 'restaurants in Miami')? Yes. Paste them in the Search queries field. Each query resolves to up to Max places per query businesses (default 10, max 120). Charged at $5 per 1,000 places surfaced by the search.
How do I run incremental monitoring? Save the most recent review ID from each run. On the next run, paste it into Since review ID. The Actor stops when it reaches that ID, so only new reviews are scraped and charged.
🔗 Other tools you might like
- Google Maps Business Leads Scraper - Scrape places, contacts, emails, phones, and socials from Google Maps.
⚖️ Disclaimer
This tool is intended for personal, research, and educational use. You are responsible for complying with Google's Terms of Service and applicable laws in your jurisdiction. The developer is not liable for misuse. Data availability depends on Google Maps at run time.
Keywords: google maps, reviews, scraper, business reviews, reputation monitoring, sentiment analysis, places api alternative