n8n Self-hosted Setup auf Hetzner — der DSGVO-Workflow-Stack 2026
Wenn du Zapier oder Make.com aus DSGVO-Gründen nicht nutzen kannst — oder die Operations-Kosten leid bist — ist n8n self-hosted die Antwort. Diese Anleitung führt dich in ~90 Minuten von „leerem Hetzner-Account" zu „produktiver Workflow-Plattform mit SSL und Backups". Server-Kosten: ~5 EUR/Monat. Alle Daten in Deutschland.
Im Einsatz seit Mitte 2024 self-hosted für Studien-Side-Projects · Setup-Guide verifiziert 2026-05-12 · Praxis-getestet auf Hetzner CX22 mit Ubuntu 24.04 LTS · Stand: n8n 1.x (LTS) · Docker-Compose-Setup funktioniert unverändert in 2026.
Auf einen Blick
- Setup-Dauer: ~90 Minuten
- Monatliche Kosten: ~5 EUR (VPS) + ~1 EUR (Backups)
- DSGVO: Server in Deutschland, AVV mit Hetzner
- Skills: SSH, Docker-Grundlagen, .env-Dateien
- Workflows/Monat: Unbegrenzt
Warum self-hosted statt Cloud?
n8n bietet beides: Cloud Starter (ab 20 EUR/Monat bei Jahresabrechnung, 2.500 Workflow-Executions, EU-Variante in Frankfurt) und Self-hosting. Für die meisten DACH-Setups ist Self-hosting die richtige Wahl, weil du:
- Maximale DSGVO-Kontrolle hast (deine Daten, dein Server, dein AVV)
- Operations unbegrenzt fährst (kein Pro-Workflow-Pricing)
- Deutlich günstiger bist als Zapier Pro (~5 EUR vs ~30 EUR)
- Workflows als JSON in Git versionieren kannst (Audit-Trail)
- Code-Knoten (JS und Python) ohne Premium-Aufpreis nutzt
Self-hosting lohnt sich nicht, wenn du keine Linux-Grundlagen mitbringst oder deine 1–2 Stunden pro Quartal Wartung lieber sparst. In dem Fall: n8n Cloud EU oder Make.com.
Alternative: n8n Cloud (Managed) — wann lohnt es?
Self-Hosting kostet ~5 EUR/Monat Server-Miete, aber auch ~1-2 Stunden Wartung pro Quartal: Server-Updates, Docker-Image-Bumps, Caddy-SSL-Renewal-Checks, Backup-Verifikation. Wenn du das Tutorial unten überfliegst und denkst „nope, ich will einfach Workflows bauen, nicht Linux administrieren" — dann ist n8n Cloud die richtige Wahl.
| Entscheidungspunkt | n8n Cloud (Managed) | n8n Self-Hosted (Tutorial unten) |
|---|---|---|
| Monatskosten | ab ~20 EUR/Monat (Starter, Jahresabrechnung, 2.500 Executions) · ~24 EUR bei monatlicher Abrechnung | ~5 EUR Hetzner-VPS + 0 EUR Lizenz |
| Setup-Aufwand | 5 Minuten (Browser-Klick) | ~90 Min initial + ~1-2 h/Quartal Wartung |
| DSGVO / Server-Standort | n8n GmbH (Berlin) · EU-Region wählbar | Hetzner Deutschland (du wählst) |
| Unbegrenzte Executions | Plan-abhängig (Pro: 50k/Mo, Enterprise: unlimited) | Ja — limitiert nur durch VPS-Performance |
| Updates & Maintenance | Automatisch durch n8n | Du — Docker-Image-Bumps + Caddy-Renewal-Checks |
| Backup | Inklusive | Cron-Job + S3-Sync selbst aufsetzen |
| Support | n8n Support-Tickets (Pro+) + Community | Community-Forum + Stack Overflow |
| Ideal für… | Teams ohne DevOps-Kapazität, schneller Start, Affiliate-Provision | DSGVO-Hardliner, Hetzner-affin, Linux-OK |
Unsere ehrliche Empfehlung: Wer das Tutorial unten in 5 Minuten überfliegt und sich denkt „oh, das ist mehr als ich machen will", spart sich Frust mit n8n Cloud. Der monatliche Aufpreis ist bei ~20 EUR schnell durch eingesparte Wartungszeit amortisiert.
Zwischenfazit: 14 Tage gratis testen ohne Kreditkarte. n8n GmbH ist deutsche Firma mit Berlin-Sitz und EU-Region — DSGVO-konform und sauberer Direkt-AVV.
Voraussetzungen
- Ein Hetzner-Cloud-Account (kostenlos anlegen unter hetzner.com/cloud)
- Eine Domain oder Subdomain, deren DNS du verwaltest (z. B. n8n.deine-domain.de)
- Lokale SSH-Grundlagen (Verbindung herstellen, Befehle ausführen)
- ~90 Minuten Zeit ohne Unterbrechung
Schritt 1 — Hetzner-VPS erstellen
Logge dich in der Hetzner Cloud Console ein und erstelle einen neuen Server:
- Standort: Falkenstein oder Nürnberg (deutsche Rechenzentren)
- Image: Ubuntu 24.04 LTS
- Typ: CX22 (2 vCPU, 4 GB RAM, 40 GB SSD) — ~5 EUR/Monat
- SSH-Key: deinen Public-Key hochladen (Pflicht — keine Passwort-Logins)
- Backups aktivieren: ~20 % Aufpreis = ~1 EUR/Monat — sehr empfohlen
- Firewall: erstellen mit Regeln: SSH (22/tcp) nur von deiner IP, HTTP (80/tcp), HTTPS (443/tcp) von überall
Nach ~30 Sekunden hast du eine IP-Adresse. Notiere sie.
Schritt 2 — Domain auf VPS zeigen lassen
Bei deinem DNS-Provider (z. B. INWX, Cloudflare, Strato) einen A-Record erstellen:
n8n.deine-domain.de. IN A <Hetzner-IP-Adresse>
Warte 1–10 Minuten auf DNS-Propagation. Test mit dig n8n.deine-domain.de
oder nslookup n8n.deine-domain.de — die Antwort sollte deine
Hetzner-IP zeigen.
Schritt 3 — Server härten (Pflicht!)
SSH-Verbindung als root aufbauen, dann:
# System updaten
apt update && apt upgrade -y
# Non-root User anlegen
adduser deploy
usermod -aG sudo deploy
rsync --archive --chown=deploy:deploy ~/.ssh /home/deploy
# SSH-Login als root deaktivieren
sed -i 's/^PermitRootLogin.*/PermitRootLogin no/' /etc/ssh/sshd_config
sed -i 's/^#PasswordAuthentication.*/PasswordAuthentication no/' /etc/ssh/sshd_config
systemctl restart sshd
# Automatische Sicherheitsupdates
apt install -y unattended-upgrades
dpkg-reconfigure --priority=low unattended-upgrades
Ab jetzt loggst du dich als deploy ein, nicht mehr als root.
Schritt 4 — Docker installieren
Als deploy auf dem Server:
# Docker installieren (offizielles Repo)
curl -fsSL https://get.docker.com | sudo sh
# Aktueller User in docker-Gruppe
sudo usermod -aG docker $USER
# Neu einloggen oder:
newgrp docker
# Test
docker run --rm hello-world Schritt 5 — n8n + Caddy mit docker-compose
Caddy ist ein moderner Reverse-Proxy, der automatisch Let's-Encrypt-SSL-Zertifikate holt und erneuert — viel einfacher als nginx + certbot.
mkdir -p ~/n8n && cd ~/n8n
nano docker-compose.yml Inhalt der docker-compose.yml:
services:
caddy:
image: caddy:2-alpine
restart: unless-stopped
ports:
- "80:80"
- "443:443"
volumes:
- ./Caddyfile:/etc/caddy/Caddyfile
- caddy_data:/data
- caddy_config:/config
n8n:
image: docker.n8n.io/n8nio/n8n
restart: unless-stopped
environment:
- N8N_HOST=${N8N_HOST}
- N8N_PORT=5678
- N8N_PROTOCOL=https
- WEBHOOK_URL=https://${N8N_HOST}/
- GENERIC_TIMEZONE=Europe/Berlin
- N8N_ENCRYPTION_KEY=${N8N_ENCRYPTION_KEY}
volumes:
- n8n_data:/home/node/.n8n
volumes:
caddy_data:
caddy_config:
n8n_data: Dann nano Caddyfile mit Inhalt:
{$N8N_HOST} {
reverse_proxy n8n:5678
} Und nano .env:
N8N_HOST=n8n.deine-domain.de
N8N_ENCRYPTION_KEY=zufalls-string-32-zeichen-pflicht
Encryption-Key generieren: openssl rand -hex 32. Wichtig:
niemals verlieren — wenn du den Key änderst, sind alle gespeicherten
Credentials in n8n unbrauchbar.
Schritt 6 — Starten
docker compose up -d
docker compose logs -f
Beim ersten Start zieht Caddy automatisch ein Let's-Encrypt-Zertifikat für
deine Domain. Nach ~30 Sekunden öffne https://n8n.deine-domain.de —
die n8n-Setup-Seite erscheint.
Erstelle den Owner-Account (das ist dein admin) und du bist live.
Schritt 7 — Backups einrichten
Hetzner-Snapshots (über Cloud Console aktiviert) sichern den ganzen VPS. Zusätzlich empfehlen wir tägliche n8n-Daten-Backups via Cron:
# Crontab editieren
crontab -e
# Tägliches Backup um 3 Uhr nachts
0 3 * * * docker run --rm -v n8n_n8n_data:/data -v ~/backups:/backup alpine tar czf /backup/n8n-$(date +\%F).tar.gz -C /data .
# Backups älter als 14 Tage löschen
0 4 * * * find ~/backups -name "n8n-*.tar.gz" -mtime +14 -delete
Optional: Backups per rclone auf einen Hetzner-Storage-Box oder
eigenen S3 schieben — ~3 EUR/Monat für 1 TB Off-site-Storage.
Schritt 8 — Update-Strategie
n8n veröffentlicht ~wöchentlich neue Releases. Updates laufen so:
cd ~/n8n
docker compose pull
docker compose up -d Vor jedem Update: aktuelles Backup ziehen (siehe Schritt 7). Wir empfehlen monatlichen Update-Rhythmus, nicht wöchentlich — n8n bringt manchmal Breaking Changes bei Community-Knoten, und ein paar Wochen Verzögerung lässt diese Bugs schon von anderen finden.
3 Monate später — was im Self-Host-Betrieb wirklich passiert
Das Setup-Tutorial unten zeigt dir den Start. Was zwischen Woche 4 und Woche 12 tatsächlich passiert, steht nirgends im Marketing — gesammelt aus DACH-Self-Host-Praxis-Berichten (lsww.de, pipewave.de, n8n-Docs).
Wartungs-Realität: 1-3 Stunden pro Monat (ehrlich kalkuliert)
Marketing-typische Behauptungen liegen bei „minimaler Aufwand". Realistische DACH-Time-Tracking-Berichte zeigen 1-3 Stunden pro Monat für Updates + Monitoring-Checks + Backup-Verifikation + Debugging. n8n veröffentlicht wöchentlich Minor-Versionen — die offizielle Empfehlung in den Docs ist: „update at least once a month". Wer 3+ Monate hinterherhinkt, riskiert Breaking-Change-Schmerzen bei mehreren Sprung-Versionen gleichzeitig.
Die häufigsten Probleme zwischen Woche 4 und 12
- SQLite-DB-Verzeichnis ungesichert. Die `~/.n8n/`-DB enthält ALLE Workflows + Credentials. Wer das nicht ins Backup nimmt, verliert beim ersten VPS-Crash 3 Monate Workflow-Arbeit. Pflicht: Cron-Job für tägliches verschlüsseltes DB-Backup auf Hetzner Storage Box.
- Caddy/Let's-Encrypt-Cert-Renewal scheitert still. Wenn DNS-Records sich ändern oder eine TLD verfällt, scheitert die automatische Renewal — n8n läuft weiter, aber Browser zeigen Cert-Warnungen. Pflicht: UptimeRobot oder cron-Mail-Check der Cert-Expiry alle 30 Tage.
- Memory-OOM bei CX11 mit 1 GB RAM. Sobald mehr als ~5 parallele Workflows feuern (z. B. Webhook-Storm bei einem Marketing-Push), killt der OOM-Killer den n8n-Prozess. Lösung: Auf CX22 (2 GB) upgraden — kostet 2-3 EUR mehr/Monat, vermeidet 90 % der OOM-Probleme.
- Secrets in `.env` ohne Rotation. Wer API-Keys (Slack, OpenAI, Stripe) in der `.env` ablegt und nie rotiert, hat im Fall einer VPS-Kompromittierung ALLE Schlüssel kompromittiert. Pflicht: Mindestens 12-monatige Schlüssel-Rotation als Kalender-Routine.
- Update-Skip-Falle. Wenn du 4 Monate kein Update machst, hat n8n meist Breaking-Changes in der Konfiguration durchgereicht. Die Update-Routine wird dann zur 2-3-Stunden-Migration statt zur 5-Minuten-Übung.
Die Wartungs-Routine, die du NICHT übersehen solltest
- Wöchentlich (~5 Min): UptimeRobot-Check ob n8n + SSL laufen, Backup-Log einsehen
- Monatlich (~30-60 Min): n8n-Docker-Image-Update, Workflow-Stichprobe testen, Secrets-Rotation-Erinnerung prüfen
- Quartalsweise (~60-90 Min): VPS-Resource-Check (CPU/Memory-Trends), DB-Backup-Restore-Test (Stichprobe ein altes Backup wiederherstellen + verifizieren), Caddy-Cert-Manuelle-Prüfung
- Jährlich (~2-3 h): Komplette Server-Hardening-Review (ufw-Regeln, fail2ban-Logs, SSH-Key-Rotation), Hetzner-VPS-Modell-Reevaluation
Pragmatische Realität: wer diese Routine nicht akzeptiert, ist auf n8n Cloud besser aufgehoben — die 15-20 € Aufpreis pro Monat sind durch eingesparte Wartungszeit + Update-Stress meist amortisiert.
Häufige Probleme & Lösungen
"502 Bad Gateway" beim ersten Aufruf
n8n braucht beim ersten Start 30–60 Sekunden, bis es bereit ist.
docker compose logs n8n prüfen, warten, neu laden.
"Connection not secure" / SSL-Fehler
Caddy holt sich Zertifikate erst, wenn die Domain erreichbar ist. Prüfe
DNS-Propagation (dig deine-domain.de) und Firewall (Port 80
und 443 müssen offen sein — Let's Encrypt nutzt Port 80 für HTTP-Challenge).
"Workflow läuft nicht durch" bei Webhooks
WEBHOOK_URL in der .env muss exakt mit deiner
öffentlichen URL übereinstimmen, inkl. https:// und Slash am Ende.
Performance-Engpass
Bei mehr als ~50 parallelen Workflows wird CX22 eng. Upgrade auf CX32 (4 vCPU, 8 GB) für ~9 EUR/Monat — das reicht für die allermeisten DACH-Setups.
Kostenkalkulation 12 Monate
| Position | Kosten/Monat | Kosten/Jahr |
|---|---|---|
| Hetzner CX22 VPS | ~5 EUR | ~60 EUR |
| Hetzner Snapshots (optional) | ~1 EUR | ~12 EUR |
| Storage Box (optional, Off-site Backup) | ~3 EUR | ~36 EUR |
| Domain (z. B. INWX) | ~1 EUR | ~12 EUR |
| Gesamt | ~10 EUR | ~120 EUR |
Vergleich: Zapier Professional (~30 EUR/Monat) = 360 EUR/Jahr. Make.com Core (9 EUR) = 108 EUR/Jahr. n8n self-hosted ist nahezu Gleichstand mit Make.com, aber mit unbegrenzten Operations und maximalem DSGVO-Schutz.
Anders herum: n8n Cloud (Managed) ab ~20 EUR/Monat (~240 EUR/Jahr) ist ~120 EUR/Jahr teurer als Self-Hosted — dafür ohne Server-Wartungs-Stunden, mit n8n-Direkt-Support und automatischen Updates. Bei ~1-2 Wartungs-Stunden/Quartal (4-8 h/Jahr) à 80 €/h Opportunitätskosten: Cloud ist bei jedem Selbstständigen mit reellem Stundensatz die rationalere Wahl.
Häufig gestellte Fragen
Was kostet n8n self-hosted im Monat?
Eine produktiv-fähige Instanz auf einem Hetzner-VPS (CX22, 2 vCPU, 4 GB RAM) kostet ~5 EUR/Monat — fertig. Keine pro-Workflow-Gebühren, keine Operations-Limits, unbegrenzte Ausführungen. Im Vergleich zu Zapier Pro (~30 EUR) oder Make.com Core (9 EUR) amortisiert sich das innerhalb der ersten Monate, sobald du regelmäßig automatisierst.
Brauche ich Linux-Erfahrung für n8n self-hosted?
Grundlagen reichen — du musst SSH benutzen können, Docker-Befehle ausführen und einfache Konfigurations-Dateien bearbeiten. Keine Programmierkenntnisse nötig. Dieser Guide setzt voraus, dass du dich auf einem Linux-Server bewegen kannst (cd, ls, nano). Wenn das alles Fremdwörter sind: nimm n8n Cloud Starter (EU) ab 20 EUR/Monat bei Jahresabrechnung — du bekommst dasselbe Tool ohne Server-Wartung.
Ist n8n self-hosted DSGVO-konform?
Wenn du auf einem deutschen Server (z. B. Hetzner) hostest und einen AVV mit dem Hoster abschließt: ja, maximal DSGVO-konform. Daten verlassen deine Infrastruktur nicht. Das ist die einzige der drei großen Workflow-Plattformen (Zapier, Make, n8n), die diesen Status erreichen kann — und für viele DACH-B2B-Workflows der einzige Grund, n8n zu nutzen.
Wie aktualisiere ich n8n self-hosted sicher?
Updates laufen über docker compose pull && docker compose up -d. Vor jedem Update: Backup der Daten-Volumes ziehen. Wir empfehlen monatliches Update-Window — n8n veröffentlicht häufig Releases, und manche bringen Breaking Changes bei selbst gebauten Knoten. Für Produktiv-Setups: erst auf einer Staging-Instanz testen.
Was passiert bei Server-Ausfall?
Hetzner hat solide Infrastruktur (~99,9 % Uptime), aber einzelne VPS können trotzdem ausfallen. Schutz: tägliche Backups (Hetzner Snapshots, ~1 EUR/Monat) plus Backup der n8n-Daten-Volumes. Wer kritische Workflows fährt: zwei VPS in unterschiedlichen Rechenzentren mit Failover. Für die meisten DACH-Solo-Setups reichen Daily Snapshots völlig aus.
Kann ich später zu n8n Cloud migrieren?
Ja. n8n speichert Workflows als JSON — du kannst sie über die Workflow-Settings exportieren und in n8n Cloud importieren. Credentials musst du neu eintragen (wegen Verschlüsselung), Workflows selbst sind 1:1 portabel. Migration in beide Richtungen (Self-hosted ↔ Cloud) funktioniert.
Wann du n8n NICHT nehmen solltest — ehrliche Selbst-Disqualifikation
Diese Sektion fehlt in den meisten n8n-Tutorials und kostet User:innen regelmäßig 3-6 Monate Frust. Die Anti-Sell-Wahrheit:
1. Du bist Solo / Kleines Team ohne Tech-Background
Joshua Kresse (pipewave.de) formuliert es direkt: „Wenn du ein kleines Team bist, einfache Automationen brauchst und niemanden hast, der technisch einsteigen kann: Nimm Zapier." n8n's Einstiegshürde ist hoch — JSON-Strukturen, Expression-Sprache, Debug-Workflows mit Execution-Logs. Wer das nicht lernen will oder kann: Zapier ist nicht "schlechter", sondern schlicht für diesen Persona-Typ besser. Make.com ist die Mittelposition zwischen beiden.
2. Du brauchst Nischen-Apps, die nur Zapier hat
n8n hat ~400 native Integrationen. Zapier hat ~6.000. Wenn deine Stack viele obskure Tools enthält (z. B. branchenspezifische CRMs, ältere SaaS-Tools, regionale DACH-Apps ohne große Userbase): die App-Lücke wird schmerzhaft. Zwar kann n8n via HTTP-Modul fast alles ansprechen, aber das bedeutet Custom-Code-Schreiben statt Drag-and-Drop. Realistische Prüfung VOR der Entscheidung: Liste alle Apps in deinem Workflow auf und check, ob n8n native Integrationen hat.
3. n8n's eigene Doku warnt dich
Aus den offiziellen n8n-Docs (zur Self-Hosting-Sektion): „n8n recommends self-hosting for expert users … If you aren't experienced at managing servers, n8n recommends using n8n Cloud instead." Das ist eine seltene Anbieter-Disqualifikation — wer Linux-Server-Management nicht schon kennt, sollte n8n Cloud nehmen. Self-Hosting macht nur Sinn, wenn du Hetzner-VPS + Docker + Caddy als wiederkehrende Routine in dein Wochen-Workflow integrieren kannst.
4. Du willst n8n als Agentur-Service an Kunden weiterverkaufen
n8n nutzt die Sustainable Use License — eine fair-code-Variante mit Commercial-Restriction. Konkret: „the commercial restriction matters the moment automation moves from internal use to revenue use" ([Scalevise.com](https://scalevise.com/resources/n8n-automation-license-commercial-use/)). Agenturen, die n8n als gehostete Lösung an Kunden verkaufen wollen, brauchen eine separate Embed-Lizenz. Wer die Lizenz übersieht, riskiert Lizenz-Konflikt — vor dem Agentur-Setup mit n8n-Sales reden oder bei Make/Zapier bleiben.
5. Du brauchst integrierte AI-Workflow-Tools mit visueller UI
n8n kann ChatGPT-API ansprechen, aber komplexere AI-Workflows (RAG-Pipelines, Multi-Model-Chaining mit visueller Debug-UI) sind in Tools wie Flowise oder LangFlow ergonomischer. n8n macht das auch — aber mit mehr Code-Aufwand. Für reine AI-fokussierte Workflows ist die Persona-Empfehlung: Flowise + n8n als Glue oder direkt OpenAI-API-Calls aus Python-Skripten.
Wann n8n trotzdem die richtige Wahl ist
- DSGVO-Audit-Pflicht (Anwalt, Steuer, Gesundheit, B2B mit AVV-Anforderung) → Self-Host gibt dir vollen Daten-Kontroll-Stack
- >10.000 Executions/Monat (Self-Host wird strukturell günstiger als Zapier-Tasks)
- Tech-Affin: du sprichst SSH-Server-Management und liest gerne Workflow-JSON-Configs
- Cloud-Variante: wenn du n8n-Cloud nimmst (~20 €/Mo), entfällt der Self-Hosting-Skill-Bedarf — bleibt nur das Workflow-Bauen
Was als Nächstes?
Nach dem Setup empfehlen wir folgende erste Schritte:
- Erstelle eine 2FA-geschützte Owner-Anmeldung in n8n
- Baue einen ersten Test-Workflow (z. B. Stripe-Webhook → Slack)
- Exportiere den Workflow als JSON und committe ihn in ein privates Git-Repo (Versionierung)
- Schließe einen AVV mit Hetzner ab (kostenlos, im Account-Bereich)
- Dokumentiere dein Setup in Notion oder einem Wiki — bei Server-Wechsel wirst du dir danken
Wer noch unsicher ist, ob Self-hosting die richtige Wahl ist, sollte den Make.com vs Zapier vs n8n Vergleich lesen — dort haben wir alle Trade-offs mit Beispielen aufgeschlüsselt.