DEV Community

fabrizio de luca
fabrizio de luca

Posted on

Automate Your Email Marketing with n8n: 3 Workflows That Actually Work

Email marketing is dead. That's what people said when social media exploded.

They were wrong.

Email still delivers $36 for every $1 spent — the highest ROI of any marketing channel. But doing it manually? That's where most people fail. They spend 3-4 hours per week on email tasks that should take 20 minutes.

I've automated my entire email marketing workflow with n8n. Here's exactly how.


The Problem with Manual Email Marketing

Before automation, my week looked like this:

  • Monday: Import new leads from various sources (1 hour)
  • Wednesday: Personalize and send outreach emails (2 hours)
  • Friday: Follow up with non-responders (1 hour)
  • Ongoing: Clean dead emails from my list (30 min/week)

That's 4.5 hours every week on repetitive tasks. Now it's 0 hours — n8n handles everything while I sleep.


Workflow 1: Automated Lead Capture and Welcome Sequence

What it does: When someone signs up anywhere (form, landing page, webinar), they automatically get a personalized 3-email welcome sequence.

The flow:

Webhook trigger -> Validate email -> Add to Google Sheets -> 
Wait 0 min -> Send welcome email ->
Wait 24 hours -> Send value email ->
Wait 48 hours -> Send CTA email
Enter fullscreen mode Exit fullscreen mode

The code that matters (n8n Code node):

const source = $input.item.json.utm_source || 'organic';
const firstName = $input.item.json.name?.split(' ')[0] || 'there';

const templates = {
  'reddit': 'Hey ' + firstName + ', saw you came from Reddit...',
  'linkedin': 'Hi ' + firstName + ', LinkedIn brought you here...',
  'organic': 'Hi ' + firstName + ', glad you found us...'
};

return { 
  personalizedGreeting: templates[source] || templates['organic'],
  firstName 
};
Enter fullscreen mode Exit fullscreen mode

Setup time: 20 minutes
Result: Every new lead gets a relevant, personalized welcome — automatically.


Workflow 2: Cold Email AI Personalizer

This is the workflow that changed my outreach game completely.

What it does: Reads prospects from Google Sheets, uses GPT-4o-mini to write a hyper-personalized first line for each email, then sends via Gmail.

The flow:

Schedule (daily 9am) -> Read Google Sheets -> Filter "pending" rows ->
For each prospect: GPT-4o-mini personalizes -> Send Gmail -> Update sheet status
Enter fullscreen mode Exit fullscreen mode

The GPT-4o-mini prompt:

Write a 1-sentence personalized opening for a cold email to:
Name: {{name}}
Company: {{company}}  
Role: {{role}}
Pain point: {{pain_point}}

Make it specific to their situation. No generic openers. Max 25 words.
Output ONLY the sentence.
Enter fullscreen mode Exit fullscreen mode

Example outputs:

  • "I noticed [Company] just raised Series A — scaling sales outreach is probably top of mind right now."
  • "Saw your post about struggling with manual data entry — that's exactly the problem our team solved last quarter."

Setup time: 25 minutes
Cost: ~$0.002 per email (GPT-4o-mini is incredibly cheap for this)
Result: 3x higher reply rates vs. generic templates

This workflow is included in the Lead Generation AI Pack — grab it if you want the pre-built version.


Workflow 3: Smart Follow-Up Sequence

Most sales happen on the 5th-8th follow-up. Most people give up after 1.

What it does: Automatically follows up with non-responders, escalating urgency with each message, and stops the moment someone replies.

The flow:

Schedule (daily) -> Read prospects sheet -> Filter by:
  - No reply received
  - Last email > 3 days ago
  - Follow-up count < 4
-> Select appropriate template (follow-up 1/2/3/4) ->
-> Send email -> Update follow-up count + last_sent date
Enter fullscreen mode Exit fullscreen mode

The 4 follow-up templates:

Follow-up 1 (day 3): Quick bump on this — did my email land okay?
Follow-up 2 (day 7): Wanted to share one thing that might be relevant...
Follow-up 3 (day 12): Last try — happy to hop on a 15-min call this week?
Follow-up 4 (day 18): Closing your file — let me know if timing changes.
Enter fullscreen mode Exit fullscreen mode

The Gmail filter node:

const replied = $input.item.json.reply_received === 'YES';
const followUpCount = parseInt($input.item.json.follow_up_count) || 0;
const lastSent = new Date($input.item.json.last_sent);
const daysSince = (Date.now() - lastSent) / (1000 * 60 * 60 * 24);

return !replied && followUpCount < 4 && daysSince >= 3;
Enter fullscreen mode Exit fullscreen mode

Setup time: 15 minutes
Result: 40% of dead leads convert on follow-ups 2-4.


Putting It All Together

Here's my complete email machine:

Workflow Runs What it does
Lead Capture On trigger Welcome sequence
Cold Outreach Daily 9am 10-30 personalized emails
Follow-Up Daily 10am Non-responder sequences
List Cleaner Weekly Sunday Remove bounces and unsubscribes

Total setup time: ~60 minutes (one Sunday afternoon)
Weekly manual work: 0 hours
Monthly cost: ~$1-3 OpenAI API for the personalization


Common Mistakes to Avoid

1. Sending too fast
Add a Wait node between emails. I use 120 seconds between sends. Gmail has sending limits — respect them.

2. Not handling bounces
Connect a webhook to catch Gmail bounce notifications. Auto-update your sheet when emails bounce.

3. Generic subject lines
Use the same GPT-4o-mini trick for subject lines. A/B test 2-3 variants automatically with an IF node.

4. Ignoring unsubscribes
Add an unsubscribe link to every email. Use a Webhook to catch clicks and update your sheet immediately.


The Real Cost Breakdown

People assume automation costs money. Here's the reality:

Tool Cost
n8n (self-hosted) $5-10/month VPS
GPT-4o-mini ~$1-2/month (10-30 emails/day)
Gmail Free
Google Sheets Free
Total $6-12/month

You are replacing what agencies charge $500-2000/month for.


Get the Pre-Built Workflows

If you want to skip the setup and start with battle-tested workflows:

Both packs are pay-what-you-want — including $0 if you are just getting started.


What's Next

Once you have email automation running, the next level is triggered sequences based on behavior — sending different emails based on which links prospects clicked, which pages they visited, or how long they have been in your list.

That is where n8n really shines: the IF and Switch nodes let you build complex logic that would cost thousands in tools like ActiveCampaign or HubSpot.

Start with Workflow 2 (cold email personalizer) — it has the fastest ROI and teaches you the pattern for all other workflows.


Running n8n for your business? Drop a comment with what you are automating — I read every one.

Top comments (0)