Google Maps Lead Enrichment avatar

Google Maps Lead Enrichment

Pricing

from $30.00 / 1,000 results

Go to Apify Store
Google Maps Lead Enrichment

Google Maps Lead Enrichment

Enrich Google Maps business listings with AI-extracted emails, contacts, and social media. CRM-ready output.

Pricing

from $30.00 / 1,000 results

Rating

0.0

(0)

Developer

Peter Corapi

Peter Corapi

Maintained by Community

Actor stats

0

Bookmarked

3

Total users

1

Monthly active users

21 days ago

Last modified

Categories

Share

Turn any Google Maps search into a prospect list with a named contact and a personalized cold-email draft for every lead.

Pay-per-result pricing | Works globally | AI-powered extraction

What You Actually Get (Real Numbers)

Based on a recent 50-lead production run (dentists in Miami, FL):

FieldHit rateNotes
Google Maps core data (name, phone, address, rating, category)~100%Always present
Website crawled + AI extraction ran88%Charged at enriched rate
Personalized cold-email draft86%Headline feature — one per lead, references specific details from their site
Named contact (owner, doctor, principal)72%Mostly full name; ~half also have title
Services list~75%Usually 5-20 items
Business description~75%One-sentence summary
Email address~28%Varies by industry

Industries we've tested: dentistry (88% crawl success), plumbing (70%), HVAC. Service businesses with real websites are the sweet spot.

Why This Is Different From Other Lead Scrapers

Most Google Maps scrapers stop at phone + address. Most "email finders" just grep for email regex. This actor does neither in isolation — it combines them with AI extraction to produce usable outreach material, not just raw data.

The typical output of a run is not "50 emails." It's 50 draft opening messages, ~36 addressed to a real decision-maker by name, plus whatever email addresses happened to be on each site.

How It Works

  1. Search — Fetches businesses from Google Maps for your query + location
  2. Dedupe — Removes any duplicate place IDs from the sub-actor
  3. Crawl — Visits each business website (homepage + /contact, /about, /team, up to 4 pages total, 1.5s between requests)
  4. Extract — Gemini 2.5 Flash reads the page text and extracts emails, contact names, services, description, and drafts a personalized cold email referencing specific details from the site
  5. Score — Rates each lead 0-100 based on completeness (hot / warm / cold)

Who This Is For

  • Cold email / LinkedIn outreach — use the drafts as-is, or as personalization research even when the email isn't available
  • Lead gen agencies — volume prospecting with named decision-makers
  • B2B sales prospecting local businesses in service industries
  • Market research on local business landscapes

Not a good fit for: restaurants (usually on Instagram/Facebook only, no real website text), large retail chains (centralized corporate contacts), or Amazon-first e-commerce brands.

Input

FieldRequiredDescription
Search QueryYesBusiness type (e.g., "plumbers", "dentists", "commercial roofers")
LocationYesCity, region (e.g., "Austin, TX", "London, UK")
Max LeadsNoNumber of businesses (default: 50, max: 500)
Enrich WebsitesNoTurn on AI extraction (default: true). False for basic Google Maps only
Place IDsNoProvide specific Google Maps place IDs instead of a search query

Pricing

Pay-per-result via Apify's PPE system. See the Monetization tab for current rates. Two tiers:

  • Enriched lead — Website crawled and AI extracted at least one useful field (contact, services, description, or draft). You get the full record.
  • Basic lead — No website, crawl failed, blocked, or extraction returned empty. Charged at the lower basic rate. You get Google Maps data only.

The underlying Google Maps sub-actor (compass/crawler-google-places) bills separately to your Apify account — typically a few cents per 50 results.

Output Example

Real output from a hot lead (score 90):

{
"name": "Miamidentist4u by Javier Andrade DDS",
"address": "1695 NW 110th Ave ste 210, Miami, FL 33172",
"phone": "(305) 220-1866",
"website": "http://www.miamidentist4u.com/",
"rating": 4.9,
"review_count": 526,
"category": "Dental clinic",
"place_id": "ChIJO4CWZeq42YgRMjrMqzYgWg8",
"emails": ["info@miamidentist4u.com"],
"contact_name": "Dr. Javier Andrade",
"contact_title": "CEO / Cosmetic & General Dentistry",
"services": [
"Invisalign", "Veneers", "Digital Dentistry",
"Cosmetic Dentistry", "Dental Implants"
],
"description": "Miami Dentist4U, led by Dr. Javier Andrade, is a dental clinic in Miami committed to excellence, offering cutting-edge treatments and personalized care with 24 years of experience in digital dentistry.",
"cold_email_draft": "Hi Dr. Andrade, I was really impressed by your 24 years of experience and Miami Dentist4U's commitment to digital dentistry, transforming smiles with precision and comfort. Your focus on staying at the forefront of cosmetic dentistry advances, like Invisalign and veneers, truly stands out. I'd be interested to hear more about how your personalized approach helps patients achieve their dream smiles.",
"enrichment_status": "enriched",
"score": 90,
"score_label": "hot"
}

Tips

  • Start with 10 leads to see output quality for your industry before running 50+
  • Be specific — "emergency plumbers" beats "plumbers"
  • Location matters — "Austin, TX" gives better results than "Austin"
  • Best industries — dentistry, plumbing, HVAC, legal, accounting, roofing (service businesses with information-rich websites)
  • Weakest industries — restaurants, retail, chain franchises (usually return basic data only)
  • Use the drafts for multi-channel — the personalized opening works on LinkedIn, phone, and email. Don't let a missing email stop you from using the research

Multi-Location Brands

Chains with multiple physical locations appear as separate leads (different Google Maps place IDs). Contact info may repeat across rows. Dedupe client-side on emails or contact_name if you want one entry per brand.

Known Limitations

  • JavaScript-heavy sites (SPAs) return incomplete data — no headless browser
  • Emails are extracted from website text, not SMTP-verified
  • Social media extraction is weak (sites link social via JS-rendered icons the crawler doesn't see) — treat social_media fields as a bonus, not a feature
  • No LinkedIn enrichment (roadmap)
  • Runs take ~1-2 minutes per 10 leads to respect website rate limits

Support

Bug report or feature request? Contact the developer through Apify.