
Google Maps Reviews Scraper
Pricing
$25.00/month + usage

Google Maps Reviews Scraper
π Scrape thousands of Google Map reviews with advanced filters. Fast, clean, and customizable.
5.0 (1)
Pricing
$25.00/month + usage
2
Total users
4
Monthly users
4
Runs succeeded
>99%
Last modified
15 days ago
An Apify actor that scrapes reviews from Google Maps places. Extract comprehensive review data including ratings, reviewer information, review text, dates, photos, owner responses, and metadata.
Features
- β‘ Lightning Fast: Get thousands of reviews in seconds
- π Proxy Included: We handle proxy rotation automatically - no setup needed!
- π Flexible Input: Accepts Google Maps place ID or full Google Maps URL
- β Rich Data: Extracts ratings, reviewer names, review text, dates, languages, photos, and owner responses
- π― Advanced Filtering: Filter by star ratings, keywords, date ranges, languages, and search queries
- π Pagination Support: Automatically handles pagination to get all available reviews
- π High Performance: Optimized for speed and reliability with retry logic
- π Multi-language Support: Works with any language and region
- π Search Functionality: Search for specific terms within reviews
Input Parameters
Parameter | Type | Default | Description |
---|---|---|---|
placeIdOrUrl | String | Required | Google Maps place ID (e.g., '0x14a839000bbc66dd:0x517edaab612d6d13') or full Google Maps URL |
startPage | Integer | 1 | Page number to start scraping from |
pagesToScrape | Integer | 5 | Maximum number of pages to scrape (-1 for all available) |
reviewsPerPage | String | "10" | Number of reviews per page to scrape ("10" or "20") |
maxReviews | Integer | 10000 | Maximum number of reviews to scrape (-1 for no limit) |
sortBy | String | "mostRelevant" | Sort reviews by "mostRelevant", "newest", "highestRating", or "lowestRating" |
ratings | Array | [1,2,3,4,5] | Filter reviews by star ratings (1-5) |
language | Array | [] | Filter reviews by language codes (e.g., ["en", "fr", "de"]) |
keywords | Array | [] | Filter reviews containing specific keywords |
searchQuery | String | "" | Search for reviews containing specific terms |
endDate | String | null | Only include reviews posted before this date (YYYY-MM-DD format) |
recentDays | Integer | 0 | Only include reviews from the last N days (0 = disabled) |
uniqueOnly | Boolean | true | Remove duplicate reviews (by review ID) |
Output Data
Each review contains the following fields:
Field | Type | Description |
---|---|---|
reviewId | String | Unique review identifier |
rating | Integer | Star rating (1-5) |
reviewer | String | Name of the reviewer |
date | String | Review date in ISO format (YYYY-MM-DD) |
text | String | Original review text content |
translatedText | String | Translated review text (if available) |
language | String | Language code of the review |
userImage | String | URL to reviewer's profile image |
photos | Array | URLs of photos attached to the review |
ownerResponse | String | Business owner's response to the review (if any) |
localGuideInfo | String | Local Guide information for the reviewer |
placeId | String | Google Maps place ID |
timestamp | Integer | Unix timestamp of the review |
position | Integer | Position/order of review in the results |
Usage Examples
Basic Usage
{"placeIdOrUrl": "https://www.google.com/maps/place/Google/@59.326069,-95.989235,3z/data=!3m1!4b1!4m6!3m5!1s0xfdeda002b05abf3:0x30dd244877e2a5bc!8m2!3d59.326069!4d-95.989235!16s%2Fg%2F11vf0j1l59?entry=ttu&g_ep=EgoyMDI1MDUyMS4wIKXMDSoJLDEwMjExNDUzSAFQAw%3D%3D","maxReviews": 1000,"reviewsPerPage": "20","pagesToScrape": 10}
Advanced Filtering
{"placeIdOrUrl": "0x14a839000bbc66dd:0x517edaab612d6d13","ratings": [4, 5],"keywords": ["great", "amazing", "excellent"],"language": ["en", "fr"],"recentDays": 30,"maxReviews": 500,"sortBy": "newest"}
Search for Specific Terms
{"placeIdOrUrl": "0x14a839000bbc66dd:0x517edaab612d6d13","searchQuery": "food quality","pagesToScrape": 5,"sortBy": "mostRelevant"}
Place ID Only
{"placeIdOrUrl": "0x14a839000bbc66dd:0x517edaab612d6d13","pagesToScrape": 3,"sortBy": "highestRating"}
How to Get Place ID
You can provide either:
-
Full Google Maps URL:
https://www.google.com/maps/place/Google/@59.326069,-95.989235,3z/data=!3m1!4b1!4m6!3m5!1s0xfdeda002b05abf3:0x30dd244877e2a5bc!8m2!3d59.326069!4d-95.989235!16s%2Fg%2F11vf0j1l59?entry=ttu&g_ep=EgoyMDI1MDUyMS4wIKXMDSoJLDEwMjExNDUzSAFQAw%3D%3D -
Place ID only:
0x89c25a316e5b7c5d:0x1234567890abcdef
The place ID is the hexadecimal string in the format 0xHEX:0xHEX
found in Google Maps URLs.
Supported Languages
The scraper supports all languages available on Google Maps. Common language codes include:
en
- Englishes
- Spanishfr
- Frenchde
- Germanit
- Italianpt
- Portugueseru
- Russianja
- Japaneseko
- Koreanzh
- Chineseel
- Greek
Rate Limiting & Best Practices
- The scraper includes built-in delays between requests to respect Google's servers
- Proxy rotation is handled automatically
- Use reasonable limits for
maxReviews
andpagesToScrape
to avoid timeouts - Consider using filters to get more targeted results
Common Use Cases
- Business Intelligence: Analyze customer sentiment and feedback
- Competitive Analysis: Compare reviews across similar businesses
- Market Research: Understand customer preferences and pain points
- Reputation Management: Monitor reviews for specific keywords or issues
- Trend Analysis: Track review patterns and sentiment over time
- Location Analysis: Compare performance across multiple locations
Error Handling
The actor includes comprehensive error handling:
- Invalid place IDs or URLs are detected and reported
- Network timeouts are handled with automatic retries
- Parsing errors are logged with detailed information
- Empty responses and rate limiting are gracefully handled
- Cookie management for authentication
Performance Notes
- Processing speed depends on the number of reviews and applied filters
- Memory usage scales with the number of reviews being processed
- Larger
reviewsPerPage
values may be faster but use more memory - Use filters to reduce processing time for large datasets
Data Quality
- Reviews include original text and translated text when available
- Photos are extracted with full URLs
- Owner responses are captured when present
- Timestamps are provided in both Unix format and ISO date strings
- Duplicate reviews are automatically filtered when
uniqueOnly
is enabled
Support
For issues, feature requests, or questions:
- Check the actor run logs for detailed error messages
- Verify the place ID or URL is correct and the place has reviews
- Try with smaller batch sizes if encountering timeouts
- Ensure your filters are not too restrictive
- Contact support through the Apify platform
On this page
Share Actor: