Google Maps Scraper — Places, Leads & Contact Data avatar

Google Maps Scraper — Places, Leads & Contact Data

Pricing

from $4.00 / 1,000 results

Go to Apify Store
Google Maps Scraper — Places, Leads & Contact Data

Google Maps Scraper — Places, Leads & Contact Data

Scrape Google Maps places by search query. Returns name, full address, latitude/longitude, phone, website, rating, review count, category, price level, neighborhood, timezone, place ID and CID. HTTP-only — no browser, fast and cheap.

Pricing

from $4.00 / 1,000 results

Rating

0.0

(0)

Developer

yossef Nagy

yossef Nagy

Maintained by Community

Actor stats

0

Bookmarked

64

Total users

34

Monthly active users

9 hours ago

Last modified

Share

Google Maps Scraper

Extract business data from Google Maps at scale. Get names, addresses, phone numbers, websites, ratings, reviews, opening hours, and more for any type of business in any location.

What does Google Maps Scraper do?

This Actor searches Google Maps for businesses matching your query and extracts structured data for each result. It uses grid-based search for comprehensive coverage, finding businesses that don't appear in standard search results.

No browser required — uses Google Maps' internal APIs directly for fast, efficient extraction.

Features

  • Comprehensive data: name, address, phone, website, rating, reviews, hours, categories, coordinates, and more
  • Grid-based search: covers entire areas systematically, not just the first page of results
  • Scale: extract hundreds or thousands of businesses per run
  • Place details: optionally fetch full business details including opening hours and amenities
  • Reviews: optionally extract customer reviews for each business
  • Lead enrichment (experimental): optionally find emails and social-media profiles from each business's own website — off by default, billed separately, never changes the base scrape

Input

FieldTypeRequiredDefaultDescription
querystringYes—Search query including location, e.g. "restaurants in New York"
maxResultsintegerNo100Maximum businesses to extract (0 = unlimited)
languagestringNo"en"Language code for results
zoomintegerNo13Google Maps zoom level (1-21)
includeDetailsbooleanNotrueFetch detailed place info (hours, phone, website)
includeReviewsbooleanNofalseFetch customer reviews
reviewsLimitintegerNo5Max reviews per business
proxyUrlstringNo—HTTP proxy URL (recommended for reliability)

Output

Each business in the dataset contains:

{
"name": "Joe's Pizza",
"address": "7 Carmine St, New York, NY 10014",
"phone": "+1 212-366-1182",
"website": "https://www.joespizzanyc.com",
"rating": 4.5,
"reviews_count": 12847,
"category": "Pizza restaurant",
"categories": ["Pizza restaurant", "Italian restaurant"],
"latitude": 40.7304,
"longitude": -74.0022,
"place_id": "ChIJr3k0v6VZwokRPCxBJnIcdTA",
"google_maps_url": "https://www.google.com/maps/place/?q=place_id:ChIJr3k0v6VZwokRPCxBJnIcdTA",
"hours": {
"monday": "10:00 AM - 2:00 AM",
"tuesday": "10:00 AM - 2:00 AM"
},
"price_level": 1
}

Lead enrichment (experimental add-on)

Experimental / beta. This add-on is new and under active testing. It is off by default and does not change the base scraper's behavior, output, or cost when left off. Turn it on only if you want extra contact data and are comfortable with a feature that is still being refined.

When enabled, the scraper visits each business's own website (plus its contact / about / imprint pages) and extracts:

  • Emails (includeEmails) — deduplicated and syntax-checked, and the domain must actually accept mail (MX-validated) before an email counts.
  • Social profiles (includeSocials) — Facebook, Instagram, LinkedIn, X/Twitter, YouTube, TikTok, WhatsApp.

You can also filter which businesses are kept:

FieldTypeDefaultDescription
includeEmailsbooleanfalseFind email addresses on each business website
includeSocialsbooleanfalseFind social-media profile links
emailOnlybooleanfalseOnly keep businesses for which an email was found (implies includeEmails)
socialOnlybooleanfalseOnly keep businesses for which a social profile was found (implies includeSocials)
onlyWithWebsitebooleanfalseOnly keep businesses that have a real website
onlyWithoutWebsitebooleanfalseOnly keep businesses WITHOUT a website (prospects for web/design agencies)

Enrichment adds these fields to each output record (all are null when nothing is found, or when the add-on is off):

{
"email": "hello@business.com",
"emails": ["hello@business.com", "sales@business.com"],
"facebook": "https://facebook.com/business",
"instagram": "https://instagram.com/business",
"linkedin": null,
"twitter": null,
"youtube": null,
"tiktok": null,
"whatsapp": null,
"website_reachable": true
}

Enrichment runs over HTTP only (no browser), tries cheap datacenter proxies first and only escalates to residential when a site blocks it. It is billed separately, per enriched lead — a lead counts only when at least one email or social profile is actually found on the business's website.

Usage examples

Basic search:

restaurants in New York

Specific business type:

dentists in Los Angeles, CA

International search:

hotels near Paris, France

Tips

  • Include location in your query for best results: "plumbers in Chicago" not just "plumbers"
  • Use a proxy for reliable extraction — Google blocks datacenter IPs
  • Start with a small maxResults to test, then scale up
  • Enable includeDetails to get phone numbers, websites, and opening hours (slightly slower)
  • Adjust zoom level: lower zoom (10-12) covers larger areas, higher zoom (14-17) finds more businesses in small areas

Proxy

Google Maps blocks requests from datacenter IPs. For reliable extraction, provide an HTTP proxy URL in the proxyUrl input field.

Limitations

  • Results depend on what Google Maps returns for your query and location
  • Some businesses may have incomplete data (missing phone, website, or hours)
  • Rate limiting may apply for very large extractions