Quick overview
This workflow runs on demand to scrape Google Maps business listings with websites via Apify, enriches each website with emails and phone numbers using Apify’s Contact Details Scraper, and appends the merged lead data (business details plus contacts and social links) to Google Sheets.
How it works
- Runs when you manually execute the workflow.
- Defines the search query, target location, maximum places to crawl, and an Apify spend cap.
- Uses Apify’s Google Maps Scraper to collect businesses that have a website for the specified search and location.
- De-duplicates the resulting websites and sends the unique domains to Apify’s Contact Details Scraper to extract emails, phone numbers, contact URLs, and social profiles.
- Merges the Google Maps business data with the extracted contact details by matching on website domain.
- Appends the combined lead rows to a selected Google Sheets worksheet.
Setup
- Add an Apify API token credential and select it in both Apify nodes (Google Maps Scraper and Contact Details Scraper).
- Add a Google Sheets credential, then choose the target spreadsheet and worksheet in the Google Sheets append step.
- Update the search term, location, maxPlaces, and maxCostUsd values to match your lead criteria and budget.
Requirements
- Apify account (free plan works). Google Maps Scraper bills per place; Contact Details Scraper bills only for websites where an email or phone is found (about $3 per 1,000). Each run is capped by maxCostUsd.
Customization
- Loop over several searches or cities, run it on a Schedule trigger, add a Filter to keep only rows with an email, or send rows to your CRM instead of Google Sheets.
Additional info
Uses the verified Apify community node (@apify/n8n-nodes-apify). On self-hosted n8n, install it from Settings > Community nodes. Contact details come only from public business websites; follow CAN-SPAM, GDPR and similar rules when contacting leads.