Skip to main content

Automate cold outreach with email personalization using Gemini and Google Sheets

Workflow preview

Workflow preview
100%
Automate cold outreach with email personalization using Gemini 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 n8n template from Intuz provides a complete and automated solution for powerful cold outreach campaigns. It connects a Google Sheet of prospect data with Google Gemin...

Best for

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

Tools used

n8n-nodes-base.googlesheets, n8n-nodes-base.set, @n8n/n8n-nodes-langchain.chainllm, @n8n/n8n-nodes-langchain.lmchatgooglegemini, @n8n/n8n-nodes-langchain.outputparserstructured, n8n-nodes-base.scheduletrigger, n8n-nodes-base.if

Source and attribution

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

Original n8n.io source

1.1 Workflow description

Title
Automate cold outreach with email personalization using Gemini and Google Sheets
Workflow name
Automate cold outreach with email personalization using Gemini and Google Sheets

This n8n template from Intuz provides a complete and automated solution for powerful cold outreach campaigns.

It connects a Google Sheet of prospect data with Google Gemini to automatically generate highly personalized emails. By analyzing specific keywords and data points like company name, industry, or job title from your sheet, this automated workflow crafts unique, relevant messages that feel one-to-one, creating a complete system to dramatically improve your engagement and response rates.

How it Works

Manually writing personalized emails for a long list of leads is a significant bottleneck. This workflow eliminates that friction by creating an automated system that reads your lead list, understands the context, and writes compelling drafts for you.

  • Scheduled Lead Processing: On a schedule you define (e.g., daily), the workflow automatically activates to process your lead list.

  • Fetches Your Lead List: It connects to your designated Google Sheet and reads all the lead data you've prepared, such as names, companies, roles, and any custom notes or pain points.

  • Intelligent Filtering: The workflow is smart enough to know which leads have already been processed. Using an "If" node, it filters out any rows that already contain a generated email, ensuring it only works on new, untouched leads.

  • AI-Driven Personalization (Google Gemini): This is the core of the engine. For each new lead, it sends the relevant data to the Google Gemini Chat Model. The AI follows a custom prompt you define to draft a completely unique email, including a compelling subject line and a personalized body.

  • Structured Data Output: The workflow uses a Structured Output Parser to ensure the AI's response is always in a clean, predictable JSON format (e.g., {"subject": "...", "body": "..."}), making the data easy to handle in the next steps.

  • Seamlessly Updates Your Spreadsheet: Finally, the generated subject line and email body are written back into the correct row for that lead in your Google Sheet, ready for your team to copy, paste, and send.

How to Use: Quick Start Guide

1. Import Workflow Template:

  • Download the template’s JSON file and import it into your n8n instance via “File” > “Import from JSON.”

2. Configure Credentials:

  • Google Gemini: Create and apply your API key credentials to the “Google Gemini Chat Model” node.
  • Google Sheets: Set up and apply OAuth credentials for the Google account that owns your lead spreadsheet. Apply this credential to both the "Read Leads from Sheet" and "Update Sheet with Email" nodes.

3. Customize Nodes & Spreadsheet:

  • Prepare Your Google Sheet: Ensure your sheet has columns for lead data (e.g., FirstName, Company, Role) and empty columns to receive the output (e.g., GeneratedSubject, GeneratedEmail).
  • Read Leads from Sheet: Double-click this node and select your spreadsheet and sheet name from the list.
  • If Node: Update the condition to check your specific output column. For example, if your output column is named GeneratedEmail, the condition should check if {{$json.GeneratedEmail }} is empty.
  • Basic LLM Chain Node: This is the most important step.
  1. Edit the Template prompt to match your product, service, and desired tone.
  2. In the Template Variables section, make sure the values (e.g., {{ $('Read Leads from Sheet').item.json.FirstName }}) match the exact column names from your Google Sheet.
  • Update Sheet with Email Node: Select your spreadsheet and sheet name. Set the Lookup Column to a unique identifier for each lead (like their Email address). Then, map the output from the Prepare Data for Sheet node to the correct destination columns in your sheet.

4. Test & Activate:

  • Test Run: Click “Execute Workflow” to perform a test run. Check your Google Sheet to see if the first unprocessed lead was updated correctly with a new subject and body.

  • Activate: Once satisfied, toggle the workflow “Active” switch to enable it to run on your defined schedule.

Requirements

To use this workflow template, you will need:

1. n8n Instance: A running n8n instance (cloud or self-hosted). 2. Google Gemini Account: For generating the email content (requires a Google Gemini API Key from Google AI Studio). 3. Google Sheets Account: With a prepared spreadsheet containing your lead list and columns for the generated output.

Connect with us

For Custom Worflow Automation

Click here- Get Started

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 - Read Leads from Sheet

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

Block 2 - Prepare Data for Sheet

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

Block 3 - Update Sheet with Email

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

Block 4 - Basic LLM Chain

Type / Role
@n8n/n8n-nodes-langchain.chainLlm - chainLlm
Config choices
Version 1.7

Block 5 - Google Gemini Chat Model

Type / Role
@n8n/n8n-nodes-langchain.lmChatGoogleGemini - lmChatGoogleGemini
Config choices
Version 1

Block 6 - Structured Output Parser

Type / Role
@n8n/n8n-nodes-langchain.outputParserStructured - outputParserStructured
Config choices
Version 1.3

Block 7 - Schedule Trigger

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

Block 8 - If

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

3. Summary Table

Workflow Automate cold outreach with email personalization using Gemini and Google Sheets
Complexity intermediate
Nodes 8
Categories Lead Nurturing, Multimodal AI
Author Intuz
Published 17 Jul 2025

4. Reproducing the Workflow from Scratch

  1. 1. Download the workflow JSON

    Use the JSON export at /data/workflows/6089/6089.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 Automate cold outreach with email personalization using Gemini and Google Sheets do?

This n8n template from Intuz provides a complete and automated solution for powerful cold outreach campaigns. It connects a Google Sheet of prospect data with Google Gemin...

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