How to Use n8n to Send Automatic Email Newsletters — Step by Step
Sending a newsletter every week sounds simple — until you realise you're copying contacts, writing the same email structure over and over, and manually hitting send every time. With n8n, you can build a fully automated newsletter workflow that pulls content, formats your email, and sends it to your list on a schedule — without touching a single line of code.
This guide walks you through exactly how to set that up, from scratch.
Why Use n8n for Email Newsletters?
n8n is an open-source workflow automation tool that connects your apps and services through visual, drag-and-drop flows. Unlike expensive email platforms, you can self-host n8n for free and keep full control over your data. It integrates natively with tools like Gmail, SMTP servers, Google Sheets, RSS feeds, and — if you want advanced segmentation — activecampaign.
The result: a lean, customisable newsletter system that runs automatically, exactly when you want it to.
What You'll Need Before You Start
- An n8n account (cloud or self-hosted)
- An SMTP email provider (Gmail, Mailgun, Brevo, etc.) or an activecampaign account
- A contact list — stored in Google Sheets, Airtable, or directly in activecampaign
- Optional: An RSS feed or content source to pull in dynamic content
Step 1 — Set Up Your Trigger
Every n8n workflow starts with a trigger — the event that kicks off the automation. For a weekly newsletter, use the Schedule Trigger node.
- Open n8n and create a new workflow
- Add a Schedule Trigger node
- Set it to run every Monday at 8:00 AM (or whatever suits your schedule)
This single node is now the heartbeat of your newsletter system. Every time it fires, the rest of the workflow runs automatically.
Step 2 — Pull Your Content
You have two main options here:
Option A: Static Content from Google Sheets
Add a Google Sheets node to read your pre-written newsletter content from a spreadsheet. Each row could represent a newsletter edition — with columns for subject line, body text, and send date.
Option B: Dynamic Content from an RSS Feed
Add an RSS Feed Read node and point it at your blog or a curated content source. n8n will automatically pull the latest posts each time the workflow runs — so your newsletter always features fresh content.
Step 3 — Fetch Your Subscriber List
Next, connect your contact list. The most flexible option is a Google Sheets node pointing at a sheet with subscriber names and email addresses. For more advanced list management, connect activecampaign using the built-in activecampaign node in n8n — this lets you pull segmented contact lists, respect unsubscribes, and track open rates automatically.
Step 4 — Format Your Email
Add a Set node or Function node to build your email. In the node, define:
- Subject: Pulled from your content source or written statically
- Body (HTML): A template that injects your dynamic content — article title, summary, link, and your branding
- To: The subscriber's email address from your list
You can write a clean HTML email template directly in the node using n8n's expression editor, referencing variables from the previous steps with double curly brace syntax.
Step 5 — Send the Email
Add an Email Send (SMTP) node or connect directly to activecampaign to send your newsletter. Configure your SMTP credentials (host, port, username, password) and map the subject and body fields from the previous step.
To send to multiple subscribers, use a Split In Batches node before the email node — this loops through your list and sends one email per subscriber without overwhelming your SMTP server.
Step 6 — Test and Activate
Before going live, test the full workflow manually inside n8n:
- Click Execute Workflow and check each node's output
- Verify the email arrives correctly in your inbox
- Check that personalisation variables are rendering properly
Once everything looks good, toggle the workflow to Active. From that moment on, n8n handles every newsletter send automatically, on schedule, without you lifting a finger.
Pro Tips to Level Up Your Newsletter Workflow
- Add a filter node to skip subscribers who haven't confirmed their email
- Log each send to a Google Sheet for a simple delivery audit trail
- Use activecampaign for open and click tracking that feeds back into your segmentation
- Connect a Slack node to get a confirmation message in your workspace when the newsletter fires
- Store your HTML template in a Google Doc and fetch it dynamically so you never have to edit the n8n workflow just to update your design
Final Thoughts
Building an automatic newsletter workflow with n8n takes less than an hour to set up — and saves you that same hour every single week going forward. Whether you're running a personal blog, a SaaS product, or a content agency, this approach gives you full control, zero ongoing cost (on the self-hosted plan), and a reliable system that never forgets to send.
Pair it with activecampaign if you need professional-grade list management, or keep it lean with Google Sheets and SMTP. Either way, n8n does the heavy lifting so you can focus on what actually matters — writing great content.
This post was created with tools we use and recommend: n8n for workflow automation, Turbotic as an AI-native automation alternative, ElevenLabs for AI voiceover, Placid for visual content creation, and Hostinger for reliable VPS hosting. Some links are affiliate links.