Scrape Google Maps Places — 30+ Fields per Business at $1 per 1,000

Extract comprehensive business data from Google Maps at a fraction of the cost of alternatives. Get name, address, phone, website, ratings, opening hours, GPS coordinates, photos, plus optional featured reviews, popular-times histograms, and AI-powered contact or job enrichment. Global coverage, any language, one flat rate.

Open on Apify → Try it now
Docker Image
~80MB
RAM
256MB
Proxy
BUYPROXIES Datacenter
Coverage
Global
Pricing
$1 / 1,000 places
Anti-Bot
Session rotation

What You Can Scrape

Primary Use Cases

API Example

# Start a run and get results back in one request
curl -X POST "https://api.apify.com/v2/acts/santamaria-automations~google-maps-scraper/run-sync-get-dataset-items?token=YOUR_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "searchStrings": ["restaurants in Munich"],
    "maxResultsPerQuery": 100,
    "language": "en",
    "includeReviews": true,
    "maxReviewsPerPlace": 10
  }'

# Or use with AI agents via MCP:
# https://mcp.apify.com?tools=santamaria-automations/google-maps-scraper

Optional Enrichments

Tutorials

Integrations

How It Compares

FeatureNanoScrapecompass/crawler-google-places
Cost per 1k places$1.00 (all fields included)$35 - $50
RAM usage256MB2-8GB
Proxy typeDatacenterResidential ($$$)
Fields per place30+20-30
ReviewsFeatured reviews included, opt-inExtra billing
Popular timesIncluded, opt-inExtra billing
Contact / job enrichmentAI-powered add-onNot available
Incremental scraping (excludeCids)YesNo

Output Fields (Sample)

FieldTypeExample
titlestringAugustiner-Keller
categorystringBeer garden
addressstringArnulfstr. 52, 80335 Munich, Germany
complete_addressobject{ street, city, postal_code, state, country }
phonestring+49 89 594393
websitestringhttps://www.augustinerkeller.de
review_ratingnumber4.5
review_countnumber12847
reviews_per_ratingobject{ "1": 42, "2": 31, "3": 89, "4": 312, "5": 1349 }
user_reviewsarray[ { name, rating, text, published_at, response_from_owner } ]
popular_timesobject{ "Monday": { "12": 43, "13": 61, ... } }
latitude / longitudenumber48.1432 / 11.5512
open_hoursobject{ "Monday": ["11:00-23:00"], ... }
cidstring12345678901234567 (stable, use for excludeCids)

30+ fields total. See the actor README on Apify for the complete field reference.

Open on Apify → Try it now — free tier available