Skip to main content

Extract business leads from Gmail to Google Sheets with Slack notifications

Workflow preview

Workflow preview
100%
Extract business leads from Gmail to Google Sheets with Slack notifications preview
Open on n8n.io

Important notice

This workflow is provided as-is. Please review and test before using in production.

1. Workflow Overview

This workflow allows users to extract potential leads from their inboxes. The idea of a reverse outreach is based on the notion that the next big client/customer/partner might be sitting in your in...

Best for

  • Lead Generation automation workflows
  • Multimodal AI automation workflows
  • advanced n8n builders looking for reusable templates

Tools used

n8n-nodes-base.manualtrigger, n8n-nodes-base.gmailtrigger, n8n-nodes-base.gmail, n8n-nodes-base.code, n8n-nodes-base.slack, n8n-nodes-base.stickynote, n8n-nodes-base.googlesheets

Source and attribution

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

Original n8n.io source

1.1 Workflow description

Title
Extract business leads from Gmail to Google Sheets with Slack notifications
Workflow name
Extract business leads from Gmail to Google Sheets with Slack notifications

This workflow allows users to extract potential leads from their inboxes. The idea of a reverse outreach is based on the notion that the next big client/customer/partner might be sitting in your inbox waiting to be mined. This automation has two workflows, one that extracts from the historical emails, and the other is a scheduled event, default set to run everyday morning.

The workflow intelligently filters out emails from personal domains, system addresses (no-reply, updates), and generic company inboxes (info@, support@). The remaining emails are parsed to extract key information—company name, email address, domain, and subject—which is then stored in a Google Sheets spreadsheet. The Google Sheets node is configured to append or update based on the email address, ensuring that you never store duplicate entries. Finally, you will get a slack message with key information about the lead.

🚀 How it works Manual Trigger: A manual click initiate will fetch all historical emails. the limit set to 500, which you can increase up to 5000

Periodic Trigger: The workflow is triggered by time, default is set to daily fetch.

Code nodes: Three Code nodes filter the emails based on custom rules - personal domains, system addresses, generic inboxes.

Google Sheets: The processed data is sent to a Google Sheets spreadsheet. The append or update operation automatically handles whether to create a new row or update an existing one based on the email address, preventing duplicates.

🔑 Required Credentials Google (Gmail): To access your Gmail account and retrieve email messages.

Google Sheets: To connect to your spreadsheet.

Slack Bot: To Send message in a designated slack channel

🛠️ Setup Instructions Configure Gmail Trigger:

Connect your Google cloud account credential in Gmail and Google sheet nodes.

Choose the schedule to run the Email fetch node that periodically watch for new emails.

Configure Code Node:

This node is pre-configured with the filtering logic. You can customize the lists of personal, blocked, or generic email parts to fit your needs.

Configure Google Sheets Node:

Connect your Google Sheets credentials. Create a Spreadsheet with the following columns company_name, email, domain, subject, date_received

Enter the Spreadsheet ID of your target spreadsheet in the Google sheet node along with the Sheet Name (e.g., Leads).

And that should do it! Now run the manual trigger workflow and see the lead information showing up in your selected Slack Channel and also in the populated google sheet.

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 - Manual Trigger (Historical Run)

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

Block 2 - Gmail Trigger (Real-time)

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

Block 3 - Get many messages

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

Block 4 - Code

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

Block 5 - Send a message

Type / Role
n8n-nodes-base.slack - slack
Config choices
Version 2.3

Block 6 - Sticky Note

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

Block 7 - Sticky Note1

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

Block 8 - Sticky Note2

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

Block 9 - Sticky Note3

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

Block 10 - Sticky Note4

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

Block 11 - Code1

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

Block 12 - Append or update row in sheet

Type / Role
n8n-nodes-base.googleSheets - googleSheets
Config choices
Version 4.7

Block 13 - Sticky Note5

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

Block 14 - Code2

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

Block 15 - Sticky Note6

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

Block 16 - Sticky Note7

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

3. Summary Table

Workflow Extract business leads from Gmail to Google Sheets with Slack notifications
Complexity advanced
Nodes 16
Categories Lead Generation, Multimodal AI
Author Axiomlab.dev
Published 22 Aug 2025

4. Reproducing the Workflow from Scratch

  1. 1. Download the workflow JSON

    Use the JSON export at /data/workflows/7752/7752.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 Extract business leads from Gmail to Google Sheets with Slack notifications do?

This workflow allows users to extract potential leads from their inboxes. The idea of a reverse outreach is based on the notion that the next big client/customer/partner might be sitting in your in...

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 Lead Generation, Multimodal AI use case.