Google Maps Reviews Scraper
Get Google Maps reviews of any place: stars, text, date, translation, photos, owner reply and the place's rating. Paste Maps links, place IDs, CIDs or names. No reviewer names. Only-new-reviews mode for daily alerts. Pay per review.
Typical uses
- Reputation monitoring: turn on Only new reviews, schedule a daily run and send new 1- and 2-star reviews to Slack or a spreadsheet: you never get (or pay for) the same review twice.
- Local SEO and agencies: check review volume, rating and owner reply rate for your clients and their competitors.
- Lead qualification: chain it after a Google Maps search (see below) to find businesses with unanswered complaints.
- Sentiment analysis and AI summaries: feed clean review text (translated into one language, original kept) to an LLM, a BI tool or an AI agent (MCP).
- Market research: compare what customers praise or complain about across a city's restaurants, hotels, clinics or shops.
Pricing
Pay per use, no subscription, no monthly fee. The price depends on your Apify plan. Apify's free plan includes $5 of usage every month.
| You pay per | Free plan | Starter | Scale | Business |
|---|---|---|---|---|
| Review One Google Maps review returned with its stars, text, date, translation, photos and owner reply. Places with no review, duplicates and input mistakes are free. | $0.0003 | $0.0003 | $0.0002 | $0.0002 |
| Block of 10 reviews requested Google Maps reviews are fetched in blocks of 10 per place (100 reviews = 10 blocks). Charged for each block requested once Google has answered, even when the place has fewer reviews than requested or is not found, at about what the data source charges us. Not charged when Google does not answer. | $0.0011 | $0.0011 | $0.0011 | $0.0011 |
Run it from your code
Get an API token in the Apify Console (Settings → Integrations), then:
curl -X POST \
"https://api.apify.com/v2/acts/plainrows~google-maps-reviews/run-sync-get-dataset-items?token=$APIFY_TOKEN" \
-H 'Content-Type: application/json' \
-d '{
"places": [
"ChIJifIePKtZwokRVZ-UdRGkZzs"
],
"maxReviewsPerPlace": 100,
"country": "US"
}'
from apify_client import ApifyClient
client = ApifyClient("<YOUR_APIFY_TOKEN>")
run = client.actor("plainrows/google-maps-reviews").call(run_input={'places': ['ChIJifIePKtZwokRVZ-UdRGkZzs'],
'maxReviewsPerPlace': 100,
'country': 'US'})
for row in client.dataset(run["defaultDatasetId"]).iterate_items():
print(row)
Use it in automations and AI agents
- n8n, Make, Zapier: use the official Apify integration and pick the Actor
plainrows/google-maps-reviews. - Get a Slack alert for new negative Google reviews of your locations (n8n workflow JSON)
- MCP (Claude, Cursor, other AI agents):
https://mcp.apify.com?tools=plainrows/google-maps-reviews
Full documentation, input options and output fields: https://apify.com/plainrows/google-maps-reviews