Google Maps Places Scraper avatar
Google Maps Places Scraper

Pricing

from $0.99 / 1,000 results

Go to Apify Store
Google Maps Places Scraper

Google Maps Places Scraper

Scrape Google Maps places data including business name, address, phone, website, ratings, reviews, and more. Extract leads and business information from Google Maps search results.

Pricing

from $0.99 / 1,000 results

Rating

0.0

(0)

Developer

codingfrontend

codingfrontend

Maintained by Community

Actor stats

0

Bookmarked

4

Total users

2

Monthly active users

16 hours

Issues response

a day ago

Last modified

Share

Google Maps Scraper

A powerful Apify Actor for scraping Google Maps places data. Extract business information including name, address, phone, website, ratings, reviews, opening hours, and more from Google Maps search results.

Features

  • 🔍 Search by keywords - Search for businesses using any search term
  • 📍 Location-based search - Search within specific locations or coordinates
  • 🌐 Geocoding support - Automatic geocoding using Geoapify API
  • 📊 Comprehensive data - Extract 35+ data fields per place
  • 🔄 API interception - Uses Google Maps internal API for reliable data extraction
  • Fast extraction - Optimized for speed with reduced wait times
  • 🛡️ Duplicate prevention - Built-in deduplication to avoid duplicate entries
  • Reviews extraction - Get review text, author info, and ratings
  • 🚫 Closed places filter - Filter for all, only open, or only closed businesses

Output Data

Each place includes the following information:

FieldTypeDescription
titleStringBusiness name
categoryNameStringPrimary category
categoriesArrayAll categories for the place
addressStringFull formatted address
neighborhoodStringNeighborhood name
streetStringStreet address
cityStringCity name
postalCodeStringPostal/ZIP code
stateStringState/Province
countryCodeStringCountry code
plusCodeStringGoogle Plus Code - short format (e.g., "9X9J+M5")
plusCodeGlobalStringGoogle Plus Code - full format with location
websiteStringWebsite URL
phoneStringFormatted phone number
phoneUnformattedStringPhone number without formatting
locationObject{ lat, lng } coordinates
totalScoreNumberOverall rating (1-5 stars)
reviewsCountNumberTotal review count
reviewsDistributionObject{ oneStar, twoStar, threeStar, fourStar, fiveStar }
permanentlyClosedBooleanWhether permanently closed
temporarilyClosedBooleanWhether temporarily closed
currentStatusStringCurrent operational status
timezoneStringTimezone (e.g., "Europe/London")
placeIdStringGoogle Maps Place ID
cidStringGoogle Maps CID
kgmidStringKnowledge Graph MID
imageUrlStringPrimary image URL
imageUrlsArrayAll image URLs
openingHoursObjectOpening hours by day (if enabled)
aboutInfoObjectAbout tab info (service_options, accessibility, amenities)
reviewsArrayReviews with author info, text, rating (if enabled)
priceLevelStringPrice level indicator
urlStringDirect Google Maps URL
searchPageUrlStringSearch results page URL
searchStringStringOriginal search query
rankNumberPosition in search results
scrapedAtStringISO timestamp of extraction

Input Configuration

Search Settings

FieldTypeDescription
searchStringsArrayArrayList of search terms (e.g., ["restaurants", "hotels"])
locationQueryStringLocation to search in (e.g., "New York, USA")
latStringLatitude coordinate as string (e.g., "40.7128"). Optional, overrides locationQuery
lngStringLongitude coordinate as string (e.g., "-74.0060"). Optional, overrides locationQuery
zoomNumberGoogle Maps zoom level (3-21). Supports fractional values like 18.25, 18.5, 18.75. Higher zoom = smaller area. If provided, overrides radius
radiusNumberSearch radius in meters (default: 50000). Calculated zoom rounds to nearest 0.25 step. Ignored if zoom is provided

Output Settings

FieldTypeDescription
maxCrawledPlacesPerSearchNumberMaximum places to extract per search term
includeOpeningHoursBooleanInclude opening hours/timing information (default: true)
includeReviewsBooleanExtract reviews for each place (default: false)
maxReviewsPerPlaceNumberMax reviews per place when reviews enabled (default: 10)

Filter Settings

FieldTypeDescription
closedPlacesFilterStringFilter: "all" (default), "skipClosed", or "onlyClosed"
placeMinimumStarsStringMinimum rating filter (e.g., "4.0")

Advanced Settings

FieldTypeDescription
languageStringLanguage for results (default: "en")

Example Input

{
"searchStringsArray": ["software companies", "tech startups"],
"locationQuery": "Bangalore, India",
"maxCrawledPlacesPerSearch": 50,
"closedPlacesFilter": "skipClosed",
"placeMinimumStars": "4.0",
"language": "en"
}

Example: Find Only Closed Businesses

{
"searchStringsArray": ["restaurants", "retail stores"],
"locationQuery": "San Francisco, CA",
"maxCrawledPlacesPerSearch": 100,
"closedPlacesFilter": "onlyClosed"
}

Example Output

{
"title": "Tamil info technology",
"categoryName": "Software company",
"categories": [
"Software company",
"Internet marketing service",
"Web hosting company"
],
"address": "1st Floor, Tamil info technology, Naicker New 1st St, Dindigul, Tamil Nadu 624001, India",
"neighborhood": "Pandian Nagar, Govindapuram",
"street": "1st Floor, Naicker New 1st St",
"city": "Dindigul",
"postalCode": "624001",
"state": "Tamil Nadu",
"countryCode": "IN",
"plusCode": "7J2V9X9J+M5",
"plusCodeGlobal": "9X9J+M5 Dindigul, Tamil Nadu, India",
"website": "https://tamilinfotechnology.com/",
"phone": "+91 80567 80587",
"phoneUnformatted": "+918056780587",
"location": {
"lat": 10.3692237,
"lng": 77.98048899999999
},
"totalScore": 4.8,
"reviewsCount": 286,
"reviewsDistribution": {
"oneStar": 5,
"twoStar": 3,
"threeStar": 8,
"fourStar": 20,
"fiveStar": 250
},
"permanentlyClosed": false,
"temporarilyClosed": false,
"currentStatus": "Open",
"timezone": "Asia/Calcutta",
"placeId": "ChIJE5kB2A-rADsRxSkebCSfu2c",
"cid": "7467584636356389317",
"kgmid": "/g/11g0793_lk",
"imageUrl": "https://lh3.googleusercontent.com/p/...",
"imageUrls": [
"https://lh3.googleusercontent.com/p/..."
],
"openingHours": {
"Monday": "9 AM–6 PM",
"Tuesday": "9 AM–6 PM",
"Wednesday": "9 AM–6 PM",
"Thursday": "9 AM–6 PM",
"Friday": "9 AM–6 PM",
"Saturday": "Closed",
"Sunday": "Closed"
},
"aboutInfo": {
"service_options": {
"title": "Service options",
"attributes": {
"online_appointments": { "available": true, "name": "Online appointments", "value": "Online appointments" },
"onsite_services": { "available": true, "name": "Onsite services", "value": "Onsite services" }
}
},
"accessibility": {
"title": "Accessibility",
"attributes": {
"wheelchair_accessible_entrance": { "available": false, "name": "Wheelchair accessible entrance", "value": "No" }
}
},
"amenities": {
"title": "Amenities",
"attributes": {
"gender_neutral_restroom": { "available": true, "name": "Gender-neutral restroom", "value": "Gender-neutral restroom" }
}
}
},
"reviews": [
{
"authorUrl": "https://www.google.com/maps/contrib/115819004711339846409",
"authorImage": "https://lh3.googleusercontent.com/a/...",
"text": "They have friendly staff, give clear support, and finish projects on time.",
"authorId": "115819004711339846409",
"rating": 5,
"reviewId": "Ci9DQUlRQUNvZENodHljRjlvT2xKTVdIbGhPSEZHWW1WUmFXUnpNRVl6TWkxUlRFRRAB"
}
],
"priceLevel": null,
"url": "https://www.google.com/maps/search/?api=1&query=Tamil+info+technology&query_place_id=ChIJE5kB2A-rADsRxSkebCSfu2c",
"searchPageUrl": "https://www.google.com/maps/search/Technology%20companies/@10.3470512,77.9637847,3z?hl=en",
"searchString": "Technology companies",
"rank": 1,
"scrapedAt": "2025-12-25T08:16:06.135Z"
}

Dataset Views

The actor provides multiple views for the output data:

  1. Overview - Essential business information (name, category, address, rating)
  2. Contact - Phone, website, and contact details for lead generation
  3. Location - Geographic coordinates and address components
  4. Ratings - Rating, review count, and reviews distribution

Technical Details

  • Built with Apify SDK v3 and Crawlee v3
  • Uses Puppeteer for browser automation
  • API interception for reliable data extraction (no DOM scraping)
  • Geoapify integration for geocoding
  • Latitude-aware zoom calculation from radius

Changelog

v1.1.0 (2025-12-25)

  • Removed all DOM-based extraction in favor of API interception only
  • Fixed reviews extraction from nested API structure
  • Added latitude-aware radius-to-zoom calculation
  • Removed unused extractors (domExtractor, viewExtractor, detailedExtractor, etc.)
  • Simplified output format to 35 fields
  • Added FIELD_INDICES mapping for API response parsing
  • Removed includeWebsites/includePhoneNumbers options (always included)

v1.0.0 (2025-01-16)

  • Initial release
  • Multi-folder project structure (config/, utils/, validators/, extractors/, handlers/)
  • API interception for reliable data extraction
  • Geoapify geocoding integration
  • Comprehensive data extraction
  • Dataset views for different use cases
  • Duplicate prevention with place key tracking
  • Generic address parser (works for any country)
  • ESLint configuration and code quality improvements

Features

  • Search places by keywords and location
  • Filter by rating, closed status
  • Extract comprehensive place data
  • Multiple dataset views