Skip to main content

Automated bulk cold email sender using Gmail, SMTP and Google Sheets

Workflow preview

Workflow preview
100%
Automated bulk cold email sender using Gmail, SMTP and Google Sheets 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 automates the process of sending personalized cold email sequences to your prospects. It fetches un emailed leads from your Google Sheet, validates their email addresses, and then dis...

Best for

  • Lead Nurturing automation workflows
  • intermediate n8n builders looking for reusable templates

Tools used

n8n-nodes-base.splitinbatches, n8n-nodes-base.limit, n8n-nodes-base.if, n8n-nodes-base.googlesheets, n8n-nodes-base.gmail, n8n-nodes-base.scheduletrigger, n8n-nodes-base.wait, n8n-nodes-base.emailsend

Source and attribution

This workflow is cataloged by N8N Workflows and links back to its original n8n.io source page by Gain FLow AI.

Original n8n.io source

1.1 Workflow description

Title
Automated bulk cold email sender using Gmail, SMTP and Google Sheets
Workflow name
Automated bulk cold email sender using Gmail, SMTP and Google Sheets

Overview

This workflow automates the process of sending personalized cold email sequences to your prospects. It fetches un-emailed leads from your Google Sheet, validates their email addresses, and then dispatches tailored emails according to a predefined schedule. It updates your CRM (Google Sheet) with the status of each sent email, ensuring your outreach efforts are tracked and efficient.

Use Case

This workflow is perfect for:

  • Sales Teams: Automate the delivery of multi-stage cold email campaigns to a large volume of leads.
  • Business Development: Nurture prospects over time with a structured email sequence.
  • Recruiters: Send out introductory emails to potential candidates for open positions.
  • Marketers: Distribute personalized outreach for events, content, or product launches.
  • Anyone doing cold outreach: Ensure consistent follow-up and track email performance without manual effort.

How It Works

  1. Scheduled Trigger: The workflow is set to run automatically at a defined interval (e.g., every 6 hours, as currently configured by the "Set Timer" node). This ensures regular outreach without manual intervention.
  2. Fetch Unsent Emails: The "Get Emails" node queries your Google Sheet to identify prospects who haven't yet received the current email in the sequence (i.e., "Email Sent " is "No").
  3. Control Volume: A "Limit" node can be used to control the number of emails sent in each batch, preventing you from sending too many emails at once and potentially hitting sending limits.
  4. Loop Through Prospects: The "Loop Over Items" node processes each selected prospect individually.
  5. Email Validation (Conditional Send): An "If" node checks if the prospect's "Email Address" is valid and exists. This prevents sending emails to invalid addresses, improving deliverability.
  6. Send Email:
    • "Send Email" Node: For valid email addresses, this node dispatches the personalized email to the prospect. It retrieves the recipient's email, subject, and body from your Google Sheet.
    • "connect" Node: (Note: The provided JSON uses a generic emailSend node named "connect" that links to an SMTP credential. This represents the actual email sending mechanism, whether it's Gmail or a custom SMTP server.)
  7. Update CRM: After successfully sending an email, the "Update Records" node updates your Google Sheet. It marks the "Email Sent " column as "Yes" and records the "Sent on" timestamp and a "Message Id" for tracking.
  8. Delay Between Sends: A "Wait" node introduces a delay between sending emails to individual prospects. This helps mimic human sending behavior and can improve deliverability.

How to Set It Up

To set up your Automated Cold Email Sender, follow these steps:

  1. Google Sheet Setup:
    • Duplicate the Provided Template: Make a copy of the Google Sheet Template (1TjXelyGPg5G8lbPDI9_XOReTzmU1o52z2R3v8dYaoQM) into your own Google Drive. This sheet should contain columns for "Name", "Email Address ", "Sender Email", "Email Subject", "Email Body", "Email Sent ", "Sent on", and "Message Id".
    • Connect Google Sheets: Ensure your Google Sheets OAuth2 API credentials are set up in n8n and linked to the "Get Emails" and "Update Records" nodes.
    • Update Sheet IDs: In both "Get Emails" and "Update Records" nodes, update the documentId with the ID of your copied template.
  2. Email Sending Service Credentials:
    • Gmail: If using Gmail, ensure your Gmail OAuth2 credentials are configured and connected to the "Send Email" node (or the "connect" node, if that's your chosen sender).
    • Other Email Services (SMTP): If you use a different email service, you'll need to set up an SMTP credential in n8n and connect it to the "connect" node. Refer to the "Sticky Note4" for guidance on non-Google email services.
  3. Configure Timer:
    • In the "Set Timer" node, adjust the hoursInterval or other time settings to define how frequently you want the email sending process to run (e.g., every 6 hours, once a day, etc.).
  4. Control Volume (Optional):
    • In the "Limit" node, you can set the maxItems to control how many emails are processed and sent in each batch. This is useful for managing email sending limits or gradual outreach.
  5. Import the Workflow: Import the provided workflow JSON into your n8n instance.
  6. Populate Your Sheet: Fill your copied Google Sheet with prospect data, including the email subject and body for each email you wish to send. Ensure the "Email Sent " column is initially "No".
  7. Activate and Monitor: Activate the workflow. It will begin fetching and sending emails based on your configured schedule. Monitor your Google Sheet to track the "Email Sent " status.

This workflow provides a robust and automated solution for managing your cold email campaigns, saving you time and increasing your outreach efficiency.

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 - Loop Over Items

Type / Role
n8n-nodes-base.splitInBatches - splitInBatches
Config choices
Version 3

Block 2 - Limit

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

Block 3 - If

Type / Role
n8n-nodes-base.if - if
Config choices
Version 2.2

Block 4 - Update Records

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

Block 5 - Send Email

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

Block 6 - Get Emails

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

Block 7 - Set Timer

Type / Role
n8n-nodes-base.scheduleTrigger - scheduleTrigger
Config choices
Version 1.2

Block 8 - Wait

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

Block 9 - connect

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

Block 10 - Sticky Note

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

Block 11 - Sticky Note1

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

Block 12 - Sticky Note4

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

3. Summary Table

Workflow Automated bulk cold email sender using Gmail, SMTP and Google Sheets
Complexity intermediate
Nodes 12
Categories Lead Nurturing
Author Gain FLow AI
Published 14 Jul 2025

4. Reproducing the Workflow from Scratch

  1. 1. Download the workflow JSON

    Use the JSON export at /data/workflows/6005/6005.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 Automated bulk cold email sender using Gmail, SMTP and Google Sheets do?

This workflow automates the process of sending personalized cold email sequences to your prospects. It fetches un emailed leads from your Google Sheet, validates their email addresses, and then dis...

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 Nurturing use case.