Google Maps Lead Machine: 100 qualified local-business leads every week, with a personalized opening line
An n8n workflow that scrapes local businesses from Google Maps, filters out the ones without a website or with low ratings, has Claude write a personalized cold-email opener for each, and drops everything into a ready-to-send Google Sheet.
- 1
Schedule the weekly run
Add a
Schedule Triggernode set to Monday 07:00. One run per week keeps your pipeline full without re-scraping the same businesses — the dedupe step below handles the overlap anyway. - 2
Scrape Google Maps with Apify
Add an
HTTP Requestnode calling Apify's Google Maps Scraper actor (compass/crawler-google-places). Search for your niche and city — e.g.dentist in Austin, TX— limited to 200 places, returning name, category, rating, review count, phone, website, and address. Store the Apify token as an n8n credential. - 3
Filter to businesses that actually need you
Add a
Codenode that keeps places with a rating above 4.0 and more than 20 reviews (they're established, they spend money), then flags the ones with no website or afacebook.comlink as the hottest leads if you sell web or automation services. Drop everything already present in your sheet from previous weeks by checking the place ID. - 4
Let Claude write the opening line
Add an
HTTP Requestnode to the Claude API (/v1/messages). Pass the business name, category, rating, review count, and city. Prompt: write ONE specific, non-cringe opening sentence for a cold email that references something concrete about this business — no flattery, noI hope this finds you well. Ask for JSON with a singleopenerfield so parsing never breaks. - 5
Append to the lead sheet
Add a
Google Sheetsnode in append mode: date, business name, category, phone, website, address, rating, and Claude's opener — one lead per row. Your Monday morning now starts with 100 researched leads instead of a blank prospecting page.
Frequently asked questions
How much does 100 leads a week cost?
Apify's Google Maps scraper costs roughly $0.004 per place, so 200 places a week is about $3.50/month. Claude's opener generation adds a few cents per run. If you self-host n8n, the total is under $5/month — less than a single lead costs on most paid databases.
Is scraping Google Maps data allowed?
You're collecting publicly listed business information (name, phone, website, rating) — the same data anyone sees on the map. Check the regulations that apply to you (e.g. GDPR treats business contact data more leniently than consumer data, but cold-email rules like CAN-SPAM still apply to what you send). The recipe builds the list; how you contact it is on you.
Can I use this with Make or Zapier instead of n8n?
Make: yes — Scheduler, HTTP (Apify), a filter step, HTTP (Claude), Google Sheets maps one-to-one. Zapier is a poor fit here because the filtering and dedupe logic needs a real code step and multi-item handling, which Zapier makes painful. The importable file is n8n-only.
Keep every recipe free
FlowRecipesHub is free and always will be. If a workflow saved you time, chip in what you like — it helps us keep the lights on and build the next batch of automations for everyone.
Secure checkout via Paddle · one-time, no account needed
