Google Maps Reviews Scraper - A tool to scrape reviews from Google Maps with a simple API. Get reviews information like reviewer details and the review text itself.
We provide the results in a structured JSON format, eliminating the need for parsing, coding, proxies, or any other web scraping headaches for developers.
You can also check out the full documentation here: Google Maps Reviews API
Using a simple GET request, you can retrieve Google Maps Reviews search results:
https://serpapi.com/search.json?engine=google_maps_reviews&data_id={PLACE_DATA_ID}&api_key=YOUR_API_KEY
- Register for free at SerpApi to get your API Key
data_idparameter: Parameter defines the Google Maps data ID. Find the data ID by using our Google Maps API.
Here are some code examples based on your favorite programming languages.
curl --get https://serpapi.com/search \
-d api_key="YOUR_API_KEY" \
-d engine="google_maps_reviews" \
-d hl="en" \
-d data_id="0x89c259af336b3341:0xa4969e07ce3108de"Ensure to replace the data_id value with the place data_id you want.
Preparation for accessing the SerpApi API in Python
Step 1:
Create a new main.py file. (You can name it whatever you want)
Step 2:
Install requests package with:
pip install requests
Step 3:
Add this code to your file:
import requests
SERPAPI_API_KEY = "YOUR_SERPAPI_API_KEY"
params = {
"api_key": SERPAPI_API_KEY,
"engine": "google_maps_reviews",
"data_id": "0x89c259af336b3341:0xa4969e07ce3108de"
}
search = requests.get("https://serpapi.com/search", params=params)
response = search.json()
print(response)If you're only interested in the reviews, you can print them from the response directly. It's an array of reviews:
print(response["reviews"])Step 1:
Install the SerpApi JavaScript package:
npm install serpapi
Step 2:
Create a new index.js file. (You can name it whatever you want)
Step 3:
Add this to your file for basic search:
const { getJson } = require("serpapi");
getJson({
api_key: API_KEY, // Put your API Key
engine: "google_maps_reviews",
hl: "en",
data_id: "0x89c259af336b3341:0xa4969e07ce3108de"
}, (json) => {
console.log(json["reviews"]);
});We're printing the reviews from Google Maps in this case.
While you can use our APIs using a simple GET request with any programming language, you can also see our ready-to-use libraries here: SerpApi Integrations.
Please find the parameters for the Google Maps Reviews API below:
| Name | Description | Requirement |
|---|---|---|
| data_id | Parameter defines the Google Maps data ID. | Required |
| hl | Parameter defines the language to use for the Google Maps search. It's a two-letter language code. (e.g.,en for English, es for Spanish, or fr for French). | Optional |
| sort_by | Parameter is used for sorting and refining results. Available options: qualityScore, newestFirst, ratingHigh, or ratingLow |
Optional |
| topic_id | Parameter defines the ID of the topic you want to use for filtering reviews. You can access IDs inside our structured JSON response. topic_id and query parameters can't be used together. |
Optional |
| query | Parameter defines a text query you want to use for filtering reviews. | Optional |
| Pagination | ||
| num | Parameter defines the maximum number of results to return. It ranges from 1 to 20. It defaults to 10. Parameter cannot be used on the initial page when neither next_page_token, topic_id, nor query is set. It always returns 8 results. | Optional |
You can also use place_id instead of data_id. It can also be found using our Google Maps API
Google Maps Reviews can return different information from time to time, depending on what information is available on their side. Here is what the reviews array may contain:
"reviews": [
{
"link": "String - Link to the review",
"user": {
"name": "String - Name of the user",
"link": "String - Link to the user profile",
"contributor_id": "String - The contributor id of the user, can be used in SerpApi's Google Maps Contributor Reviews API",
"thumbnail": "String - Link to the user profile picture",
"local_guide": "Boolean - Whether the user is a local guide",
"reviews": "Integer - Number of reviews the user has made",
"photos": "Integer - Number of photos the user has uploaded"
},
"source": "String - Source of the review",
"review_id": "String - ID of the review",
"likes": "Integer - Number of likes the review has",
"rating": "Float - Rating of the review",
"date": "String - Date of the review",
"iso_date": "String - ISO 8601 date of the review",
"iso_date_of_last_edit": "String - Date when the user last edited the review. Shown in ISO 8601 format",
"snippet": "String - Snippet of the review (can be a mix of original and translated text)",
"extracted_snippet": {
"original": "String - Original review snippet",
"translated": "String - Translated review snippet according to the `hl` parameter"
},
"details": {
"service/criterion e.g. parking, food": "String - Details of the service/criterion"
},
"translated_details": {
"service/criterion e.g. parking, food": "String - Translated details of the service/criterion (partial)"
},
"images": "Array - Images of the review",
"response": {
"date": "String - Date of the response",
"iso_date": "String - ISO 8601 date of the response",
"iso_date_of_last_edit": "String - Date when the user last edited the response. Shown in ISO 8601 format",
"snippet": "String - Text of the response (can be a mix of original and translated text)",
"extracted_snippet": {
"original": "String - Original response snippet",
"translated": "String - Translated response snippet according to the `hl` parameter"
},
}
},
]Here are some use cases, but not limited to, for the Google Maps Reviews API:
- Competitor Benchmarking: Quickly compare ratings, sentiment, and customer feedback across competing businesses in any location.
- Location & Market Research: Use review volume and sentiment trends to evaluate whether a neighborhood is suitable for opening a new business.
- Automated Review Monitoring: Continuously track new reviews and get alerts when ratings drop or complaints spike.
- Sentiment & Topic Analysis: Extract insights from customer reviews to understand common praises, complaints, and improvement opportunities.
- Local SEO & Reputation Management: Analyze and manage online reputation by tracking rating trends and identifying high-impact positive or negative reviews.
No code solution:
- Google Maps Reviews to Google Sheets Scraper
- How to Scrape Google Maps Reviews in Make
- How to Scrape Google Maps Reviews with n8n and Google Sheets
Interesting use cases:
- How AI Can Predict the Success of Your Business Using Data from Google Maps
- Scrape Google Maps Reviews for London's Best Roast Dinner!
- Scrape Google Maps Reviews for London's Best Roast Dinner! (Part 2)
Feel free to reach out via [email protected].
Check other Google Scraper from SerpApi.
