πŸ“ Google Maps Scraper: Business Leads, Emails & Reviews avatar

πŸ“ Google Maps Scraper: Business Leads, Emails & Reviews

Pricing

from $2.45 / 1,000 leads

Go to Apify Store
πŸ“ Google Maps Scraper: Business Leads, Emails & Reviews

πŸ“ Google Maps Scraper: Business Leads, Emails & Reviews

Extract business data from Google Maps with just a few clicks. Get business names, emails, phone numbers, addresses, reviews, ratings, social profiles, and hours. Export unlimited leads to CSV, Excel, or JSON for cold outreach, lead generation, and market research with no coding.

Pricing

from $2.45 / 1,000 leads

Rating

5.0

(5)

Developer

Hassan Amer

Hassan Amer

Maintained by Community

Actor stats

0

Bookmarked

5

Total users

2

Monthly active users

20 days ago

Last modified

Share

πŸ“ Google Maps Scraper: Extract Business Leads, Emails & Reviews

Apify Actor Maintenance Free Trial

An ultra-fast, high-capacity Google Maps Business Scraper and B2B Lead Extractor. Extract verified company emails, phone numbers, addresses, ratings, customer reviews, social media profiles, and opening hours from Google Maps across any city, region, or countryβ€”with zero coding and no 120-place result caps.


πŸ“‘ Table of Contents


🎯 What is Google Maps Scraper?

Google Maps Scraper is an automated cloud data solution that converts Google Maps into an actionable B2B prospect database. It searches any location, extracts comprehensive business listings, and crawls company websites to discover verified contact emails and direct social media handles.

πŸ’Ό Common Use Cases:

  • πŸš€ B2B Lead Generation & Cold Email: Build hyper-targeted prospect lists with verified company emails, direct phone numbers, and owner contacts.
  • πŸ“ˆ Competitor Intelligence: Benchmark competitors across cities, monitor average ratings, and analyze review volumes.
  • πŸ” Local SEO & Citation Audits: Audit NAP (Name, Address, Phone) consistency and verify claimed business statuses.
  • 🏒 Agency Client Acquisition: Identify local businesses with low ratings or missing websites to pitch marketing and SEO services.
  • πŸ“Š Market Research: Analyze business density and foot traffic trends across neighborhoods.

✨ Key Features & Advantages

  • 🚫 Bypasses the 120-Result Limit: Utilizes recursive spatial tiling to divide dense metro areas into micro-quadrants, extracting up to 100% of all listed businesses.
  • βœ‰οΈ Direct Email & Social Media Extraction: Automatically visits business websites in the background to extract verified contact emails, Instagram, Facebook, LinkedIn, Twitter/X, TikTok, and YouTube links.
  • ⚑ 100% Direct & Fast Execution: Engineered with Chrome TLS fingerprinting and resilient connection managementβ€”no complex proxy setups required.
  • ⭐ Complete Reputation Data: Pulls exact star ratings, review counts, 1–5 star distributions, and full customer review texts.
  • πŸ“₯ 1-Click Export: Download datasets directly into CSV, Excel (XLSX), JSON, or sync live with Google Sheets.

πŸ’° Pricing & Cost Estimation

This Actor uses Pay-Per-Event (Pay-Per-Result) pricing with Platform Usage Included (Free). You only pay for the actual leads extracted into your dataset:

Event / Subscription TierUnit PriceDescription
🏒 Standard / Free Plan$3.50 / 1,000 leadsFull profile with verified emails, phones, ratings & hours.
πŸ₯‰ Bronze Plan$3.15 / 1,000 leadsAutomatic 10% volume discount.
πŸ₯ˆ Silver Plan$2.80 / 1,000 leadsAutomatic 20% volume discount.
πŸ₯‡ Gold / Business Plan$2.45 / 1,000 leadsAutomatic 30% volume discount for high-volume agencies.
πŸš€ Platform UsageFREE (Included)Cloud compute & memory usage are 100% covered.
🎬 Actor Start$0.00005Nominal initialization event per run.

πŸ’‘ Example Cost: Extracting 10,000 verified leads costs only $35.00 on the standard tier (or $24.50 on Gold tier), with zero hidden proxy or compute fees.


πŸš€ How to Use (Step-by-Step Tutorial)

  1. Open the Actor: Navigate to the Google Maps Leads Scraper on Apify.
  2. Enter Search Keywords & Location:
    • Enter keywords (e.g., Dentist, Real Estate Agency, Plumber).
    • Enter target location (e.g., Austin, TX, Miami, FL, London, UK).
  3. Configure Options:
    • Set maxPlacesPerLocation (e.g., 100 or 1000).
    • Keep extractEmails enabled for verified business contact info.
  4. Click "Save & Start": Run the Actor and monitor live progress in the Console.
  5. Export Your Leads: Download your enriched dataset as CSV, Excel, or JSON with one click.

βš™οΈ Input Parameters

FieldTypeRequiredDefaultDescription
searchTermsArray of Stringsβœ… Yes["Dentist"]Keywords or business categories to search (e.g., ["Plumber", "HVAC"]).
locationsArray of Stringsβœ… Yes["Austin, TX"]Target cities, states, zipcodes, or countries to crawl.
maxPlacesPerLocationIntegerNo100Maximum places to collect per location (1 to 50,000).
enableAutoTilingBooleanNotrueRecursive spatial grid tiling to bypass Google's 120-place result cap.
extractEmailsBooleanNotrueVisits company websites to extract verified emails & social profiles.
maxReviewsPerPlaceIntegerNo0Number of detailed customer reviews to extract (0 = skip reviews for top speed).
languageStringNo"en"Google Maps interface language code (e.g., en, es, de, fr).
countryStringNo"us"Country code for regional search relevance (e.g., us, uk, ca, pk).

πŸ“‹ Example Input (JSON)

{
"searchTerms": ["Dentist", "Dental Clinic"],
"locations": ["Austin, TX"],
"maxPlacesPerLocation": 100,
"enableAutoTiling": true,
"extractEmails": true,
"maxReviewsPerPlace": 0,
"language": "en",
"country": "us"
}

πŸ“¦ Example Output Data (JSON)

{
"title": "Austin Premier Dental Arts",
"categoryName": "Dentist",
"categories": ["Dentist", "Dental Clinic", "Cosmetic Dentist"],
"address": "123 Congress Ave, Austin, TX 78701",
"street": "123 Congress Ave",
"city": "Austin",
"state": "Texas",
"postalCode": "78701",
"countryCode": "US",
"location": {
"lat": 30.267153,
"lng": -97.743061
},
"phone": "(512) 555-0199",
"phoneUnformatted": "+15125550199",
"website": "https://www.austindentalarts.com",
"companyEmails": [
"contact@austindentalarts.com",
"info@austindentalarts.com"
],
"socialMedia": {
"instagram": "https://instagram.com/austindentalarts",
"facebook": "https://facebook.com/austindentalarts",
"linkedin": "https://linkedin.com/company/austindentalarts"
},
"totalScore": 4.9,
"reviewsCount": 342,
"price": "$$",
"claimThisBusiness": false,
"permanentlyClosed": false,
"openingHours": [
{ "day": "Monday", "hours": "8:00 AM – 5:00 PM" },
{ "day": "Tuesday", "hours": "8:00 AM – 5:00 PM" },
{ "day": "Wednesday", "hours": "8:00 AM – 5:00 PM" },
{ "day": "Thursday", "hours": "8:00 AM – 5:00 PM" },
{ "day": "Friday", "hours": "8:00 AM – 2:00 PM" },
{ "day": "Saturday", "hours": "Closed" },
{ "day": "Sunday", "hours": "Closed" }
],
"placeId": "ChIJN1t_tDeuEmsRUsoyG83frY4",
"url": "https://www.google.com/maps/place/?q=place_id:ChIJN1t_tDeuEmsRUsoyG83frY4",
"scrapedAt": "2026-08-26T12:00:00.000Z"
}

πŸ“‘ Dataset Schema & Storage Views

The results are saved in structured views accessible in the Storage tab:

  1. πŸ“‹ Overview View: Standard table displaying business names, categories, addresses, phones, emails, and ratings.
  2. βœ‰οΈ Contacts & Leads View: Tailored for sales teamsβ€”highlighting verified emails, clean phone numbers, and social links.
  3. πŸ’¬ Reviews View: Formatted with one row per customer review, linking star ratings, review texts, and owner responses.

πŸ”Œ Integrations & API Code

Python SDK (apify-client)

from apify_client import ApifyClient
client = ApifyClient("YOUR_APIFY_TOKEN")
run_input = {
"searchTerms": ["Real Estate Agency"],
"locations": ["Miami, FL"],
"maxPlacesPerLocation": 50,
"extractEmails": True
}
run = client.actor("ha55an_dev/google-maps-leads-scraper").call(run_input=run_input)
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
print(f"Business: {item['title']} | Phone: {item['phone']} | Email: {item.get('companyEmails')}")

Node.js / JavaScript (apify-client)

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: 'YOUR_APIFY_TOKEN' });
const run = await client.actor('ha55an_dev/google-maps-leads-scraper').call({
searchTerms: ['Contractors'],
locations: ['Houston, TX'],
maxPlacesPerLocation: 50,
extractEmails: true
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(`Extracted ${items.length} leads!`);

❓ Frequently Asked Questions (FAQ)

πŸ“Œ Does this scraper bypass the 120-result limit on Google Maps?

Yes! Standard browser searches on Google Maps stop displaying results after scrolling through 120 places. This Actor uses an intelligent recursive spatial tiling engine that automatically divides target regions into micro-quadrants, capturing all businesses across the entire city, state, or postal code.

βœ‰οΈ How does email & social media extraction work?

When extractEmails is enabled (true), the scraper automatically visits each business's official website and candidate contact subpages (/contact, /about, /team) in real-time. It extracts verified company emails, Instagram, Facebook, LinkedIn, Twitter/X, TikTok, and YouTube links while filtering out dummy template emails and tracking scripts.

πŸ›‘οΈ Do I need to configure or pay for proxies?

No! The scraper is engineered with direct Chrome TLS browser impersonation and automated session handling. It connects 100% directly without requiring external proxy subscriptions or complex setups.

Yes. Web scraping is legal when extracting publicly available commercial business data (business names, public phone numbers, addresses, ratings, and website URLs). Always ensure compliance with local communication laws (such as GDPR or CAN-SPAM) when sending cold outreach campaigns.

πŸ“₯ What export formats are supported?

You can download your scraped leads with one click in CSV, Excel (XLSX), JSON, JSONL, or sync live data directly to Google Sheets, Zapier, and Make.com.


πŸ’¬ Support & Troubleshooting

  • Issues & Bug Reports: Open a ticket on the Actor's Issues tab in Apify Console.
  • Custom Feature Requests: Need custom fields or enterprise integrations? Contact via Apify Console messages.