Google Maps Lead Enricher | Emails, Phones & Socials avatar

Google Maps Lead Enricher | Emails, Phones & Socials

Pricing

$5.00 / 1,000 enriched leads

Go to Apify Store
Google Maps Lead Enricher | Emails, Phones & Socials

Google Maps Lead Enricher | Emails, Phones & Socials

Enrich Google Maps business results with emails, phones and social profiles, plus a lead score that flags weak or missing websites. Chain it after any Maps scraper.

Pricing

$5.00 / 1,000 enriched leads

Rating

0.0

(0)

Developer

Daniel Lomonaco

Daniel Lomonaco

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

3 days ago

Last modified

Share

What does Google Maps Lead Enricher do?

Google Maps Lead Enricher turns a raw list of local businesses into a qualified sales pipeline. Feed it the output of any Google Maps scraper and it visits each business's website to pull out contact emails, phone numbers, and social profiles, detects what the site is built with, and scores every business on how weak its web presence is — so you know instantly who is worth a pitch.

A Google Maps scrape tells you a business exists. It does not tell you how to email them, whether their site is broken, or whether they are a prospect. This Actor answers all three.

It is built to chain directly after any Google Maps scraper — paste that run's dataset ID and it does the rest. It runs on the Apify platform, so you get API access, scheduling, proxy rotation, monitoring, and integrations with Make, Zapier, Google Sheets, and Slack out of the box.

Why use Google Maps Lead Enricher?

  • Get contact details Google does not give you. Google Maps rarely exposes an email address. This Actor harvests them from the business's own website.
  • Find businesses that need what you sell. Web designers, SEO consultants, and marketing agencies live on one question: which local businesses have a bad or missing website? The lead score answers it directly.
  • Stop wasting outreach on the wrong prospects. A business with a fast, modern, tracked website is not going to buy a new website. It scores 0 and you skip it.
  • Pay only for what you use. Billing is per delivered lead. Filter with minLeadScore and you are not charged for records you filtered out.

Who it is for

You areYou use the score to
A web design agencyFind businesses with no website or a dead one (score 35+)
An SEO consultantFind sites with no analytics and no mobile viewport
A hosting/security resellerFind sites still served over plain HTTP
A B2B sales teamGet emails and socials for a whole city's worth of businesses

How to use Google Maps Lead Enricher

  1. Run any Google Maps scraper (for example compass/crawler-google-places) for your city and category.
  2. Copy the dataset ID from that run.
  3. Paste it into this Actor's Source dataset ID field and click Start.
  4. Open the Output tab. Sort by leadScore and start with the highest.

No upstream scrape? Paste business objects into Business records, or a plain list of URLs into Website URLs.

Input

Every field is optional, but you must supply businesses one of three ways: sourceDatasetId, businesses, or websites.

FieldTypeDefaultWhat it does
sourceDatasetIdstringDataset ID from a previous Google Maps scrape. The usual way to chain this Actor.
businessesarray[]Business objects to enrich. Extra fields pass through to the output untouched.
websitesarray[]Plain list of website URLs.
websiteFieldstringwebsiteWhich field holds the URL in your records.
maxItemsinteger1000Hard cap on records processed — also caps what you can be charged.
minLeadScoreinteger0Only deliver businesses at or above this score. You are not charged for filtered records.
requireContactbooleanfalseSkip businesses with no phone and no email. You are not charged for filtered records.
maxConcurrencyinteger10Parallel site fetches.
requestTimeoutSecsinteger30When to give up on a slow site.
useApifyProxybooleantrueRoute through Apify Proxy. Recommended — many small-business hosts block repeat datacenter traffic.
{
"sourceDatasetId": "aBcDeFgHiJkLmNoPq",
"minLeadScore": 20,
"requireContact": true,
"maxItems": 500
}

Output

You can download the dataset in various formats such as JSON, HTML, CSV, or Excel.

{
"name": "Bob's Auto Repair",
"phone": "+1 555 0111",
"address": "42 Main St, Springfield",
"website": "http://bobsauto.com/",
"websiteReachable": true,
"httpStatus": 200,
"usesHttps": false,
"emails": ["bob@bobsauto.com"],
"phones": ["+15550111"],
"socials": { "facebook": "https://www.facebook.com/bobsauto" },
"platform": "wix",
"hasAnalytics": false,
"analytics": [],
"mobileFriendly": false,
"copyrightYear": 2018,
"leadScore": 65,
"signals": [
"no-https",
"not-mobile-friendly",
"no-analytics",
"stale-copyright-2018",
"diy-builder-wix"
]
}

Data fields

FieldDescription
emailsEmails from mailto: links and page text. Asset filenames and placeholder domains are filtered out.
phonesNumbers from tel: links, plus the number the upstream record already carried. Businesses with no website keep their Google Maps phone — otherwise the strongest leads would arrive with no way to reach them.
socialsFacebook, Instagram, LinkedIn, X/Twitter, YouTube, TikTok profile URLs. Share buttons are ignored.
platformwordpress, shopify, wix, squarespace, webflow, godaddy, or duda.
analyticsDetected tracking: ga4, gtm, meta-pixel, hotjar, plausible.
mobileFriendlyWhether the page declares a viewport meta tag.
copyrightYearMost recent copyright year found in the page.
websiteReachableWhether the site answered with a status below 400.
leadScore0–100. Higher means a weaker web presence and a better prospect.
signalsThe specific reasons behind the score.
leadTypeno-website, dead-site, weak-site or healthy. Use this, not the score, to isolate a category.
contactableWhether the business has at least one phone or email.

How the lead score works

SignalPointsMeaning
no-website40No website at all — the strongest buying signal. Short-circuits.
site-unreachable35Domain dead or refusing connections. Short-circuits.
no-https20Still on plain HTTP.
not-mobile-friendly20No viewport meta tag.
no-analytics10Nobody is measuring anything.
stale-copyright-YYYY10Copyright two or more years behind.
diy-builder-*5Built on Wix, GoDaddy, Squarespace, or Duda.
no-public-email5No reachable email published.

A healthy, modern, tracked site scores 0 — deliberately. There is nothing to sell it.

What a real run looks like

300 auto repair shops in Phoenix, Arizona, enriched on 2026-08-22:

businesses checked297
scored 20 or above143
no website at all106 (36%)
website dead or unreachable14 (5%)
still HTTP-only124 (42%)
not mobile-friendly131 (44%)
no analytics installed189 (64%)
no email findable anywhere213 (72%)
healthy, scored 038

Two things worth knowing before you plan outreach. Most local businesses in a trade like this cannot be reached by email at all — 72% here had no public address — so the deliverable is usually a call list; 283 of the 297 came back with a phone number. And web presence tracks how busy a business is (review count against lead score came out at r = -0.46), so the businesses that need the most help tend to be the smallest.

How much does it cost?

$0.005 per delivered lead — $5.00 per 1,000. One charge per lead actually delivered to your dataset. Records filtered out by minLeadScore are never charged, so you pay only for businesses that cleared the bar you set. maxItems gives you a hard ceiling on any single run.

Businesses with no website cost the same as any other lead but require no HTTP request, so runs over a low-website-penetration category finish fast.

Tips

  • To get only businesses with no website, filter on leadType, not on the score. The score is a sum, so a business with a bad site can stack signals and outrank a business with no site at all — on a real 297-business run, minLeadScore: 35 returned 130 records where 120 were the no-website-or-dead set, with ten weak sites mixed in. Sort or filter the output by leadType (no-website, dead-site, weak-site) and you get the exact category you asked for.
  • Turn on requireContact if you intend to actually contact the list. It drops businesses with no phone and no email — you are not charged for them. On the same run that was 14 of 297.
  • Use minLeadScore: 0 for contact harvesting. If you want emails for everyone rather than prospect qualification, take the whole set.
  • Lower maxConcurrency for small towns. Many local businesses share one small host, and 10 parallel requests can look like a spike.
  • Keep Apify Proxy on for anything above a few dozen businesses.

FAQ

Does this scrape Google Maps itself? No. It enriches business records you already have. Pair it with a dedicated Maps scraper — that separation keeps this Actor fast and cheap.

Why is a business with a great website scored 0? Because it is not a prospect. The score measures sales opportunity, not site quality.

Where do the emails come from? Only from the business's own public website — mailto: links and visible page text. Nothing behind a login, and no third-party data broker.

How do I find local businesses that need a website? Run a Google Maps scrape for the category and city you sell into, pass the dataset to this Actor, and set minLeadScore: 35. What comes back is the set of businesses with no website at all or one that no longer loads — a ranked list of businesses that need a website, with a contact address attached to each.

Can I get a list of businesses without websites in my city? Yes, that is the highest-scoring bucket. A missing website scores 40 and an unreachable one scores 35, so sorting the output by leadScore descending puts them at the top. Set minLeadScore: 40 to deliver only businesses with no website.

Is this a Google Maps email extractor? It extracts emails, but not from Google Maps — Maps almost never publishes one. It visits the business's own website and harvests public mailto: links and visible contact addresses, which is where a small business actually puts its email. Phones and social profiles come out of the same pass.

How do I build a lead list for a web design or SEO agency? That is the case this Actor was designed around. Scrape a category, enrich it here, and the score sorts the market by how badly each business needs your service: no site, dead site, plain HTTP, no mobile viewport, no analytics, a copyright notice years out of date. You are not charged for the businesses that come back healthy, because those were never prospects.

How do I find businesses with outdated or broken websites? Set minLeadScore: 20, which catches any meaningful weakness rather than only missing sites. The signals field on each record tells you exactly what was wrong — stale copyright year, no HTTPS, no mobile viewport, DIY site builder, unreachable host — so you can open the conversation with a specific observation instead of a generic pitch.

Is scraping legal? This Actor only requests publicly available pages that businesses publish for customers to read, and respects timeouts and retry limits. You are responsible for how you use the output, including compliance with GDPR, CAN-SPAM, and local marketing law when contacting businesses. Collect and store personal data only where you have a lawful basis.

Something is wrong or missing. Open the Issues tab on the Actor page. Custom field extraction and additional detectors can be added on request.