Google Maps Reviews Scraper - Ratings, Text, Replies avatar

Google Maps Reviews Scraper - Ratings, Text, Replies

Pricing

from $0.08 / 1,000 review delivereds

Go to Apify Store
Google Maps Reviews Scraper - Ratings, Text, Replies

Google Maps Reviews Scraper - Ratings, Text, Replies

Scrape Google Maps reviews and Google reviews of any place worldwide: rating, full text plus translation, date, owner reply, photo count and food/service scores. Sort by newest, date filter, onlyNew for daily runs. No login. Error rows are free.

Pricing

from $0.08 / 1,000 review delivereds

Rating

0.0

(0)

Developer

Scrapewise Data

Scrapewise Data

Maintained by Community

Actor stats

0

Bookmarked

1

Total users

0

Monthly active users

9 minutes ago

Last modified

Features

Limited permissions

Share

Google Maps Reviews Scraper: Google reviews with ratings, text and owner replies

Scrape Google Maps reviews of any place worldwide with no login or API key: rating, full text, translation, date, owner reply and food, service and price scores. US$ 0.09 per 1,000 reviews, more than 2,000 reviews per place in our tests.

What does this Google Maps Reviews Scraper do?

  • Reads the reviews of restaurants, hotels, shops, clinics and attractions from a place link, a Share link, a Place ID, a feature ID or a CID.
  • Sorts them like Google Maps does (newest, most relevant, highest, lowest) and stops at a date you choose.
  • Returns the original text plus Google's translation into your language, the owner reply, the photo count and the guided scores restaurants get.
  • Delivers only reviews you have not received before when onlyNew is on, so a daily schedule pays only for new reviews.
  • Leaves reviewers out: no names, profile links or avatars.

Who uses it

  • Multi-location brands and agencies: a daily feed of new reviews for every branch, and for the competitors next door.
  • Restaurant and hotel groups: food, service, atmosphere and price-per-person scores to benchmark places side by side.
  • Data and AI teams: review text, ready for sentiment analysis or an LLM summary of complaints.
  • Support teams: every new 1 or 2 star review posted to Slack or a Google Sheet minutes after the run.

How much does it cost to scrape Google Maps reviews?

WhatPrice
Review deliveredUS$ 0.09 per 1,000 reviews (US$ 0.00009 each) on the Free plan, lower on paid plans
Run startUS$ 0.005 per run
  • 5,000 reviews = about US$ 0.46 on the Free plan.
  • The place details (name, address, rating, total) are included; there is no extra event for them.
  • Error rows, duplicates and reviews already delivered in earlier runs (onlyNew) are never charged. maxReviews is a hard cap per place, and a spending limit set on the run stops it cleanly with everything delivered so far.

How to scrape Google Maps reviews

  1. Open the place on Google Maps and copy the address bar link, or its Share link.
  2. Paste it into Place links (or a Place ID into Place IDs) and set Max reviews per place.
  3. Click Start. Reviews appear in the Output tab and export to JSON, CSV or Excel.

The same run as JSON input:

{
"startUrls": ["https://www.google.com/maps/place/Katz's+Delicatessen/data=!4m2!3m1!1s0x89c2598f7ff4aa09:0x313547e757cb8cea"],
"maxReviews": 50,
"sort": "newest"
}

Several places, only reviews from the last 30 days, with labels and translations in English:

{
"startUrls": [
"https://maps.app.goo.gl/your-share-link",
"https://www.google.com/maps/place/Dishoom+Covent+Garden/data=!4m2!3m1!1s0x487604b7c7d895c5:0x9c3887a3670e0076"
],
"placeIds": ["ChIJCar0f49ZwokR6ozLV-dHNTE"],
"maxReviews": 0,
"sort": "newest",
"reviewsNewerThan": "30 days",
"language": "en"
}

Daily monitoring: schedule the run once a day with "onlyNew": true and only reviews you have not received before come back (and are charged).

Google Maps reviews scraper input

FieldWhat it does
startUrlsGoogle Maps place links, one per line: the address bar link after opening a place, a Share link (maps.app.goo.gl), or any link that contains a feature ID (0x...:0x...), a Place ID (ChIJ...) or a cid= number.
placeIdsFeature IDs, Google Place IDs (ChIJ...) or numeric CIDs. No API key needed.
maxReviewsReviews per place (default 100). 0 = every review Google lists for the place.
sortnewest (default), relevant, highest, lowest: the same orders as Google Maps.
languageLanguage code (en, fr, de, es, ja, pt-BR...). Sets relative dates, guided rating labels and the translation. The original text always comes too.
reviewsNewerThanA date (2026-01-31) or a period (30 days, 2 weeks, 6 months, 1 year). With newest the run stops at the first older review.
onlyNewDeliver only reviews not delivered in earlier runs for the same place (for schedules).
proxyConfigurationApify Proxy by default.

Inputs written for other Google Maps review tools keep working: startUrls as objects with url, placeUrls, urls, placeId, reviewsSort (newest, mostRelevant, highestRanking, lowestRanking), sortBy, reviewsStartDate, maxReviewsPerPlace, reviewsLimit, hl and onlyNewReviews are read too.

Google Maps review data you get

Each review is one row with type: "review":

FieldWhat it is
featureId, placeIdGoogle's feature ID (0x...:0x...) and Place ID (ChIJ...) of the place
placeName, placeAddress, placeCategoryName, address and main category of the place
placeRating, placeTotalReviewsOverall star rating and total review count shown on Google Maps
placeUrlLink to the place on Google Maps
reviewId, reviewUrlGoogle's review ID and a direct link to the review
ratingStars, 1 to 5
textFull review text in the language it was written in (null for rating-only reviews)
textTranslatedGoogle's translation into language, when the review was written in another language
languageLanguage code of the original text (en, fr, zh-Hans...)
publishedAt, relativeDateExact publish date (UTC, ISO 8601) and Google's relative label ("2 days ago")
ownerReply{text, relativeDate} of the business owner's answer, or null
photosCountNumber of photos attached to the review (the photos themselves are not collected)
reviewerReviewCountHow many reviews the reviewer has written in total (an anonymous count, no identity)
questionnaireGuided answers as a dictionary: Food, Service, Atmosphere (1 to 5), Price per person, Meal type, Wait time, Reservation, Parking...
sortedBy, sourceInput, scrapedAtSort used, the link or ID you gave, and when the row was collected

One real row from 17 Oct 2026:

{
"type": "review",
"featureId": "0x487604b7c7d895c5:0x9c3887a3670e0076",
"placeId": "ChIJxZXYx7cEdkgRdgAOZ6OHOJw",
"placeName": "Dishoom Covent Garden",
"placeAddress": "12 Upper St Martin's Ln, London WC2H 9FB, United Kingdom",
"placeCategory": "Indian restaurant",
"placeRating": 4.7,
"placeTotalReviews": 29928,
"placeUrl": "https://www.google.com/maps/place/?q=place_id:ChIJxZXYx7cEdkgRdgAOZ6OHOJw",
"reviewId": "Ci9DQUlRQUNvZENodHljRjlvT2pOTU1qYzNOamhVTmxaS00ySnJXRGRoYW5ab1ltYxAB",
"rating": 5,
"text": "One of the best meals we've ever had. Incredibly impressed by the quality, freshness, and flavours. Service was lovely. We will be back!",
"textTranslated": null,
"language": "en",
"publishedAt": "2026-10-17T12:12:19.021Z",
"relativeDate": "11 hours ago",
"ownerReply": null,
"photosCount": 0,
"reviewerReviewCount": 272,
"questionnaire": {
"Meal type": "Lunch",
"Price per person": "£80–90",
"Food": 5,
"Service": 5,
"Atmosphere": 5,
"Reservation": "Reservation required",
"Wait time": "No wait"
},
"sortedBy": "newest"
}

An owner reply looks like {"text": "We're so glad you made the trek to come visit us! ...", "relativeDate": "a week ago"}.

Errors you may see

Every error is a row with errorCode and is never charged:

errorCodeMeaning
INVALID_INPUTA field has a wrong value, or a line is not a Google Maps place link or ID
NOT_FOUNDThe link or ID does not point to a place (for example a search or a map point instead of a place)
NO_REVIEWSThe place has no reviews, or none newer than reviewsNewerThan
BLOCKEDGoogle refused every attempt for this place; run it again in a few minutes
UNEXPECTEDSomething else stopped the run; the message says what

Integrations, scheduling and AI agents

  • Schedule a daily run with onlyNew in Apify schedules to get only the new reviews of your places every morning.
  • Export as JSON, CSV, Excel or XML, or read the dataset from the Apify API.
  • Connect it to Make, n8n, Zapier, Slack or Google Sheets through Apify integrations, for example to post every new 1 or 2 star review to a support channel.
  • AI agents: call it as a tool through the Apify MCP server in Claude, ChatGPT, Cursor or any MCP client, for example "get the newest 200 reviews of this restaurant and summarize the complaints about service".

Google Maps reviews scraper FAQ

Do I need a Google account or an API key? No. The reviews come from the same public data Google Maps shows to any visitor, without login.

How do I get the place link? Open the place on Google Maps and copy the address bar, or use Share and copy the link. A plain search link (/maps/search/...) or a link with only a name and no ID is not enough: open the place first.

Can I use a Google Place ID? Yes, put it in placeIds (ChIJ...). Feature IDs (0x...:0x...) and numeric CIDs work too.

In which language does the text come? Always in the language the reviewer wrote it, plus textTranslated in your language when they differ. language also changes relativeDate and the questionnaire labels.

How many reviews can I get per place? As many as Google lists for the place: thousands for popular places (we collected more than 2,000 per place in tests and the list kept going). Use maxReviews: 0 for all of them.

How does onlyNew work? The Actor keeps the IDs of the reviews it delivered for each place in your account. With the newest sort it stops as soon as it reaches a review it delivered before, so a daily run of a busy place costs only a few requests.

Why is there no reviewer name? Reviewers are private individuals. This Actor deliberately leaves out names, profile links, avatars and reviewers' photos; the reviewer is only described by an anonymous review count.

Is it legal? The Actor reads public reviews and leaves personal data of reviewers out by design. You are responsible for how you use the data under the laws that apply to you.

Something broke or a field is missing? Open an issue on the Actor page; issues are answered within a day.

Limitations

  • Google Maps does not offer text search inside reviews here; filter the dataset after the run.
  • Likes on reviews are not included, because their value could not be confirmed as reliable.
  • questionnaire exists mainly for restaurants and some hotels and stores; for other places it is an empty object.
  • The owner reply has a relative date only (Google does not send the exact date for it).
  • Reviews are listed as Google serves them; very old places may stop at the oldest review Google keeps in the list.

Try it now

Click Start with the example input: 50 newest reviews of one restaurant cost about US$ 0.01, start fee included. Need another field, a filter or a source? Open an issue in the Issues tab of this page; user requests decide what the next version adds.

Changelog

  • 2026-11-10: lower price: US$ 0.09 per 1,000 reviews on Free, less on paid plans.
  • 17 Oct 2026: first version: place links, Share links, feature IDs, Place IDs and CIDs; four sort orders; original text plus translation; owner replies; guided ratings; reviewsNewerThan; onlyNew for schedules.