Skip to main content

Find and save local lead prospects with Google Places, Firecrawl and Supabase

Workflow preview

Workflow preview
100%
Find and save local lead prospects with Google Places, Firecrawl and Supabase preview
Open on n8n.io

1. Workflow Overview

Quick Overview This workflow receives a webhook request with a target business vertical and location, finds matching companies via Google Places API, scrapes their websites with Firecrawl to extrac...

Best for

  • Automation automation workflows
  • advanced n8n builders looking for reusable templates

Tools used

n8n-nodes-base.webhook, n8n-nodes-base.code, n8n-nodes-base.httprequest, n8n-nodes-base.respondtowebhook, n8n-nodes-base.microsoftoutlook, n8n-nodes-base.stickynote

Source and attribution

This workflow is cataloged by N8N Workflows and links back to its original n8n.io source page by Pedro Olavarria.

Original n8n.io source

1.1 Workflow description

Title
Find and save local lead prospects with Google Places, Firecrawl and Supabase
Workflow name
Find and save local lead prospects with Google Places, Firecrawl and Supabase

Quick Overview

This workflow receives a webhook request with a target business vertical and location, finds matching companies via Google Places API, scrapes their websites with Firecrawl to extract and validate contact emails, deduplicates against Supabase, stores new prospects, and sends a single digest via Microsoft Outlook plus a notification webhook.

How it works

  1. Receives a POST webhook request containing a business vertical, location, and optional result limit.
  2. Searches Google Places Text Search for matching local businesses and keeps operational results that include a website while filtering out competitor categories.
  3. Scrapes each business homepage and a likely contact page with Firecrawl to extract a preferred email address and detect parked or low-content domains.
  4. Validates the extracted email domain by checking DNS MX records via Google DNS-over-HTTPS.
  5. Collects all processed businesses, fetches existing prospects from Supabase, and removes entries that match existing website URLs or verified emails.
  6. Inserts the new, emailable prospects into a Supabase table and sends a single HTML digest email through Microsoft Outlook.
  7. Posts a run summary to a separate webhook endpoint (for a Telegram relay) and returns a JSON response to the original webhook caller.

Setup

  1. Create credentials for Google Places API (HTTP Header Auth with your API key), Firecrawl, Supabase, and Microsoft Outlook OAuth2.
  2. Replace the Supabase REST URLs (YOUR-PROJECT.supabase.co) and ensure a pilot_prospects table exists with fields to store website_url, verified_email, and the inserted prospect payload.
  3. Update the webhook path and send POST requests like {"vertical":"dentists","location":"Orlando FL","limit":20} to trigger the workflow.
  4. Set the digest recipient/sender addresses in the Microsoft Outlook email node.
  5. Replace the notification webhook URL used for the Telegram relay with your own endpoint (and configure that endpoint/bot to post to your target chat).

1.2 Logical Blocks

This catalog entry is organized from the workflow JSON. The node-level section below shows the executable blocks available for review before importing the template.

2. Block-by-Block Analysis

Block 1 - Webhook

Type / Role
n8n-nodes-base.webhook - webhook
Config choices
Version 2.1

Block 2 - Set Config

Type / Role
n8n-nodes-base.code - code
Config choices
Version 2

Block 3 - Places Text Search

Type / Role
n8n-nodes-base.httpRequest - httpRequest
Config choices
Version 4.2

Block 4 - Map Businesses

Type / Role
n8n-nodes-base.code - code
Config choices
Version 2

Block 5 - Respond

Type / Role
n8n-nodes-base.respondToWebhook - respondToWebhook
Config choices
Version 1.1

Block 6 - Firecrawl Scrape

Type / Role
n8n-nodes-base.httpRequest - httpRequest
Config choices
Version 4.2

Block 7 - Extract Email

Type / Role
n8n-nodes-base.code - code
Config choices
Version 2

Block 8 - Collect Results

Type / Role
n8n-nodes-base.code - code
Config choices
Version 2

Block 9 - Find Contact

Type / Role
n8n-nodes-base.code - code
Config choices
Version 2

Block 10 - Firecrawl Contact

Type / Role
n8n-nodes-base.httpRequest - httpRequest
Config choices
Version 4.2

Block 11 - Fetch Existing

Type / Role
n8n-nodes-base.httpRequest - httpRequest
Config choices
Version 4.2

Block 12 - Map + Dedup

Type / Role
n8n-nodes-base.code - code
Config choices
Version 2

Block 13 - Insert Prospects

Type / Role
n8n-nodes-base.httpRequest - httpRequest
Config choices
Version 4.2

Block 14 - Telegram Digest

Type / Role
n8n-nodes-base.httpRequest - httpRequest
Config choices
Version 4.2

Block 15 - MX Lookup

Type / Role
n8n-nodes-base.httpRequest - httpRequest
Config choices
Version 4.2

Block 16 - Apply MX

Type / Role
n8n-nodes-base.code - code
Config choices
Version 2

Block 17 - Email Digest

Type / Role
n8n-nodes-base.microsoftOutlook - microsoftOutlook
Config choices
Version 2

Block 18 - One Digest Email

Type / Role
n8n-nodes-base.code - code
Config choices
Version 2

Block 19 - Sticky: Overview & Setup

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

Block 20 - Sticky: 1 Find businesses

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

Block 21 - Sticky: 2 Find a contact email

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

Block 22 - Sticky: 3 Validate the email

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

Block 23 - Sticky: 4 Dedup and save

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

Block 24 - Sticky: 5 Send one digest

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

3. Summary Table

Workflow Find and save local lead prospects with Google Places, Firecrawl and Supabase
Complexity advanced
Nodes 24
Categories Automation
Author Pedro Olavarria
Published 16 Jun 2026

4. Reproducing the Workflow from Scratch

  1. 1. Download the workflow JSON

    Use the JSON export at /data/workflows/16424/16424.json as the source template for this automation.

  2. 2. Import the template into n8n

    Open n8n, import the downloaded JSON, and review each node before activating the workflow.

  3. 3. Configure credentials and variables

    Replace placeholder credentials, API keys, webhook URLs, account IDs, and environment-specific values with your own settings.

  4. 4. Test with sample data

    Run the workflow manually or in a staging workspace, inspect node output, and confirm downstream systems receive the expected data.

  5. 5. Activate and monitor

    Enable the workflow only after testing, then monitor executions, errors, and rate limits during the first production runs.

5. General Notes & Resources

Review imported nodes carefully before activation. This catalog entry is intended to help you inspect the workflow structure, understand required services, and find related templates faster.

Node names, credentials, schedules, webhook paths, and external service limits may need adjustment for your workspace.

Frequently asked questions

What does Find and save local lead prospects with Google Places, Firecrawl and Supabase do?

Quick Overview This workflow receives a webhook request with a target business vertical and location, finds matching companies via Google Places API, scrapes their websites with Firecrawl to extrac...

What do I need before importing this workflow?

Review the workflow JSON, configure any required credentials in n8n, and test the automation in a safe workspace before using it in production.

Can I customize this workflow?

Yes. Use the block-by-block analysis and the downloadable JSON to inspect each node, then adjust credentials, prompts, schedules, filters, or destinations for your Automation use case.