Google Maps Reviews Extractor
Pricing
from $0.30 / 1,000 results
Google Maps Reviews Extractor
Extract structured customer reviews from one public Google Maps business or place URL.
Pricing
from $0.30 / 1,000 results
Rating
0.0
(0)
Developer
Zapticx
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
17 hours ago
Last modified
Categories
Share
Extract real customer reviews from one public Google Maps business or place URL and save every review as a clean row in an Apify Dataset.
This is an unofficial Actor. It is not affiliated with, endorsed by, or sponsored by Google.
Quick start
- Open the business in Google Maps.
- Copy the URL from your browser's address bar.
- Paste it into Google Maps place URL.
- Choose how many reviews you want.
- Select a review order and click Start.
- Open the run's Dataset tab to view or download the results.
Direct access is the tested default and avoids proxy charges. If Google repeatedly returns its limited-view page, enable a working residential proxy in the advanced input.
What you get
Each Dataset item represents one review and can contain:
- Business name and URL
- Reviewer name and profile URL
- Reviewer's review and photo counts
- Star rating and review text
- Original and normalized review dates
- Owner response and response date
- Review URL and Google review ID
Optional fields are null when Google does not provide them. Duplicate reviews are removed
before they are stored.
Input
| Field | Description | Default |
|---|---|---|
startUrl | One public Google Maps business/place URL | Required |
maxReviews | Maximum unique reviews to collect, from 1 to 500 | 50 |
sort | relevant, newest, highest, or lowest | relevant |
proxyConfiguration | Optional connection used to load Google Maps | Direct (proxy off) |
Example:
{"startUrl": "https://www.google.com/maps/place/EXAMPLE/...","maxReviews": 50,"sort": "newest","proxyConfiguration": {"useApifyProxy": false}}
Output example
{"businessName": "Example Coffee","businessUrl": "https://www.google.com/maps/place/EXAMPLE/...","reviewerName": "Example Reviewer","reviewerProfileUrl": "https://www.google.com/maps/contrib/...","reviewerReviewCount": 12,"reviewerPhotoCount": 3,"rating": 5.0,"reviewText": "Friendly staff and excellent coffee.","reviewDate": "2026-08-06","reviewDateRaw": "a week ago","ownerResponse": "Thank you for visiting!","ownerResponseDate": "5 days ago","reviewUrl": null,"reviewId": "Google-provided-review-id"}
This example only demonstrates the record structure. The Actor never adds sample reviews to your Dataset.
How it works
Google Maps URL→ open the business reviews→ apply the selected order→ load more review cards→ extract and remove duplicates→ save each review to the Dataset
The Actor stops when it reaches maxReviews or when Google has no more reviews to load. A
failed or blocked page produces a clear error instead of an empty, apparently successful run.
Downloading results
Open Storage → Dataset after a run. Apify can export the results as JSON, CSV, Excel, XML, RSS, or JSONL. You can also access the Dataset through the Apify API.
Run locally
Python 3.11 or newer is recommended.
python -m venv .venvsource .venv/bin/activatepython -m pip install -r requirements-dev.txtplaywright install chromium
Replace the placeholder URL in INPUT.json, then run:
$python -m src
Local results appear in storage/datasets/default/. Google can occasionally return a limited
view with no reviews. The Actor retries automatically. If it happens repeatedly, enable a working
residential proxy; that requires access to the proxy group and incurs proxy usage charges.
Development checks:
ruff check .pytest
Deploy privately to Apify
apify loginapify push
Deploying does not publish the Actor. It remains private in Development → My Actors until you explicitly use Publish to Store in Apify Console.
Limitations
- Google Maps is dynamic and can change its interface without notice.
- Google can rate-limit or block automated browsers. The Actor retries automatically; a working residential proxy can help when direct runs repeatedly receive Google's limited-view page.
reviewDateis an approximate ISO date for English relative labels such as “2 weeks ago.” The original value is preserved inreviewDateRaw.- Some optional fields, especially shareable review URLs, are not displayed for every review.
- A place with fewer available reviews can return less than
maxReviews.
Use the Actor responsibly and ensure your collection and processing of reviewer information complies with applicable laws and platform terms.