Quick overview
This workflow runs from an n8n form or a weekly schedule, uses Apify Google Maps Leads to find businesses without a website, scores and prioritizes new leads, then appends them to Google Sheets and optionally posts a run summary to Slack.
How it works
- Triggers either when you submit the n8n form or every Monday at 8:00.
- Validates required search settings (Google Sheet URL, category, and city) and stops with an error if they are missing.
- Runs the Apify Google Maps Leads actor to fetch Google Maps businesses that match the category/city filters and have no website (optionally including social-only profiles and/or only unclaimed profiles).
- Filters the results to keep operating businesses with a Place ID, and optionally requires a phone number and/or an unclaimed profile.
- Reads existing rows from the target Google Sheets tab and removes leads whose Place ID is already present to prevent duplicates.
- Scores each new lead (0–100) based on reviews, rating, phone availability, claimed status, and website status, assigns a High/Medium/Low priority, and sorts leads by score.
- Appends the new leads to Google Sheets and, if enabled, posts a summary message (including top leads) to the configured Slack channel.
Setup
- Install the Apify community node (@apify/n8n-nodes-apify) and add an Apify API token credential.
- Create a Google Sheet (for example, a tab named “Leads”) with columns that match the workflow output (including “Place ID”) and connect a Google Sheets credential.
- Update the Google Sheet URL and default search values (category, city, country code, and options like phone/unclaimed/social-only) in the Search settings step.
- If you want notifications, add a Slack credential, set the target channel, and enable the sendSlackSummary setting.