Google Maps Reviews Scraper
$1/1000
results
Google Maps Reviews Scraper
Extract Google Maps business reviews with sort order and max review controls.
$1/1000
results
Extract Google Maps business reviews with sort order and max review controls.
Google Maps Reviews Scraper extracts customer reviews from Google Maps businesses using place IDs or Maps URLs. For each target, it returns structured JSON with reviewer identity, star rating, review text, photos, likes, timestamps, language, translations, and owner replies — ready for reputation monitoring, NLP, and product analytics.
Customer experience teams, agencies, and researchers use this scraper to pull review corpora at scale without clicking through Maps by hand. Control volume with maxReviews and prioritize signal with sortOrder (newest, highest_rating, or lowest_rating).
Whether you are tracking a single flagship location or hundreds of franchise stores, results arrive as clean JSON you can load into warehouses, sentiment pipelines, or alert systems. Pair it with the business profile scrapers when you need listing metadata alongside review text.
Use this actor whenever you need reliable Google Maps review extraction with predictable pagination-style limits and sorting — not raw HTML dumps.
targets listmaxReviewsGoogle Maps Reviews Scraper extracts customer reviews from Google Maps businesses using place IDs or Maps URLs. For each target, it returns structured JSON with reviewer identity, star rating, review text, photos, likes, timestamps, language, translations, and owner replies — ready for reputation monitoring, NLP, and product analytics.
Customer experience teams, agencies, and researchers use this scraper to pull review corpora at scale without clicking through Maps by hand. Control volume with maxReviews and prioritize signal with sortOrder (newest, highest_rating, or lowest_rating).
Whether you are tracking a single flagship location or hundreds of franchise stores, results arrive as clean JSON you can load into warehouses, sentiment pipelines, or alert systems. Pair it with the business profile scrapers when you need listing metadata alongside review text.
Use this actor whenever you need reliable Google Maps review extraction with predictable pagination-style limits and sorting — not raw HTML dumps.
targets listmaxReviews| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
| targets | array of string | Yes | — | One or more place IDs, hex CIDs, or Google Maps place URLs to scrape reviews from. |
| maxReviews | string (numeric) | No | "100" | Maximum number of reviews to collect per business. Higher values increase cost and runtime. |
| sortOrder | string | No | "newest" | Review sort mode: newest, highest_rating, or lowest_rating. |
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
| targets | array of string | Yes | — | One or more place IDs, hex CIDs, or Google Maps place URLs to scrape reviews from. |
| maxReviews | string (numeric) | No | "100" | Maximum number of reviews to collect per business. Higher values increase cost and runtime. |
| sortOrder | string | No | "newest" | Review sort mode: newest, highest_rating, or lowest_rating. |
targets — Each entry is resolved independently; reviews are tagged with the corresponding placeId when available.maxReviews — Soft cap per place. Use smaller values for sampling; raise for full history pulls (subject to availability).sortOrder — newest is best for monitoring; lowest_rating helps CX triage; highest_rating surfaces praise and social proof.targets — Each entry is resolved independently; reviews are tagged with the corresponding placeId when available.maxReviews — Soft cap per place. Use smaller values for sampling; raise for full history pulls (subject to availability).sortOrder — newest is best for monitoring; lowest_rating helps CX triage; highest_rating surfaces praise and social proof.Each result is one review object.
Each result is one review object.
| Field | Type | Description |
|---|---|---|
| reviewId | string \| null | Unique review ID |
| placeId | string \| null | Business place ID (falls back to resolved target) |
| authorId | string \| null | Reviewer / contributor ID (usable with the Reviewer scraper) |
| authorName | string \| null | Display name |
| authorProfile | string \| null | Google Maps contributor profile URL |
| authorPhoto | string \| null | Avatar image URL |
| authorReviewCount | number \| null | Total reviews by this author |
| authorPhotoCount | number \| null | Photos contributed by this author |
| rating | number \| null | Star rating (typically 1–5) |
| reviewText | string \| null | Review body |
| likes | number \| null | Helpful / like count |
| publishedAt | string \| null | Publish time |
| updatedAt | string \| null | Edit / update time |
| language | string \| null | Detected language code |
| translatedText | string \| null | Translated body when provided |
| ownerReply | string \| null | Business owner response text |
| ownerReplyDate | string \| null | Owner reply timestamp |
| reviewPhotos | array \| null | Photos attached to the review |
| Field | Type | Description |
|---|---|---|
| reviewId | string \| null | Unique review ID |
| placeId | string \| null | Business place ID (falls back to resolved target) |
| authorId | string \| null | Reviewer / contributor ID (usable with the Reviewer scraper) |
| authorName | string \| null | Display name |
| authorProfile | string \| null | Google Maps contributor profile URL |
| authorPhoto | string \| null | Avatar image URL |
| authorReviewCount | number \| null | Total reviews by this author |
| authorPhotoCount | number \| null | Photos contributed by this author |
| rating | number \| null | Star rating (typically 1–5) |
| reviewText | string \| null | Review body |
| likes | number \| null | Helpful / like count |
| publishedAt | string \| null | Publish time |
| updatedAt | string \| null | Edit / update time |
| language | string \| null | Detected language code |
| translatedText | string \| null | Translated body when provided |
| ownerReply | string \| null | Business owner response text |
| ownerReplyDate | string \| null | Owner reply timestamp |
| reviewPhotos | array \| null | Photos attached to the review |
Optional fields (translatedText, ownerReply, reviewPhotos, etc.) are null when not present on the review.
Optional fields (translatedText, ownerReply, reviewPhotos, etc.) are null when not present on the review.
{
"reviewId": "ChZDSUhNMG9nS0VJQ0FnSURQd3R3d1JnEAE",
"placeId": "ChIJrTLr-GyuEmsRBfy61i59si0",
"authorId": "104627067190717677750",
"authorName": "Maria Alvarez",
"authorProfile": "https://www.google.com/maps/contrib/104627067190717677750",
"authorPhoto": "https://lh3.googleusercontent.com/a-/AOh14Ggmaria",
"authorReviewCount": 86,
"authorPhotoCount": 42,
"rating": 5,
"reviewText": "Best pepperoni slice in the Village. Thin crust, perfect cheese pull, and the line moves fast.",
"likes": 24,
"publishedAt": "2026-05-18T21:04:11.000Z",
"updatedAt": null,
"language": "en",
"translatedText": null,
"ownerReply": "Thanks Maria — glad you loved the pepperoni!",
"ownerReplyDate": "2026-05-19T12:10:00.000Z",
"reviewPhotos": [
"https://lh3.googleusercontent.com/geougc-cs/review-photo-1.jpg"
]
}
{
"reviewId": "ChZDSUhNMG9nS0VJQ0FnSURQd3R3d1JnEAE",
"placeId": "ChIJrTLr-GyuEmsRBfy61i59si0",
"authorId": "104627067190717677750",
"authorName": "Maria Alvarez",
"authorProfile": "https://www.google.com/maps/contrib/104627067190717677750",
"authorPhoto": "https://lh3.googleusercontent.com/a-/AOh14Ggmaria",
"authorReviewCount": 86,
"authorPhotoCount": 42,
"rating": 5,
"reviewText": "Best pepperoni slice in the Village. Thin crust, perfect cheese pull, and the line moves fast.",
"likes": 24,
"publishedAt": "2026-05-18T21:04:11.000Z",
"updatedAt": null,
"language": "en",
"translatedText": null,
"ownerReply": "Thanks Maria — glad you loved the pepperoni!",
"ownerReplyDate": "2026-05-19T12:10:00.000Z",
"reviewPhotos": [
"https://lh3.googleusercontent.com/geougc-cs/review-photo-1.jpg"
]
}