Maps Leads Email Enricher
Pricing
from $10.00 / 1,000 result founds
Maps Leads Email Enricher
Enrich Google Maps Scraper output with real, named decision-maker emails — paste Maps results in directly. Crawls each business's own website, finds verified contacts, validates domains via MX, and scores confidence transparently. Zero paid APIs. Built for agencies and sales teams.
Pricing
from $10.00 / 1,000 result founds
Rating
0.0
(0)
Developer
CANCAP
Maintained by CommunityActor stats
0
Bookmarked
3
Total users
2
Monthly active users
9 days ago
Last modified
Categories
Share
Takes Google Maps Scraper's output (or any list of business websites) and finds real, named decision-maker emails for each — not just generic info@ addresses. Built as a companion enrichment step for Maps-based lead generation, reusing the proven crawling/scoring engine from [Decision-Maker Email Finder].
Why this exists
Google Maps Scraper is the single most popular Actor on the Apify Store (400K+ users), but its most common negative feedback is about missing or generic-only email data, and the extra cost of bolt-on enrichment. This Actor is designed to slot directly after a Maps Scraper run: paste its output in unchanged, get enriched rows back.
What makes this different from the standalone Email Finder Actor
- Accepts Maps Scraper's field names directly (
title,website,address,phone,categoryName,totalScore) — no reshaping needed. - Preserves every original field on each output row, so you don't lose any Maps data; enrichment fields are simply added alongside.
- One best email per lead row, not every candidate — since each output row maps back to a real Maps listing, returning 10 candidate emails per business would be noise, not signal.
- Handles duplicate domains correctly — if multiple Maps listings share a website (e.g. a chain with several locations), the site is crawled only once, but every original lead still gets its own output row with its own address/phone preserved.
How it works (same engine, different shape)
- Pull the website/domain from each lead (
website, falling back todomainorurlif present). - Crawl a few likely pages on that business's own site (home, about, team, contact).
- Extract named contacts and on-page emails; generate likely patterns from real names if no direct email is found; fall back to generic addresses only if nothing better exists.
- Validate the domain via MX lookup (free, reliable). SMTP verification is available but off by default — see the same honest caveat as the standalone actor: many cloud networks, including Apify's own runtime, block outbound port 25, so this layer is best-effort, not a guarantee.
- Pick the single best candidate per domain by source priority (found on page > pattern-generated > generic) and emit one enriched row per original input lead.
Pricing
Same trust-first model as the companion actor: the email-found paid event only fires for real finds (found on page or pattern-generated from a confirmed name). Generic fallback emails and "nothing found" rows go through the free default dataset event — you're never charged full price for a result no better than what you'd type yourself.
What's been tested locally
- All
.actor/*.jsonconfig files validated as well-formed JSON npm installcompletes cleanly- Full end-to-end run against a real live site (github.com), including:
- A duplicate-domain scenario (two leads, same website, different addresses) — confirmed crawled once, output twice, each preserving its own pass-through fields correctly
- A missing-website lead — confirmed correctly skipped with all original fields preserved and a clear
source: "skipped_no_website"marker
- All shared modules carried over from the standalone Email Finder Actor (script-tag stripping fix, DNS-server fix, confidence scoring) re-verified working in this new project
What hasn't been tested yet
- A real "found_on_page" or "pattern_generated" result end-to-end on this specific actor (we've directly verified the underlying extraction logic works via unit-style tests, and it's the identical code from the standalone actor where this path was confirmed working — but this specific actor hasn't yet produced one in a live run)
- Real-world behavior at larger batch sizes (50-100+ leads in one run) — tested so far only with a handful of leads
- SMTP verification on real Apify infrastructure for this actor specifically (expected to behave the same as the standalone actor: mostly "unknown" due to port 25 being blocked on most cloud networks)
Local testing
npm install# Edit storage/key_value_stores/default/INPUT.json with your test inputAPIFY_LOCAL_STORAGE_DIR=./storage npm startcat storage/datasets/default/*.json
Deploying to Apify
npm install -g apify-cliapify loginapify push
Or push this folder to GitHub and link the repo in the Apify Console, same as the companion actor.
A note on responsible use
This Actor only crawls public company websites — no login-walled platforms, no LinkedIn, no scraping Google Maps directly (it expects you've already obtained that data elsewhere, e.g. via Google Maps Scraper, and are enriching it). Names and emails found on public pages may still be considered personal data under GDPR and similar regulations depending on your jurisdiction and use case — use the output responsibly and in line with applicable law.