Google Maps Reviews Scraper avatar
Google Maps Reviews Scraper

Pricing

$25.00/month + usage

Go to Store
Google Maps Reviews Scraper

Google Maps Reviews Scraper

Developed by

Neatrat

Neatrat

Maintained by Community

🌟 Scrape thousands of Google Map reviews with advanced filters. Fast, clean, and customizable.

5.0 (2)

Pricing

$25.00/month + usage

2

Total users

2

Monthly users

2

Runs succeeded

>99%

Last modified

3 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

ParameterTypeDefaultDescription
placeIdOrUrlStringRequiredGoogle Maps place ID (e.g., '0x14a839000bbc66dd:0x517edaab612d6d13') or full Google Maps URL
startPageInteger1Page number to start scraping from
pagesToScrapeInteger5Maximum number of pages to scrape (-1 for all available)
reviewsPerPageString"10"Number of reviews per page to scrape ("10" or "20")
maxReviewsInteger10000Maximum number of reviews to scrape (-1 for no limit)
sortByString"mostRelevant"Sort reviews by "mostRelevant", "newest", "highestRating", or "lowestRating"
ratingsArray[1,2,3,4,5]Filter reviews by star ratings (1-5)
languageArray[]Filter reviews by language codes (e.g., ["en", "fr", "de"])
keywordsArray[]Filter reviews containing specific keywords
searchQueryString""Search for reviews containing specific terms
endDateStringnullOnly include reviews posted before this date (YYYY-MM-DD format)
recentDaysInteger0Only include reviews from the last N days (0 = disabled)
uniqueOnlyBooleantrueRemove duplicate reviews (by review ID)

Output Data

Each review contains the following fields:

FieldTypeDescription
reviewIdStringUnique review identifier
ratingIntegerStar rating (1-5)
reviewerStringName of the reviewer
dateStringReview date in ISO format (YYYY-MM-DD)
textStringOriginal review text content
translatedTextStringTranslated review text (if available)
languageStringLanguage code of the review
userImageStringURL to reviewer's profile image
photosArrayURLs of photos attached to the review
ownerResponseStringBusiness owner's response to the review (if any)
localGuideInfoStringLocal Guide information for the reviewer
placeIdStringGoogle Maps place ID
timestampIntegerUnix timestamp of the review
positionIntegerPosition/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:

  1. 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
  2. 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 - English
  • es - Spanish
  • fr - French
  • de - German
  • it - Italian
  • pt - Portuguese
  • ru - Russian
  • ja - Japanese
  • ko - Korean
  • zh - Chinese
  • el - 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 and pagesToScrape 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:

  1. Check the actor run logs for detailed error messages
  2. Verify the place ID or URL is correct and the place has reviews
  3. Try with smaller batch sizes if encountering timeouts
  4. Ensure your filters are not too restrictive
  5. Contact support through the Apify platform