Google Maps Scraper — Leads, Contacts, Emails & Social Profiles avatar

Google Maps Scraper — Leads, Contacts, Emails & Social Profiles

Pricing

from $2.08 / 1,000 place scrapeds

Go to Apify Store
Google Maps Scraper — Leads, Contacts, Emails & Social Profiles

Google Maps Scraper — Leads, Contacts, Emails & Social Profiles

Google Maps scraper for lead generation: search any category and city, get places with phone, website, verified emails, social profiles and newest reviews in one run. Layered add-ons, batch input, pay per event.

Pricing

from $2.08 / 1,000 place scrapeds

Rating

0.0

(0)

Developer

daehwan kim

daehwan kim

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

3 days ago

Last modified

Share

Give it a category and a city, get sales-ready leads in one run. Every place comes with name, address, phone, website, rating and map URL. Turn on the add-ons and the same run also reads each business's own website for emails, phones and social links, verifies every email (syntax, MX record, disposable domain), opens the social profiles, and pulls the newest Google reviews. Batch input: any number of queries, Google Maps URLs or place IDs.

This Actor is an independent, unofficial tool. It is not affiliated with, endorsed by, or sponsored by Google. It reads only publicly accessible Google Maps listings and the businesses' own public websites, without logging in. Its request logic was written with reference to the MIT-licensed gosom/google-maps-scraper; no third-party code is bundled. You are responsible for complying with the target sites' terms of service and with privacy law (GDPR, CCPA, PIPA and others) in your jurisdiction, and you are the data controller for any personal data (emails, phone numbers, reviewer names) returned by a run you start. Use the output for lawful purposes only.

Who this is for

Lead-generation agencies, local-marketing teams, sales reps and researchers who need contactable business lists — not just map pins. If you only need places, run it with the add-ons off and pay for places only.

What one run returns

Row typeOne row perFields
placebusinesstitle, address, phone, website, totalScore, reviewsCount, categoryName, url, placeId, contact (emails, phones, social links), filterApplied
emailemail found on the websiteemail, verdict (deliverable, deliverable-role, disposable, no-mail-server, invalid-syntax), mxFound, mxHosts, roleBased, freeProvider, disposable
socialsocial link found on the websiteplatform, profileUrl, handle, pageTitle, statusCode
reviewnewest Google review (optional)name, stars, text, publishedAtDate, isLocalGuide, reviewerNumberOfReviews

Google shows a logged-out client at most about 5 reviews per business; this Actor does not pretend otherwise. Reviews are off by default (maxReviewsPerPlace: 0).

Pricing (pay per event)

EventCharged perUSD (FREE plan; paid plans get 20–48% off)
apify-actor-startrun0.005
place-scrapedplace row0.004
filter-appliedplace kept, when any filter is on0.001
contact-details-scrapedplace whose website was read0.003
lead-email-verifiedemail row0.003
social-profile-scrapedsocial row0.004
review-scrapedreview row0.0005
cross-platform-review-scrapedApp Store / Google Play review row0.0003

Example: 100 dentists in Austin with contacts and email verification, about 60 of them with a website and 1.5 emails each: 100 places $0.40 + 60 contacts $0.18 + 90 emails $0.27 + start $0.005 = about $0.86. A places-only run of the same 100 businesses is $0.405.

Every row written to the dataset is charged, whatever the target site answered. A place that fails a filter is not delivered and not charged. Notice rows (noticeCode) are messages, never charged.

Input

{
"queries": ["dentist, Austin TX", "https://www.google.com/maps/place/..."],
"maxPlacesPerQuery": 20,
"minRating": 4,
"requireWebsite": true,
"includeContactDetails": true,
"verifyEmails": true,
"scrapeSocialProfiles": true,
"maxReviewsPerPlace": 0,
"proxyConfiguration": { "useApifyProxy": true }
}
  • queries — array (required). Search phrases, Maps URLs, place IDs, or "name, city".
  • Filters — minRating, requireWebsite, requirePhone.
  • Add-ons — includeContactDetails, verifyEmails, scrapeSocialProfiles, maxReviewsPerPlace, crossPlatforms.
  • Free Apify plans receive the first 25 result rows per run; paid plans receive the full result set.

Output example

{ "rowType": "place", "title": "Bright Smile Dental", "phone": "+1 512-555-0100", "website": "https://brightsmile.example",
"totalScore": 4.8, "reviewsCount": 312, "categoryName": "Dentist", "contact": { "emails": ["info@brightsmile.example"], "social": { "instagram": "https://instagram.com/brightsmile" } } }
{ "rowType": "email", "title": "Bright Smile Dental", "email": "info@brightsmile.example", "verdict": "deliverable-role", "mxFound": true, "roleBased": true }
{ "rowType": "social", "title": "Bright Smile Dental", "platform": "instagram", "handle": "brightsmile", "statusCode": 200 }

Runs on the Apify platform

Schedule it, call it from the API, or use it in a workflow. Datacenter proxy is enough for Google Maps; residential proxy is rarely needed. Runs are headless Chromium; 4 GB memory is recommended.

If this Actor saved you time, a sentence about what you used it for helps the next person decide.

Leave a review

A short review on the Reviews tab, good or bad, helps other people find this Actor and tells us what to build next. Found a bug or need a feature? Open an issue on the Issues tab and we'll look into it.