Skip to main content

Enrich and classify company leads in Google Sheets with Crawl4AI and Gemini

Workflow preview

Workflow preview
100%
Enrich and classify company leads in Google Sheets with Crawl4AI and Gemini preview
Open on n8n.io

1. Workflow Overview

Quick overview This workflow reads unenriched leads from Google Sheets, derives each company website from the email domain, crawls the homepage via Crawl4ai, and uses Google Gemini to extract compa...

Best for

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

Tools used

n8n-nodes-base.stickynote, n8n-nodes-base.httprequest, n8n-nodes-base.manualtrigger, @n8n/n8n-nodes-langchain.informationextractor, @n8n/n8n-nodes-langchain.lmchatgooglegemini, @n8n/n8n-nodes-langchain.outputparserstructured, n8n-nodes-base.splitinbatches, n8n-nodes-base.wait

Source and attribution

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

Original n8n.io source

1.1 Workflow description

Title
Enrich and classify company leads in Google Sheets with Crawl4AI and Gemini
Workflow name
Enrich and classify company leads in Google Sheets with Crawl4AI and Gemini

Quick overview

This workflow reads unenriched leads from Google Sheets, derives each company website from the email domain, crawls the homepage via Crawl4ai, and uses Google Gemini to extract company details and generate an Italian category and description before writing the enriched data back to the sheet.

How it works

  1. Starts when you manually execute the workflow in n8n.
  2. Reads rows from Google Sheets where the Enrichment field is empty, limits processing to 10 items, and iterates through the leads in batches.
  3. Builds a company website URL from each lead’s email domain and sends it to a Crawl4ai HTTP endpoint to crawl the homepage and return HTML and markdown.
  4. Uses Google Gemini (via the Information Extractor) to extract structured company fields such as company name, VAT number, address, city, state, phone, and social links from the crawled page content.
  5. Uses Google Gemini to classify the company into a predefined category list and generate a short Italian description based on the homepage markdown and HTML, and parses the response into structured JSON.
  6. Merges the extracted company details with the classification output and updates the corresponding row in Google Sheets with the enriched fields, then waits 60 seconds before continuing to the next batch.

Setup

  1. Connect your Google Sheets OAuth credentials and select the target spreadsheet and sheet for both reading leads and updating rows.
  2. Add Google Gemini (PaLM) API credentials for the Gemini chat model nodes used for extraction and classification.
  3. Ensure your Google Sheet includes the expected columns (including Email and Enrichment, plus Company, VAT Number, Address, City, State, Phone, Linkedin, Facebook, Instagram, Youtube, Sector, and Description) and keeps the row_number field available for updates.
  4. Update the Crawl4ai HTTP endpoint URL (currently set to an internal IP) so it points to your reachable Crawl4ai service.

Additional info

MY NEW YOUTUBE CHANNEL

👉 Subscribe to my new YouTube channel. Here I’ll share videos and Shorts with practical tutorials and FREE templates for n8n.


Need help customizing?

Contact me for consulting and support or add me on Linkedin

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 - Sticky Note

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

Block 2 - Post Crawling Request

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

Block 3 - Manual Execution Trigger

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

Block 4 - Extract Information

Type / Role
@n8n/n8n-nodes-langchain.informationExtractor - informationExtractor
Config choices
Version 1.2

Block 5 - Use Google Gemini Chat

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

Block 6 - Parse Structured Output

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

Block 7 - Google Gemini Interaction

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

Block 8 - Process in Batches of 10

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

Block 9 - Wait 60 Seconds

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

Block 10 - Merge Combined Data

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

Block 11 - Update Row in Sheet

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

Block 12 - Structured Output HTML

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

Block 13 - Gemini Chat HTML

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

Block 14 - Set Email Field

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

Block 15 - Set Company URL

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

Block 16 - Set Markdown Field

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

Block 17 - Analyze HTML Content

Type / Role
@n8n/n8n-nodes-langchain.agent - agent
Config choices
Version 3.1

Block 18 - Update Lead in Sheets

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

Block 19 - Sticky Note1

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

Block 20 - Read Leads from Sheets

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

Block 21 - Sticky Note2

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

Block 22 - Sticky Note3

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

Block 23 - Sticky Note4

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

Block 24 - Analyze Markdown Content

Type / Role
@n8n/n8n-nodes-langchain.agent - agent
Config choices
Version 3.1

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

3. Summary Table

Workflow Enrich and classify company leads in Google Sheets with Crawl4AI and Gemini
Complexity advanced
Nodes 26
Categories Lead Generation, AI Summarization
Author Davide Boizza
Published 01 Jun 2026

4. Reproducing the Workflow from Scratch

  1. 1. Download the workflow JSON

    Use the JSON export at /data/workflows/16046/16046.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 Enrich and classify company leads in Google Sheets with Crawl4AI and Gemini do?

Quick overview This workflow reads unenriched leads from Google Sheets, derives each company website from the email domain, crawls the homepage via Crawl4ai, and uses Google Gemini to extract compa...

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.