Originally written for r/n8n on Reddit — sharing here for the dev.to community.
I see a lot of n8n templates shared here that are either half-baked or broken. After going through my own production workflows, I picked the 10 I genuinely use every day and cleaned them up to share.
These run on my self-hosted n8n instance (Docker, single Hetzner VPS). Zero cloud dependencies. Each template is a single JSON file you can import directly.
Template 1: Smart Email Auto-Reply with Sentiment Analysis
Routes incoming emails based on sentiment (positive → auto-reply, negative → flag for human, neutral → queue for later).
{
"name": "Smart Email Auto-Reply",
"nodes": [
{
"parameters": {
"pollTimes": {"item": [{"mode": "everyMinute"}]},
"protocol": "IMAP",
"host": "imap.yourdomain.de",
"port": 993,
"ssl": true,
"username": "=inbox@yourdomain.de",
"password": "={{$credentials.emailPassword}}"
},
"type": "n8n-nodes-base.emailReadImap",
"name": "Read Email"
},
{
"parameters": {
"model": "gpt-4o-mini",
"messages": {
"values": [
{
"content": "Analyze the sentiment of this email. Reply with only one word: POSITIVE, NEGATIVE, or NEUTRAL.\n\nFrom: {{$json[\"from\"]}}\nSubject: {{$json[\"subject\"]}}\nBody: {{$json[\"text\"]}}"
}
]
}
},
"type": "@n8n/n8n-nodes-langchain.openAi",
"name": "Sentiment Analysis"
},
{
"parameters": {
"rules": {
"values": [
{"output": 0, "conditions": {"conditions": [{"value1": "={{$json.message.content}}", "operation": "equals", "value2": "POSITIVE"}]}},
{"output": 1, "conditions": {"conditions": [{"value1": "={{$json.message.content}}", "operation": "equals", "value2": "NEGATIVE"}]}}
]
}
},
"type": "n8n-nodes-base.switch",
"name": "Route by Sentiment"
},
{
"parameters": {
"fromEmail": "hello@yourdomain.de",
"toEmail": "={{$node[\"Read Email\"].json[\"from\"]}}",
"subject": "Re: {{$node[\"Read Email\"].json[\"subject\"]}}",
"text": "Hi,\n\nThanks for your message! We'll get back to you within 24 hours.\n\nBest regards"
},
"type": "n8n-nodes-base.emailSend",
"name": "Auto-Reply (Positive)"
},
{
"parameters": {
"webhookUrl": "https://discord.com/api/webhooks/YOUR_WEBHOOK",
"text": "⚠️ NEGATIVE EMAIL ALERT\nFrom: {{$node[\"Read Email\"].json[\"from\"]}}\nSubject: {{$node[\"Read Email\"].json[\"subject\"]}}"
},
"type": "n8n-nodes-base.discord",
"name": "Alert (Negative)"
}
]
}
Why it matters: Cut my email response time from 4 hours to 30 minutes. Negative emails go straight to my phone.
Template 2: Website DSGVO Compliance Scanner
Scans any URL for common GDPR violations. I use this for client sites.
{
"name": "DSGVO Compliance Scanner",
"nodes": [
{
"parameters": {
"url": "={{$json.domain}}",
"options": {"response": {"response": {"responseFormat": "text"}}}
},
"type": "n8n-nodes-base.httpRequest",
"name": "Fetch Page"
},
{
"parameters": {
"rules": {
"values": [
{"label": "Google Fonts", "conditions": {"conditions": [{"value1": "={{$json.data}}", "operation": "contains", "value2": "fonts.googleapis.com"}]}},
{"label": "Google Analytics", "conditions": {"conditions": [{"value1": "={{$json.data}}", "operation": "contains", "value2": "google-analytics.com"}]}},
{"label": "External Trackers", "conditions": {"conditions": [{"value1": "={{$json.data}}", "operation": "contains", "value2": "facebook.net/en_US/fbevents"}]}},
{"label": "Missing Impressum", "conditions": {"conditions": [{"value1": "={{$json.data}}", "operation": "notContains", "value2": "Impressum"}]}}
]
}
},
"type": "n8n-nodes-base.switch",
"name": "Detect Violations"
}
]
}
This is the same logic I use in my DSGVO Guard scanner (free at nevik.de/guard/ — no signup needed, just paste a URL).
Template 3: Lead Qualification Pipeline
Webhook → enrich with Clearbit → score with AI → add to CRM or reject.
Template 4: Automated Invoice Processor
Monitors email for PDF invoices → extracts data with OCR → pushes to accounting spreadsheet → sends confirmation email.
Template 5: RSS to Multi-Channel Publisher
Monitors RSS feeds → formats for each platform → queues posts for Twitter, LinkedIn, and Discord.
Template 6: Database Backup with Health Check
Cron trigger → dump PostgreSQL → upload to S3-compatible storage → verify backup integrity → send status to Slack.
Template 7: Customer Onboarding Sequence
New Stripe payment → create accounts in 3 services → send welcome email → schedule follow-ups over 14 days.
Template 8: API Health Monitor
Every 5 minutes → hit all my API endpoints → measure response time → alert if >2s or down → log to Grafana.
Template 9: Social Listening Pipeline
Search Reddit/HN for keywords → AI summarizes mentions → weekly digest to Notion.
Template 10: Error Aggregation & Smart Alerting
Collects errors from all n8n workflows → deduplicates → groups by severity → sends one daily digest instead of 50 individual alerts.
Real Results from Using These
Since putting these workflows in production 6 months ago:
- Time saved: ~15 hours/week on manual tasks
- Email response time: 4 hours → 30 minutes avg
- DSGVO compliance checks: 200+ websites scanned automatically
- Missed leads: Down from ~30% to <5%
- Server monitoring: 3 outages caught before users noticed
How to Use
- Download the JSON files (links below)
- In n8n: Menu → Import from File
- Update credentials (email, API keys, etc.)
- Activate the workflow
The first 3 templates above are embedded directly in this post. For all 10, I packaged them into a clean download with documentation.
I also have more advanced versions of these templates (with error handling, retry logic, DSGVO compliance workflows for German businesses) in a template pack. DM me if interested — happy to share details.
Top comments (0)