Google Maps Reviews Scraper API avatar

Google Maps Reviews Scraper API

Pricing

from $0.20 / 1,000 results

Go to Apify Store
Google Maps Reviews Scraper API

Google Maps Reviews Scraper API

Get all Google Maps reviews - fast and at scale. Scrape millions of reviews with text, ratings, dates, reviewer profiles, owner replies, photos & business data. Powerful Google Maps Reviews Scraper & API with bulk scraping and structured exports.

Pricing

from $0.20 / 1,000 results

Rating

0.0

(0)

Developer

Poidata

Poidata

Maintained by Community

Actor stats

1

Bookmarked

2

Total users

1

Monthly active users

a day ago

Last modified

Share

Google Maps Reviews Scraper & API

Extract Google Maps reviews at scale and get clean, structured data ready for analysis, databases, applications, or AI.

Enter one or thousands of Google Maps URLs or Place IDs and collect up to 1 million reviews per place, including review text, star ratings, exact publication dates, reviewer profiles, owner replies, photos, business details, addresses, coordinates, and more.

Run the Google Maps Reviews Scraper directly from Apify, or integrate it into your application as a Google Maps Reviews API / Google Maps Reviews Scraper API.

What you can doSupported
🗺️ Scrape one or thousands of places
🗂️ Collect all available reviews
🔍 Filter reviews by date or keyword
🌐 Translate reviews
↕️ Sort reviewsNewest, relevant, highest or lowest rated
📅 Get exact review dates
💬 Collect owner responses
📸 Collect review photos
👤 Collect reviewer profilesOptional
⚡ Process places in parallel
📦 Fixed structured output55 fields
📤 ExportJSON, CSV, Excel, XML, HTML
🔌 API access
⏰ Schedules, webhooks & MCP

📦 What data can you scrape?

Each result combines review, reviewer, business, address, and input data in one structured record.

DataIncluded fields
ReviewsText, translated text, 1–5 star rating, exact and relative dates, review ID, review URL, likes, photos, owner response, source, visit date, language, detailed ratings
ReviewerName, ID, Google Maps profile URL, review count, profile photo, Local Guide status
BusinessName, Place ID, address, coordinates, categories, rating, review count, Maps URL, price level, CID, image, hotel stars, closed status
AddressNeighborhood, street, city, state/region, ZIP/postal code, country
Trace dataInput URL, input Place ID, search URL, search string, language, rank, Knowledge Graph ID, scraping timestamp

Reviewer personal data can be disabled when it is not needed.


🚀 How to scrape Google Maps reviews

1. Add Google Maps places

Provide one or multiple:

  • Place IDs — recommended
  • Google Maps place URLs
  • Google Maps search URLs
  • Google Maps ?cid= URLs

Example Place ID:

ChIJB4cC_1RYwokRu6mRBD_lqO8

2. Configure the scraper

OptionWhat it does
Number of reviewsMaximum reviews to fetch per place, up to 1 million
Collect all reviewsCollect every available review
Sort reviews byNewest, most relevant, highest rated, or lowest rated
Only reviews newer than…Exact date such as 2024-01-01 or relative period such as 3 months
Filter by keywordsKeep reviews containing specified words
Skip reviews without textEnabled by default
LanguageTranslate reviews into this language. Each review comes back with its original text plus a translation into the chosen language (e.g. a Chinese review plus its English translation). Defaults to English; choose All languages to keep the API default
Reviews originGoogle only or all supported sources
Personal dataInclude reviewer names, IDs, profile URLs, and photos

Note: Date filtering requires reviews to be sorted by newest.

3. Run and export

Run the Actor from the Apify Console or through the Apify API.

Results are stored in an Apify dataset and can be exported as:

JSON · CSV · Excel · XML · HTML

Google Maps Reviews Scraper — input form


🔌 Google Maps Reviews API

Need Google Maps reviews programmatically?

This Actor also works as a Google Maps Reviews API and Google Maps Reviews Scraper API. Send Google Maps places from your application, start the scraper automatically, and retrieve structured review data from the resulting Apify dataset.

cURL example

curl -X POST "https://api.apify.com/v2/acts/your-actor/runs?token=YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"fids": ["ChIJB4cC_1RYwokRu6mRBD_lqO8"],
"maxReviews": 100
}'

Python example

from apify_client import ApifyClient
client = ApifyClient("YOUR_TOKEN")
run = client.actor("your-actor").call(run_input={
"fids": ["ChIJB4cC_1RYwokRu6mRBD_lqO8"],
"maxReviews": 100,
})
items = client.dataset(
run["defaultDatasetId"]
).list_items().items

The example requests up to 100 Google Maps reviews and returns them as structured dataset records.


Example Google Maps review output

The dataset opens with an overview table, and each record can be expanded to see all available fields.

Google Maps Reviews Scraper — output overview

Google Maps Reviews Scraper — output record with all fields

Example record:

{
"text": "今晚的表演太精彩了,全家人都很喜歡!",
"textTranslated": "Tonight's show was amazing — the whole family loved it!",
"publishAt": "a month ago",
"publishedAtDate": "2026-07-14T18:32:07.120Z",
"likesCount": 3,
"reviewId": "Ci9GQUtF...",
"reviewUrl": "https://www.google.com/maps/reviews/...",
"stars": 5,
"rating": null,
"responseFromOwnerDate": null,
"responseFromOwnerText": null,
"reviewImageUrls": [
"https://lh3.googleusercontent.com/gps-cs-s/EXAMPLE_REVIEW_PHOTO=k-no"
],
"reviewContext": {},
"reviewDetailedRating": {},
"reviewOrigin": "Google",
"visitedIn": null,
"originalLanguage": "zh-Hant",
"translatedLanguage": "en",
"name": "Jordan Lee",
"reviewerId": "1001001001001001001",
"reviewerUrl": "https://www.google.com/maps/contrib/1001001001001001001?hl=en",
"reviewerNumberOfReviews": 127,
"reviewerPhotoUrl": "https://lh3.googleusercontent.com/a/EXAMPLE_REVIEWER_PHOTO",
"isLocalGuide": true,
"title": "The Grand Pavilion Theatre",
"placeId": "ChIJBo5bxCGffToRtUct8MOp6FE",
"address": "18 Riverside Ave, Springfield, IL 62704",
"location": {
"lat": 39.7817,
"lng": -89.6501
},
"categories": [
"Performing arts theater"
],
"isAdvertisement": false,
"categoryName": "Performing arts theater",
"totalScore": 4.7,
"permanentlyClosed": false,
"temporarilyClosed": false,
"reviewsCount": 5123,
"url": "https://www.google.com/maps/...",
"price": null,
"cid": "5902153970682251189",
"fid": "0x3a7d9f21c45b8e06:0x51e8a9c3f02d47b5",
"imageUrl": "https://lh3.googleusercontent.com/...",
"hotelStars": null,
"scrapedAt": "2026-08-11T15:04:24.683Z",
"searchPageUrl": null,
"searchString": "FID: 0x3a7d9f21c45b8e06:0x51e8a9c3f02d47b5",
"inputPlaceId": null,
"inputStartUrl": null,
"language": "en",
"rank": null,
"kgmid": "/m/0z9x7w5",
"neighborhood": "Downtown",
"street": "18 Riverside Ave",
"city": "Springfield",
"countryCode": "US",
"postalCode": "62704",
"state": "Illinois"
}

Google Maps Reviews Scraper output schema

Every result follows a predictable 55-field schema.

45 fields are always present. If Google Maps does not provide a value, the field contains null. Another 10 fields are emitted when relevant.

This consistent structure makes the output easy to use with APIs, databases, ETL pipelines, dashboards, analytics systems, and AI applications.

Review fields

FieldTypeDescription
textstring / nullReview text
textTranslatedstring / nullTranslated review text
publishAtstring / nullRelative publication time
publishedAtDatestring / nullExact ISO 8601 publication date
likesCountnumberNumber of likes (optional)
reviewIdstringUnique review identifier
reviewUrlstring / nullDirect review URL
starsnumberStar rating from 1–5
ratingnumber / nullRating from another platform when present
responseFromOwnerDatestring / nullOwner response date
responseFromOwnerTextstring / nullOwner response
reviewImageUrlsarray / nullReview photos (optional)
reviewContextobjectContext supplied by Google (optional)
reviewDetailedRatingobjectPer-aspect ratings (optional)
reviewOriginstringReview source, such as "Google"
visitedInstring / nullVisit date
originalLanguagestring / nullOriginal language
translatedLanguagestring / nullTranslation language

Reviewer fields

FieldTypeDescription
namestring / nullReviewer display name
reviewerIdstringGoogle profile ID
reviewerUrlstring / nullGoogle Maps profile URL
reviewerNumberOfReviewsnumber / nullNumber of reviews written
reviewerPhotoUrlstring / nullProfile photo
isLocalGuidebooleanGoogle Local Guide status (optional)

Google Maps place fields

FieldTypeDescription
titlestringBusiness name
placeIdstring / nullGoogle Maps Place ID
addressstring / nullFull address
locationobject / null{ lat, lng }
categoriesarrayGoogle Maps categories
isAdvertisementbooleanWhether result is an advertisement
categoryNamestring / nullPrimary category
totalScorenumber / nullAverage rating
permanentlyClosedbooleanPermanently closed status
temporarilyClosedbooleanTemporarily closed status
reviewsCountnumber / nullTotal business reviews
urlstring / nullGoogle Maps business URL
pricestring / nullPrice level
cidstring / nullGoogle Maps customer ID
fidstring / nullGoogle Maps place ID
imageUrlstring / nullMain business image
hotelStarsstring / nullHotel star rating
scrapedAtstringISO 8601 scraping timestamp

Address & input fields

FieldTypeDescription
neighborhoodstring / nullNeighborhood
streetstring / nullStreet
citystring / nullCity
statestring / nullState or region
postalCodestring / nullZIP / postal code
countryCodestring / nullTwo-letter country code
searchPageUrlstring / nullAssociated search page (optional)
searchStringstring / nullPlace ID or search string (optional)
inputPlaceIdstring / nullSupplied Place ID (optional)
inputStartUrlstring / nullSupplied Google Maps URL (optional)
languagestring / nullRequested translation language (empty for "All languages")
ranknumber / nullResult position (optional)
kgmidstring / nullGoogle Knowledge Graph ID

⚡ Built for bulk Google Maps review scraping

Submit large lists of locations in a single run instead of processing each business individually.

Multiple Google Maps places are processed in parallel. If a timeout or slow response interrupts processing, the Actor retries and continues from where it stopped, helping prevent duplicate or lost reviews during long-running jobs.

Parallel processing by Apify plan

Apify planPlaces in parallel
Free3
Bronze12
Silver32
Gold and higher64

Parallelism is automatic—no additional setup or input is required.

Higher plans process more places simultaneously, allowing large Google Maps review datasets to finish faster.

If the caller's plan cannot be determined, a safe default is used. The Actor owner can also configure a fixed value.


💡 What can Google Maps review data be used for?

Use caseWhat you can do
Reputation monitoringTrack new reviews, ratings, and customer feedback
Competitor researchAnalyze competitors' strengths, complaints, and customer preferences
Voice-of-customer analysisFind recurring praise, complaints, preferences, and feature requests
Local SEO analysisMonitor ratings, review counts, dates, and newly published reviews
AI & ML datasetsExport structured reviews for sentiment analysis, classification, research, and other data-processing workflows

Integrations

Use the Google Maps Reviews Scraper manually or connect it to automated workflows.

IntegrationWhat you can do
Apify APIRun scraping programmatically
SchedulesAutomatically run the scraper at specified intervals
WebhooksTrigger another system when a run finishes
ZapierSend review data into automated workflows
MakeConnect review data with other applications
n8nBuild custom automation pipelines
MCPLet compatible AI agents run the Actor
Your backendIntegrate directly through the API

Schedules

Use Apify schedules to run the scraper automatically, such as a nightly job for reputation monitoring.

Each run creates a fresh dataset that you can query or export.

Webhooks

Use Apify webhooks to notify another service when a run finishes.

Webhooks can connect to Zapier, Make, n8n, Slack, or your own backend.

Example:

{
"eventType": "ACTOR.RUN.SUCCEEDED",
"actorId": "your-actor",
"runId": "RUN_ID",
"resource": {
"status": "SUCCEEDED",
"defaultDatasetId": "DATASET_ID",
"stats": {
"itemCount": 1234
},
"startedAt": "2026-08-11T15:00:00.000Z",
"finishedAt": "2026-08-11T15:03:00.000Z"
}
}

Use defaultDatasetId to retrieve the records through the Apify API.

For a machine-readable run summary without parsing logs, read the run-summary key from the run's key-value store or use the single-line {"event":"run-complete", ...} JSON log entry.

Zapier, Make, n8n and other no-code tools

The input schema maps directly to no-code workflow forms.

Provide Google Maps URLs or Place IDs, configure review limits and filters, then send the output dataset to your next step.

{
"startUrls": [
"https://www.google.com/maps/place/..."
],
"fids": [
"ChIJ..."
]
}

Results can be exported as JSON, CSV, Excel, XML, or HTML.

MCP and AI agents

Use the Actor from compatible AI assistants such as Claude Desktop, Cursor, or ChatGPT through Apify's official MCP server.

Example configuration:

{
"mcpServers": {
"apify": {
"command": "npx",
"args": [
"-y",
"@apify/actors-mcp-server"
],
"env": {
"APIFY_TOKEN": "YOUR_TOKEN"
}
}
}
}

An AI agent can then:

  1. Accept Google Maps URLs or Place IDs
  2. Configure maxReviews, sorting, and filters
  3. Run the Actor
  4. Read the resulting dataset

This allows users to request Google Maps reviews in plain language and receive structured data.


🔒 Personal data and GDPR

Reviewer names, IDs, profile URLs, and photos can constitute personal data.

Only collect and process this information when you have an appropriate legitimate reason. If reviewer information is unnecessary for your use case, disable Personal data.

reviewId is always included.


💰 Google Maps Reviews Scraper pricing

The Actor uses pay-per-event pricing.

EventWhen you are charged
Dataset resultOnce for every review successfully written to the dataset
Actor startOnce when a run starts

Reviews removed by filters or not successfully collected are not charged.

Current prices are shown on the Actor's Pricing tab.


❓ Frequently asked questions

What is a Google Maps Reviews Scraper?

A Google Maps Reviews Scraper automatically extracts customer reviews from Google Maps and converts them into structured data.

This Actor can collect review text, ratings, exact dates, review URLs, reviewer information, owner replies, photos, and business details.

Is there a Google Maps Reviews API?

Yes. This Actor works as a Google Maps Reviews API through the Apify API.

Applications can submit Google Maps locations, start scraping runs, and retrieve structured review datasets programmatically.

What is a Google Maps Reviews Scraper API?

A Google Maps Reviews Scraper API provides programmatic access to Google Maps review extraction.

Instead of manually running the scraper, your application can submit places through the API and retrieve the resulting review data automatically.

Can I scrape all reviews for a business?

Yes. Set a specific limit or enable Collect all reviews. The configured maximum supports up to 1 million reviews per place.

Can I scrape multiple Google Maps places?

Yes. Submit multiple Place IDs, Google Maps URLs, or both in one run. Places are processed in parallel.

Can I filter reviews by date?

Yes. Use Only reviews newer than… with an exact date or relative period.

Date filtering requires reviews to be sorted by newest.

Can I filter reviews by keyword?

Yes. Use the keyword filter to return reviews containing specified words.

Can I sort Google Maps reviews?

Yes. Reviews can be sorted by:

  • Newest
  • Most relevant
  • Highest rated
  • Lowest rated

The default is newest.

Can I get exact review dates?

Yes. publishedAtDate returns the exact ISO 8601 publication date when available, while publishAt contains Google's relative date, such as "a month ago".

Does the scraper collect owner responses?

Yes. When available, results include the owner's response text and response date.

Does it collect review photos?

Yes. Review photos are included when available.

Does it collect reviewer profiles?

Yes, when Personal data is enabled.

Results can include reviewer names, IDs, profile URLs, photos, review counts, and Google Local Guide status.

What fields does the Google Maps Reviews API return?

Each review follows a consistent 55-field schema covering:

  • Review data
  • Reviewer data
  • Business details
  • Address data
  • Input and trace information

What formats can I export?

Results can be exported as JSON, CSV, Excel, XML, or HTML.

They can also be retrieved programmatically through the Apify API.

Can I use it for bulk Google Maps review scraping?

Yes. Submit multiple locations in a single run and process them in parallel.

Can I use Google Maps reviews for sentiment analysis?

Yes. Export review text and ratings to your sentiment-analysis, classification, AI, or text-processing workflow.

The Actor collects the data; downstream systems perform the analysis.

Can I use reviews for competitor research?

Yes. Collect competitor reviews and analyze ratings, recurring complaints, customer feedback, and commonly mentioned strengths.

Can I use the data for local SEO analysis?

Yes. Review count, average rating, review dates, review text, and newly published reviews can be used for local SEO monitoring and analysis.

Can I use Zapier, Make, or n8n?

Yes. Provide URLs or Place IDs, configure the review count and filters, and send the resulting dataset to a spreadsheet, database, notification system, or another workflow step.

Can AI agents use the scraper through MCP?

Yes. Expose the Actor through Apify's official MCP server so compatible AI assistants can configure the input, start the Actor, and read the resulting dataset.