Tutorial 8 min read · April 4, 2026

How to Create Lead Generation Using n8n for Free

n8n can replace $50–500/month of dedicated lead generation tools — Zapier, Typeform, Apollo, Lemlist — entirely for free. This guide walks through four complete workflows you can build and activate today.

OH

OpenHosst Team

Published April 4, 2026

Table of Contents

Why Use n8n for Lead Generation?

Most lead generation stacks are a patchwork of expensive SaaS tools — a form builder, a Zapier plan to connect them, a CRM, an email tool, and a monitoring tool. Each charges separately and the total quickly reaches $100–500/month.

n8n replaces all of that. Because it can act as the automation layer between every tool, you can:

  • Capture web form leads and push them to any CRM or spreadsheet
  • Monitor Reddit, Twitter/X, and RSS feeds for buying-intent keywords in real time
  • Trigger personalised outreach emails from a Google Sheet of prospects
  • Enrich incoming leads with data from Hunter.io, Clearbit, or any API

On the self-hosted Community Edition, all of this runs with no execution limits and no monthly cost beyond your server. Managed hosting from OpenHosst starts at $2.99/month — less than a single Zapier task pack.

Tool replaced Typical cost n8n equivalent
Zapier (Starter)$19.99/mon8n self-hosted (free)
Typeform (Basic)$29/moWebhook node
Lemlist / Mailshake$39–59/moGmail + Google Sheets nodes
Brand monitoring tool$49/moRSS Feed + IF + Slack nodes
Total$137–156/mo$0–2.99/mo

Prerequisites

Before building these workflows you need n8n running with a public URL so webhooks can receive traffic. If you haven't set that up yet, see our guide: How to Use n8n for Free.

You'll also need credentials connected in n8n for the services each workflow uses. Go to Settings → Credentials in your n8n instance and add:

  • Google Sheets OAuth2 — for all workflows that read/write spreadsheets
  • Gmail OAuth2 — for workflows that send email
  • Slack API — for workflows that post to Slack (optional)
  • HubSpot / Pipedrive API key — if you're using a CRM (optional)

All four credentials are free to set up on the free tiers of those services.

Need n8n running first?

7-day free trial, full n8n with webhooks enabled. From $2.99/month after trial.

Start Free Trial

Workflow 1: Web Form → Google Sheets + Email Notification

This workflow captures leads from any web form and stores them in Google Sheets with an instant team notification. It replaces Typeform + Zapier + Google Sheets — which together cost $50+/month.

Webhook Google Sheets Gmail

Step 1: Create the Webhook trigger

In n8n, create a new workflow. Add a Webhook node and set the HTTP Method to POST. Copy the production webhook URL — you'll paste this into your HTML form's action attribute.

Step 2: Append the lead to Google Sheets

Add a Google Sheets node, operation set to Append Row. Select your spreadsheet and map the incoming fields from the webhook body to your column headers:

  • {{ $json.body.name }} → Name column
  • {{ $json.body.email }} → Email column
  • {{ $json.body.message }} → Message column
  • {{ $now.toISO() }} → Date column

Step 3: Send a team notification email

Add a Gmail node set to Send Email. Use expressions to include the lead's details in the email body:

New lead from website:
Name: {{ $('Webhook').item.json.body.name }}
Email: {{ $('Webhook').item.json.body.email }}
Message: {{ $('Webhook').item.json.body.message }}

Step 4: Activate and embed

Connect the nodes, click Activate, and point your HTML form to the webhook URL:

<form action="YOUR_WEBHOOK_URL" method="POST">
  <input name="name" type="text" required>
  <input name="email" type="email" required>
  <textarea name="message"></textarea>
  <button type="submit">Send</button>
</form>

Every submission now instantly appears in your Google Sheet and sends a team alert — no Zapier, no Typeform.

Workflow 2: Social Monitoring → Slack/Discord Lead Alert

Monitor Reddit, Hacker News, or any RSS feed for high-intent keywords ("looking for Zapier alternative", "n8n setup help", "recommend automation tool") and automatically alert your team so you can respond while the prospect is still active.

Schedule Trigger RSS Feed IF Filter Slack Google Sheets

Step 1: Schedule the trigger

Add a Schedule Trigger node set to run every 30 minutes. This polls the feeds regularly without hammering any server.

Step 2: Pull from Reddit RSS

Add an RSS Feed node. Reddit exposes search results as RSS feeds — use this URL pattern:

https://www.reddit.com/search.rss?q=YOUR+KEYWORD&sort=new&t=hour

Replace YOUR+KEYWORD with a buying-intent phrase. Run separate RSS nodes for each keyword you want to monitor.

Step 3: Filter recent posts only

Add an IF node to discard posts older than 30 minutes. Use the condition:

{{ $json.pubDate }} is after {{ $now.minus(30, 'minutes').toISO() }}

Step 4: Alert your team

Add a Slack node to post to your #leads channel with the post title, author, and link. Optionally add a Google Sheets node to log every match for follow-up tracking.

High-intent keywords to monitor

Try monitoring: "looking for Zapier alternative", "n8n help", "recommend automation tool", "workflow automation for small business". These indicate active purchase intent.

Workflow 3: Google Sheets → Personalised Outreach Sequence

Turn a spreadsheet of cold prospects into an automated first-touch email sequence — without paying for Apollo, Lemlist, or Mailshake ($39–59/month each).

Google Sheets Trigger IF (not contacted) Gmail Google Sheets (update)

Step 1: Trigger on new sheet rows

Add a Google Sheets Trigger node set to trigger on Row Added. Point it to your prospects spreadsheet. The sheet should have columns: Name, Email, Company, Status.

Step 2: Skip already-contacted leads

Add an IF node with the condition: Status is empty (or equals "New"). This prevents duplicate emails if the trigger fires more than once.

Step 3: Send the personalised email

Add a Gmail node. Use expressions in the subject and body to personalise each email:

Subject: Quick question, {{ $json.Name }}

Hi {{ $json.Name }},

I noticed {{ $json.Company }} and thought you might be
interested in how teams like yours are saving hours
per week with n8n automations.

Would you be open to a 15-minute call?

Step 4: Mark the lead as contacted

Add a Google Sheets node, operation Update Row. Set the Status column to "Contacted" and add a timestamp. This prevents re-sending on the next run.

Optional: Add a follow-up after 3 days

After the Gmail node, add a Wait node set to 3 days, then a second Gmail node with a follow-up message. n8n's Wait node pauses execution and resumes automatically — no cron job needed.

Workflow 4: Webhook Lead → CRM + Enrichment

When a lead comes in via webhook (from Workflow 1 or any other source), automatically enrich their profile with company data and push them to your CRM.

Webhook HTTP Request (Hunter.io) HubSpot

Step 1: Receive the lead via webhook

Reuse the webhook from Workflow 1, or create a new one. The lead arrives with name, email, and any other fields your form collects.

Step 2: Enrich with Hunter.io (free plan)

Add an HTTP Request node to call Hunter.io's Email Finder API. Hunter.io's free plan includes 25 searches/month — enough for testing and light usage.

GET https://api.hunter.io/v2/email-finder
  ?domain={{ $json.body.email.split('@')[1] }}
  &first_name={{ $json.body.name.split(' ')[0] }}
  &last_name={{ $json.body.name.split(' ')[1] }}
  &api_key=YOUR_HUNTER_API_KEY

Step 3: Create a contact in HubSpot

Add a HubSpot node, operation Create Contact. Map the enriched fields — email, name, company (from Hunter's response), and lead source — to the HubSpot contact properties. Your CRM is now updated automatically for every incoming lead.

Free n8n Lead Generation Templates

All four workflows above can be exported as JSON and re-imported into any n8n instance. Beyond what's in this guide, the n8n community template library includes ready-made lead gen workflows for:

  • LinkedIn Sales Navigator export → HubSpot sync
  • Calendly booking → CRM lead creation
  • Contact form → Notion database
  • Lead scoring based on company size and industry
  • Automated demo booking follow-up sequences

Browse the full collection on our n8n Templates page. Each template can be imported in one click from the n8n template library inside your instance (New Workflow → Browse Templates).


Frequently Asked Questions

Can n8n replace Zapier for lead generation?

Yes. n8n has native nodes for all major lead gen integrations — Gmail, Google Sheets, HubSpot, Salesforce, Slack, Airtable, and hundreds more. The self-hosted version runs with no execution limits, while Zapier charges per task. For workflows that fire hundreds of times per day, n8n saves $100–500/month versus Zapier.

Do I need coding skills to build these workflows?

No. All four workflows are built visually using n8n's drag-and-drop editor. The only optional step that uses code is the expression syntax for personalising emails (e.g. {{ $json.Name }}) — and that's just filling in field names, not writing logic.

Does n8n integrate with HubSpot and Salesforce?

Yes. n8n has dedicated nodes for HubSpot, Salesforce, Pipedrive, and Airtable with full CRUD support. You can create, update, search, and delete records from any of these CRMs directly within your workflow — no API code required.

What's the cheapest way to run n8n lead gen workflows 24/7?

Managed n8n hosting from OpenHosst starts at $2.99/month with a 7-day free trial. Your scheduled monitoring workflows run every 30 minutes around the clock, and webhook triggers respond instantly to incoming leads.

Can I use these workflows without a CRM?

Absolutely. All four workflows work perfectly with Google Sheets as a lightweight CRM replacement. Sheets is free, supports formulas for lead scoring, and can be shared with your entire team. You can always add a real CRM node later without changing the rest of the workflow.


Ready to start? Start a 7-day free trial on OpenHosst to get n8n running with a public webhook URL, then follow the steps above to build your first lead gen workflow. No DevOps skills needed.

New to n8n? Read What is n8n? first, or see how to run n8n for free before setting up your first workflow.

Get Support