Google Maps Reviews Scraper & API avatar

Google Maps Reviews Scraper & API

Pricing

from $0.25 / 1,000 review scrapeds

Go to Apify Store
Google Maps Reviews Scraper & API

Google Maps Reviews Scraper & API

Scrape every review from any Google Maps place by URL. Extract full text, star ratings, author profiles, and owner responses. Each review exports as a clean dataset row.

Pricing

from $0.25 / 1,000 review scrapeds

Rating

0.0

(0)

Developer

Thodor

Thodor

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

4 days ago

Last modified

Share

Google Maps Reviews Scraper & Review Extractor

Scrape Google Maps reviews and Google reviews from any place URL. This Google reviews scraper extracts full text, star ratings, detailed ratings, author profiles, owner responses, and review images. Just paste place URLs and go. Run via API, schedule runs, or integrate with webhooks.

Pass one URL or thousands. The scraper fetches reviews concurrently across all places, sorts them however you want, and pushes each review as a separate dataset row, ready to export as JSON, CSV, or Excel.

Need business data too? If you want to scrape businesses from Google Maps by search query and location (not just reviews from a place URL), use the Google Maps Scraper & Lead Extractor instead. It returns names, phone numbers, websites, opening hours, and 60+ attributes per place, with reviews as an optional add-on.

Why use this Google reviews scraper

Google Maps doesn't provide a public reviews API, and the official Places API only returns 5 reviews per place — useless for reputation monitoring, sentiment analysis, or competitor benchmarking. This actor works as a Google reviews scraper and Google reviews API alternative: paste a place URL, get every review, in one dataset row per review.

Common use cases:

  • Reputation monitoring: track reviews across all your locations in one dataset, detect negative trends early
  • Sentiment analysis: feed review text into NLP pipelines to measure customer satisfaction at scale
  • Competitor benchmarking: compare review volumes, ratings, and detailed scores across competing businesses
  • Market research: mine review text to learn what customers value most in a category
  • Agency reporting: build white-label review reports for local SEO and reputation management clients
  • Review response tracking: monitor which reviews have owner responses and measure response times

Google Reviews API alternative (get all reviews, not just 5)

Google's Places API (New) returns a maximum of 5 reviews per place and doesn't let you paginate through older reviews. That's enough for displaying a teaser on a website but useless for any serious analysis work.

This actor is a Google Reviews API alternative:

  • All reviews per place: up to ~25,000 per place, not just the first 5
  • Full review metadata: detailed category ratings, owner responses, reviewer stats, review images
  • No API key to manage: authenticate with your Apify token
  • By URL, not place ID: paste the URL from your browser, the scraper extracts the place ID automatically
  • Concurrent scraping: pass thousands of URLs, get results fast
  • JSON, CSV, and Excel export: direct from the Apify console or via the Dataset API

For reputation monitoring, sentiment analysis, or any workflow that needs more than a handful of reviews, this actor replaces the Google Places API entirely.

How to scrape Google Maps reviews

  1. Open Google Maps in your browser and navigate to the place you want to scrape
  2. Copy the URL from your browser's address bar
  3. Paste one or more URLs into the place_urls field
  4. Set max_reviews to cap the number of reviews per place
  5. Optionally set language for localized results
  6. Run the actor and export as JSON, CSV, or Excel

Input parameters

ParameterDescriptionExample
Place URLsGoogle Maps place URLs to scrape reviews fromhttps://www.google.com/maps/place/...
Max reviewsMaximum reviews to fetch per place100, 500, 5000
LanguageLanguage for resultsen, nl, de, ja, fr

Paste any Google Maps place URL — the scraper extracts the place ID automatically. No need to find IDs manually.

Use with Python

Call the actor from Python using the Apify SDK:

from apify_client import ApifyClient
client = ApifyClient("YOUR_API_TOKEN")
run = client.actor("thodor/google-maps-reviews-scraper").call(run_input={
"place_urls": [
"https://www.google.com/maps/place/...",
],
"max_reviews": 500,
"language": "en",
})
for review in client.dataset(run["defaultDatasetId"]).iterate_items():
print(review["stars"], review["name"], review["text"][:80])

Each review is pushed as a separate dataset row. Export the full dataset as JSON, CSV, or Excel from the Apify console, or stream it via the Dataset API.

Google review data fields: what you get for every review

  • Star rating (1-5)
  • Full review text
  • Detailed ratings (Food, Service, Atmosphere, etc.)
  • Publication date (ISO 8601)
  • Relative time ("2 months ago")
  • Reviewer name, photo, profile URL
  • Reviewer stats (number of reviews, Local Guide status)
  • Owner response text + date
  • Review images
  • Review URL (direct link)
  • Likes count
  • Review origin and language context

Example output

{
"place_name": "La Donna Re's",
"place_id": "0x89c25d8a10261a7d:0x148b4752f2b99ae2",
"place_url": "https://www.google.com/maps/place/La+Donna+Re's/...",
"review_id": "Ci9DQUlRQUNvZENodHljRjlvT2pkRmVVVlRhazVo...",
"name": "Isatta Bassie",
"reviewer_photo_url": "https://lh3.googleusercontent.com/a-/ALV-UjVPL1SQ...",
"reviewer_id": "109283811363605044639",
"reviewer_number_of_reviews": 5,
"is_local_guide": false,
"reviewer_url": "https://www.google.com/maps/contrib/109283811363605044639/reviews?hl=en",
"published_at_date": "2026-01-11T02:01:27Z",
"publish_at": "2 months ago",
"stars": 5,
"text": "10/10! Super friendly staff and everything was delicious. I went in anticipating oxtails but they were out, so I opted for jerk chicken, Mac and cheese and rice and peas...",
"text_translated": null,
"review_url": "https://www.google.com/maps/reviews/data=...",
"review_detailed_rating": [
{"category": "Food", "rating": 5},
{"category": "Service", "rating": 5},
{"category": "Atmosphere", "rating": 5}
],
"likes_count": 1,
"review_origin": "Google",
"response_from_owner_text": null,
"response_from_owner_date": null,
"review_image_urls": [
"https://lh3.googleusercontent.com/geougc-cs/ABOP9puDf15..."
],
"review_context": "en"
}

Each review is a separate dataset row — easy to filter by place, sort by date, or export to spreadsheets.

Review fields

FieldTypeDescription
place_namestringName of the place this review belongs to
place_idstringGoogle Maps hex place ID
place_urlstringOriginal input URL
review_idstringUnique review identifier
namestringReviewer name
reviewer_photo_urlstringReviewer profile photo
reviewer_idstringReviewer Google ID
reviewer_number_of_reviewsintTotal reviews by this reviewer
is_local_guidebooleanWhether reviewer is a Local Guide
reviewer_urlstringLink to reviewer's profile
published_at_datestringISO 8601 publication date
publish_atstringRelative time ("2 months ago")
starsintStar rating (1-5)
textstringFull review text (null if rating-only)
text_translatedstringTranslated text (when available)
review_urlstringDirect link to the review
review_detailed_rating{category, rating}[]Per-aspect ratings (Food, Service, etc.)
likes_countintNumber of likes on the review
review_originstringWhere the review came from
response_from_owner_textstringOwner's reply (null if none)
response_from_owner_datestringWhen the owner replied
review_image_urlsstring[]Photos attached to the review
review_contextstringLanguage code of the review

FAQ

What URLs are supported? Any Google Maps place URL that contains a place ID. Just copy the URL from your browser when viewing a place on Google Maps.

How many reviews can I fetch? Set max_reviews to however many you need per place. The scraper paginates automatically. Google's API returns up to ~25,000 reviews per place — for places with more reviews than that, you'll get the most recent 25k.

What output formats are available? Results are available as JSON, CSV, and Excel. You can also export directly to Google Sheets via the Apify platform.

What if a place has no reviews? The scraper will simply return 0 results for that place and move on to the next one.

Are there rate limits? No artificial limits. The scraper handles multiple places concurrently with automatic retry logic.

Is there a Google Reviews API? Google's Places API (New) includes reviews, but only returns 5 per place, with no pagination. This actor works as a Google Reviews API alternative: paste a place URL and get all reviews (up to ~25,000 per place), with full metadata including detailed category ratings, owner responses, and review images.

How is this different from your Google Maps Scraper? The Google Maps Scraper takes a search query and location (like "restaurants in Brooklyn") and returns every matching business. This Reviews Scraper takes a place URL as input and returns every review for that specific place. Use them together: scrape a market with the Maps Scraper to get place URLs, then pass those URLs to the Reviews Scraper for deep review analysis.

Can I use this Google reviews scraper with Python? Yes. Call the actor using the Apify SDK (apify-client). See the Python example above. No Google API key needed.

Can I export Google reviews to CSV or Excel? Yes. All Apify datasets export to JSON, CSV, Excel, XML, RSS, and HTML from the console, or via the Dataset API. Each review is a separate row, so you can filter, sort, and analyze directly in a spreadsheet.

Does it scrape reviewer profiles and photos? Yes. Every review includes the reviewer's name, profile photo URL, profile link, total review count, and Local Guide status. Use this to filter reviews by reviewer credibility or to analyze reviewer patterns.

Can I use this for sentiment analysis? Yes. The full review text field is extracted cleanly without HTML, ready to feed into NLP pipelines, sentiment analysis tools, or LLM prompts for batch analysis.