The numbers on cold email in 2026 tell a blunt story. According to Martal's analysis of B2B cold email benchmarks, 95% of cold emails fail to generate any reply. Nearly one in five never reaches an inbox at all, lost to spam filters, according to Infraforge's deliverability research. And the average reply rate across billions of emails tracked by Instantly's 2026 benchmark report sits at 3.43%.
But the same data also shows what works. Personalised cold emails generate a 32% higher response rate than generic messages, according to Sopro's analysis of 151 million outreach points. Campaigns with advanced personalisation reach reply rates of 18%, roughly double the generic-template average. And Salesforge reports that 65% of B2B sales teams are now using AI for scalable personalisation, with campaigns seeing 57% higher open rates and 82% more responses.
The gap is not awareness. Everyone knows personalisation works. The gap is that doing it manually — looking up each lead's company, finding their email, writing a custom message, tracking replies — takes hours. And most teams give up after the first email. Instantly found that follow-ups generate 42% of all campaign replies, yet 48% of reps never send a second message.
We at Supernodes build systems that close this gap. The pipeline we walk through here uses three tools that anyone can access: Hunter.io for email discovery and verification, Claude via the Anthropic API for intelligent personalisation, and n8n for the workflow plumbing that connects everything. Once set up, it enriches every lead with verified contact data, generates a personalised email in seconds, and handles follow-up routing automatically. The whole thing costs less than a team lunch per month.
What you get: a sales automation pipeline that turns a list of names and company domains into personalised cold emails, enriched with data, scored against your ICP, and routed to the right channel — without a human touching any step between input and send.
Why most cold email fails (and what the data says)
The average cold email open rate across all B2B industries has stabilised at 27.7%, according to Snov.io's 2026 benchmarks. That means 72% of cold emails are opened by nobody. Of those that are opened, most still get ignored. The average conversion rate from cold outreach is just 0.2% — roughly one deal won per 500 emails sent, per Focus Digital's analysis.
The reasons are not mysterious. According to Martal's breakdown, the top causes are poor targeting, lack of personalisation, weak subject lines, and no follow-up. Woodpecker found that campaigns with under 50 recipients average a 5.8% reply rate, compared to 2.1% for larger batches. Small, curated, personalised lists outperform spray-and-pray every time.
The fix is automation that brings the personalisation without the manual labour. Hunter.io finds and verifies email addresses. Claude writes the email based on what it knows about the prospect. n8n triggers the whole thing and handles the routing. And the specific combo of these three tools has near-zero existing SERP competition — nobody has published a dedicated walkthrough for this exact stack, which means the teams that build it now get an advantage before the content catches up.
What you need before starting
You need four things. A Hunter.io account — the free plan gives you 25 monthly searches, and the Starter plan at $49 per month ($34 on annual billing) gives 500 searches and API access. An Anthropic API key — new accounts get $5 in free credits, which covers several thousand personalised emails. An n8n instance — free if you self-host, $20 per month on the cloud plan. And a platform to send the emails, like Instantly, Smartlead, or your own email infrastructure.
Total cost for a team processing 500 leads per month: roughly $50 to $70 including Hunter.io Starter, n8n cloud, and Claude API calls. That works out to about 10 to 14 cents per personalised email, and the time savings compound as volume increases.
Step 1: Set up the Hunter.io enrichment pipeline in n8n
Connect Hunter.io to n8n for automated lead enrichment
Create a new n8n workflow and add a Webhook node as the trigger. Set the HTTP method to POST. This is where your lead list enters the pipeline. You can feed it from a Google Sheet, a manual paste, or an automated source like a LinkedIn scraper.
Add an HTTP Request node connected to the webhook output. This calls the Hunter.io Email Finder API. Configure it like this:
Method: GET
URL: https://api.hunter.io/v2/email-finder
Query Parameters:
domain: {{ $json.domain }}
first_name: {{ $json.first_name }}
last_name: {{ $json.last_name }}
api_key: YOUR_HUNTER_API_KEY
The API returns a JSON object with the email address, a confidence score (0-100), and source information. Map these to variables for use downstream. If the email comes back with a confidence score below 70, route the lead into a review queue rather than sending a potentially wrong email.
For fuller enrichment, you can add a second HTTP Request node calling the Domain Search endpoint to pull company-level data. Or layer in Clearbit or Apollo.io for job titles, company size, and industry. n8n supports parallel API calls, so enrichment happens in seconds, not minutes.
Test it: send a test payload with a name and domain. Check the Hunter.io API response in n8n's execution log. You should see a verified email address with a confidence score.
Step 2: Build the lead scoring and personalisation prompt for Claude
Write the Claude prompt that scores leads and generates personalised emails
This is the part that determines whether the pipeline produces a generic template or a genuinely personal email. The prompt needs your ICP criteria, the enriched lead data, and explicit output formatting so Claude returns consistent, machine-readable JSON.
Here is the prompt template we use with clients at Supernodes. Replace the ICP criteria with your own, but keep the structure:
You are a B2B cold email personalisation assistant. Given enriched lead data, score the lead against our ICP and generate a personalised cold email.
ICP CRITERIA:
- Company size: 50-500 employees (best fit), 10-49 (moderate), 500+ (fair if they have AI tooling)
- Industry: B2B SaaS, professional services, fintech, martech (strong). E-commerce, retail (moderate). Consumer goods, non-profit (weak)
- Job title: VP/Director/Head of Marketing, Growth, Sales, RevOps (strong). Manager level (moderate). IC (weak)
- Location: US, Canada, UK, Australia (strong). Other English-speaking (moderate)
- Signals: mention of "automation", "AI", "workflow", "stack" in company data (bonus +10)
EMAIL RULES:
- Under 80 words total
- Lead with a specific observation about their company or industry
- One clear, low-commitment ask
- No "just checking in", no "hope this finds you well", no template-y openings
Return ONLY valid JSON, no markdown, no explanation outside the JSON:
{
"score": 0-100,
"tier": "hot" (80+), "warm" (50-79), or "cold" (under 50),
"subject_line": "specific, under 50 chars",
"email_body": "the personalised email text, under 80 words",
"reasoning": "1 sentence explaining the personalisation logic"
}
LEAD DATA:
Name: {{ $json.first_name }} {{ $json.last_name }}
Company: {{ $json.company }}
Domain: {{ $json.domain }}
Email: {{ $json.email }}
{{#if $json.job_title}}Job Title: {{ $json.job_title }}{{/if}}
{{#if $json.industry}}Industry: {{ $json.industry }}{{/if}}
{{#if $json.company_size}}Company Size: {{ $json.company_size }}{{/if}}
The prompt asks Claude to return only JSON. If Claude wraps the result in markdown code fences, the n8n parse step fails. Add a Function node after the Claude call to strip any markdown: {{ $json.content[0].text.replace(/^```json\n?|\n?```$/g, '') }} before parsing.
Saleshandy's June 2026 analysis found that campaigns using AI-generated subject lines and personalised body content saw significantly higher reply rates. The key is feeding Claude specific data points — the richer the enrichment in Step 1, the better the personalisation here.
Step 3: Connect Claude to n8n for cold email generation
Call the Anthropic API from n8n
Add an HTTP Request node after the enrichment step. Configure it to call the Anthropic Messages API:
Method: POST
URL: https://api.anthropic.com/v1/messages
Headers:
x-api-key: YOUR_ANTHROPIC_API_KEY
anthropic-version: 2023-06-01
content-type: application/json
Body (JSON):
{
"model": "claude-sonnet-4-20250514",
"max_tokens": 500,
"messages": [
{
"role": "user",
"content": "{{ $json.prompt }}"
}
]
}
Claude Sonnet is the sweet spot here. It is fast — 2 to 5 seconds per response — and costs roughly $0.003 to $0.01 per personalised email at current API pricing. The response includes a content array. Parse it in n8n with a Function node: {{ JSON.parse($json.content[0].text) }} to extract the score, tier, subject line, and email body into separate fields for the routing logic in Step 4.
n8n's community has over 196,000 members and more than 10,700 workflow templates. The Claude integration has a native Anthropic Chat Model node in newer n8n versions, but the HTTP Request node gives you full control over the prompt structure and token budget. If you want to learn more about how AI agent reasoning connects to workflow automation, our guide to the 10-layer AI agent stack explains the architecture in depth.
Step 4: Route personalised emails and handle replies
Build the sending and reply-handling logic
Now that Claude has scored the lead and generated a personalised email, n8n decides what to do with it. Add an IF node after parsing Claude's response. Set conditions based on the score:
- Hot (80+): Send immediately via your email platform's API. Post a notification to a Slack channel so the sales team can follow up.
- Warm (50-79): Queue for sending during optimal windows — Instantly's data shows Tuesday and Wednesday see peak engagement.
- Cold (under 50): Log to a spreadsheet for future nurture. Don't burn a good domain reputation on low-fit leads.
For the sending step, connect to your email platform. Instantly, Smartlead, and Lemlist all have REST APIs that n8n can call via HTTP Request nodes. Pass the subject line and body from Claude's response, and set the recipient email from the Hunter.io enrichment output.
For reply handling, add a scheduled workflow that checks for new replies every few hours. Use an AI classification node — or another Claude call — to categorise replies as positive (interested), negative (not interested), or out-of-office. Route positives to Slack for immediate follow-up. Trigger a break-up email for negatives. Reschedule OOO contacts for the following week.
This reply-handling layer is what separates a basic automation from a pipeline that actually closes deals. The AI classification catches the signals that manual review would miss — and responds faster than any human could, which is what lead qualification agents are built to do.
Step 5: Track performance and iterate with data
Monitor, measure, and refine the pipeline
Cold outreach is not a set-and-forget system. The teams that get elite-tier results — 10%+ reply rates, per Instantly's benchmark — test and iterate weekly. n8n workflows expose execution data, and your email platform provides open, click, and reply metrics. Feed these back into the pipeline.
Set up a Google Sheet node in n8n that logs every email sent: lead name, company, score, subject line, and whether they replied. After a week, review which subject lines and personalisation angles got the most replies. Use that data to refine the Claude prompt. If leads in a certain industry consistently score low, adjust your ICP criteria. If subject lines mentioning a specific pain point outperform, tell Claude to prioritise that angle.
GMass reports that well-targeted, intent-led campaigns can reach 15% to 25% reply rates. That is not luck. It is the compound effect of good enrichment data, iterative prompt refinement, and disciplined follow-up cadence. The pipeline you build today gets better every week that you run it and feed data back in.
Why this beats the manual approach
A manual cold outreach process — finding emails, researching companies, writing individual messages, tracking replies — takes about 10 to 15 minutes per lead. Processing 50 leads takes a full workday. With this pipeline, the same 50 leads process in under five minutes from trigger to send. The AI handles the personalisation at a level that manual research cannot match at scale, and the follow-up routing catches replies automatically.
Salesforge found that sales professionals using AI for outreach reclaim 2.15 hours per day on average. That is 10 hours per week back for higher-value work: strategic account planning, call preparation, closing deals. And the pipeline scales with volume — 500 leads costs roughly the same as 50 in manual time, because the AI does the work.
For teams that have already built an automated email nurture system with Claude and HubSpot, adding a cold outreach pipeline on the front end creates a full lifecycle engine: find leads, personalise outreach, nurture responders, and convert. The same agent stack architecture that powers the nurture workflow powers cold outreach. Claude is the reasoning layer. Hunter.io is the data layer. n8n is the tool layer that connects decisions to actions. And the email platform is the delivery layer.
The bottom line: cold email response rates average 3.43%. Advanced personalisation doubles that. AI-driven enrichment and personalisation pushes it past 18%. The difference between average and elite is not more emails — it is better data feeding better prompts. That is what this pipeline delivers.
Frequently asked questions
How much does it cost to personalise cold emails with Claude and Hunter.io?
Hunter.io offers a free plan with 25 monthly searches. The Starter plan at $49 per month ($34 on annual billing) provides 500 searches plus API access. Claude API calls cost roughly $0.003 to $0.01 per personalised email using Claude Sonnet. n8n is free if self-hosted or $20 per month on cloud. Processing 500 leads per month costs roughly $50 to $70 total including enrichment credits and API calls — about 10 to 14 cents per personalised email.
Can I use ChatGPT instead of Claude for cold email personalisation?
Yes. The workflow pattern is identical regardless of which AI model generates your emails. Swap the HTTP Request node's URL to the OpenAI API endpoint and adjust the prompt format slightly. The Hunter.io enrichment and n8n routing logic stay the same. The key is the enrichment data feeding the prompt — that matters more than which model writes the email.
What data does Hunter.io provide for lead enrichment?
Hunter.io's Email Finder API returns verified email addresses with confidence scores (0-100). The Domain Search endpoint provides a list of all email addresses found for a domain. For fuller enrichment including job titles, company size, and industry, you can layer additional APIs like Clearbit or Apollo.io alongside Hunter in the n8n workflow, running parallel enrichment calls.
How many leads can I process through this workflow?
On Hunter.io's free plan, 25 leads per month. The Starter plan ($49/month) handles 500 searches. The Growth plan ($149/month) handles 5,000 searches. The Claude API is not volume-bound — you pay per token, so scaling depends on your Hunter.io plan and n8n execution limits rather than Claude. Most n8n self-hosted instances can process thousands of workflow executions per day without additional cost.
Do I need to write code to build this cold email pipeline?
No. The entire pipeline uses n8n's visual editor. You configure nodes for the webhook, HTTP requests to Hunter.io and Claude, conditional routing, and Slack or email notifications. The most technical step is copying your API keys into n8n's credential store. The prompt template and API call formats are copy-paste ready. If you have used n8n before, this takes about two hours to set up end to end.