Google Maps Reviews Scraper avatar

Google Maps Reviews Scraper

Pricing

from $0.25 / 1,000 review scrapeds

Go to Apify Store
Google Maps Reviews Scraper

Google Maps Reviews Scraper

Scrape all reviews from any Google Maps place: full text, star ratings, detailed per-aspect ratings, reviewer profiles, owner responses, and review images. Just paste place URLs.

Pricing

from $0.25 / 1,000 review scrapeds

Rating

0.0

(0)

Developer

Thodor

Thodor

Maintained by Community

Actor stats

0

Bookmarked

1

Total users

0

Monthly active users

21 hours ago

Last modified

Share

Scrape every review from any Google Maps place — 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.

Input

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.

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

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 — Analyze what customers value most in a category by mining review text and detailed ratings
  • Review response tracking — Monitor which reviews have owner responses and measure response times

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.