Skip to main content

Qualify CSV leads, enrich emails, and deliver results with Google Sheets, Drive, WhatsApp, and GPT-5-NANO

Workflow preview

Workflow preview
100%
Qualify CSV leads, enrich emails, and deliver results with Google Sheets, Drive, WhatsApp, and GPT-5-NANO preview
Open on n8n.io

1. Workflow Overview

This automated n8n workflow transforms raw CSV data into qualified, enriched lead databases with verified emails and AI generated personalization. It processes uploaded CSV files through multiple v...

Best for

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

Tools used

n8n-nodes-base.formtrigger, n8n-nodes-base.extractfromfile, n8n-nodes-base.code, n8n-nodes-base.converttofile, n8n-nodes-base.googledrive, n8n-nodes-base.removeduplicates, n8n-nodes-base.set, n8n-nodes-base.httprequest

Source and attribution

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

Original n8n.io source

1.1 Workflow description

Title
Qualify CSV leads, enrich emails, and deliver results with Google Sheets, Drive, WhatsApp, and GPT-5-NANO
Workflow name
Qualify CSV leads, enrich emails, and deliver results with Google Sheets, Drive, WhatsApp, and GPT-5-NANO

This automated n8n workflow transforms raw CSV data into qualified, enriched lead databases with verified emails and AI-generated personalization. It processes uploaded CSV files through multiple validation, enrichment, and sorting stages before delivering organized results via Google Drive, WhatsApp, or Google Sheets.

How It Works

Stage 1: Data Intake & Normalization

  1. Form Submission: User uploads a CSV/XLSX file and selects:
  • Delivery method (Google Drive, WhatsApp, or Google Sheets with processing)
  • Two personalization prompts for AI-generated messages
  1. Column Mapping: The workflow automatically recognizes and standardizes 100+ column name variations into consistent fields
  2. Deduplication: Removes duplicate entries by website URL and contact name
  3. Initial Filtering: Identifies and flags invalid websites (social media profiles, link shorteners)

Stage 2: Data Quality Routing

The workflow analyzes each record and routes it based on available data:

Route A: Invalid Website → Sends directly to "x Website" sheet

Route B: No Website → Verifies existing email and categorizes by validity

Route C: Valid Website + Email → Proceeds to email verification and enrichment

Route D: Valid Website - Email → Scrapes website to find email addresses.

Stage 3: Email Discovery & Verification

For records needing enrichment:

  1. Website Scraping: Fetches HTML content from company websites
  2. Email Extraction: Uses regex patterns to identify email addresses
  3. AI Selection: GPT-5-NANO chooses the most relevant email from multiple options
  4. Dual Verification:
  • Primary check via Reoon API (deliverability, SMTP, safety)
  • Backup verification if primary fails
  1. Personal Email Processing: Separately validates personal emails when present

Stage 4: Website Intelligence Gathering

Parallel to email processing:

  • Extracts HTML title tags for company context
  • Captures meta descriptions for business understanding
  • Pulls H1 headings for content insight
  • Handles scraping failures gracefully with empty placeholders

Stage 5: Email Categorization Logic

Records are sorted into buckets:

  • +1 Email: Has exactly one verified email (business OR personal OR newly found)
  • +2 Email: Has two or more verified emails
  • Single Source Records: Only business email OR only personal email

Stage 6: AI Personalization

For records with verified emails:

  1. Context Assembly: Combines name, company, job title, website metadata, industry, keywords
  2. AI Processing: Sends to GPT-5-NANO or Gemini with user's custom prompts
  3. Structured Output: Generates:
  • Cleaned contact name
  • Shortened company name
  • Personalization message 1 (per user prompt)
  • Personalization message 2 (per user prompt)

Stage 7: Final Delivery

Based on user's initial selection:

  • Google Drive: Uploads timestamped CSV, sends email with link
  • WhatsApp: Converts to XLSX and sends document
  • Google Sheets: Populates separate sheets by category with completion email

How To Use

  • Active n8n instance with required credentials:
  • Google Drive API access
  • Google Sheets API access
  • Gmail API access (for notifications)
  • WhatsApp Business API credentials
  • Reoon Email Verifier API keys
  • OpenAI API key (GPT-5-NANO)
  • Optional: Google Gemini API key

Setup Steps

1. Configure Google Sheets Destinations

Create or use existing Google Sheets for data categorization:

  • +1 Email Sheet: Update document ID in "+1 Email" node
  • +2 Email Sheet: Update document ID in "+2 Email" node
  • x Website Sheet: Update document ID in "x Website Data" node
  • No Website Sheet: Update document ID in "- Website +- Email +- Phone Number" node

Ensure all sheets have matching column headers as defined in the workflow.

2. Set Up Google Drive Folder

  • Create a destination folder in Google Drive
  • Update the folder ID in the "Upload file" node
  • Ensure the service account has write permissions

3. Configure WhatsApp

  • Add your WhatsApp Business Phone Number ID in the "Send CSV" node
  • Update the recipient phone number (format: +[country code][number])

4. Customize Email Notifications

  • Update sender and recipient emails in "Send a message" and "Send a Success Message" nodes
  • Modify email templates as needed

5. Verify API Keys

Check that all API credentials are active:

  • Reoon Email Verifier keys (two instances for redundancy)
  • OpenAI API key for GPT-5-NANO
  • All Google API credentials

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 - On form submission

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

Block 2 - Extract from File

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

Block 3 - Code

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

Block 4 - Convert to File

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

Block 5 - Replace Value

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

Block 6 - Upload file

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

Block 7 - Remove Duplicate Websites

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

Block 8 - Remove Duplicate Name

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

Block 9 - Detect Wrong Website URLs

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

Block 10 - HTTP Request

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

Block 11 - Extract Tag & Attributee

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

Block 12 - Merge

Type / Role
n8n-nodes-base.merge - merge
Config choices
Version 3.2

Block 13 - Extract Website Details

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

Block 14 - Send a message

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

Block 15 - Send CSV

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

Block 16 - Sticky Note7

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

Block 17 - Loop

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

Block 18 - CSV Loop

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

Block 19 - Send to Switch

Type / Role
n8n-nodes-base.switch - switch
Config choices
Version 3.2

Block 20 - Data Processing Switch

Type / Role
n8n-nodes-base.switch - switch
Config choices
Version 3.2

Block 21 - E: Email not exist

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

Block 22 - E: Seng Process Data

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

Block 23 - E: Right or Wrong

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

Block 24 - E: Verify

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

Showing the first 24 of 102 workflow blocks. Download the JSON for the full node graph.

3. Summary Table

Workflow Qualify CSV leads, enrich emails, and deliver results with Google Sheets, Drive, WhatsApp, and GPT-5-NANO
Complexity advanced
Nodes 102
Categories Lead Generation, AI Summarization
Author Bhavy Shekhaliya
Published 01 Dec 2025

4. Reproducing the Workflow from Scratch

  1. 1. Download the workflow JSON

    Use the JSON export at /data/workflows/11382/11382.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 Qualify CSV leads, enrich emails, and deliver results with Google Sheets, Drive, WhatsApp, and GPT-5-NANO do?

This automated n8n workflow transforms raw CSV data into qualified, enriched lead databases with verified emails and AI generated personalization. It processes uploaded CSV files through multiple v...

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