n8n Self-Hosting Requirements Guide (2026)
Planning to self-host n8n? Here's what you actually need.
The official docs give minimum specs, but real-world deployments need more context. This guide covers what works for different workload sizes based on production experience.
Quick answer: What do I need?
For most users starting out:
| Spec | Minimum | Recommended |
|---|---|---|
| CPU | 1 core | 2 cores |
| RAM | 1 GB | 2-4 GB |
| Storage | 10 GB | 20 GB SSD |
| Database | SQLite (default) | PostgreSQL |
This handles 50-100 workflows running a few times per hour. Most small teams never need more.
Sizing by workload
Light workload (hobby/testing)
Profile: Personal projects, learning, development
- 10-20 workflows
- Runs a few times per day
- Simple integrations (webhooks, HTTP requests, basic transforms)
Specs:
- 1 vCPU
- 1 GB RAM
- 10 GB storage
- SQLite database
Monthly cost: $4-6 (Hetzner CAX11, DigitalOcean basic droplet)
Medium workload (small business)
Profile: Production use, multiple team members
- 50-100 workflows
- Runs hourly or more frequently
- Mix of simple and complex workflows
- Some AI/LLM integrations
Specs:
- 2 vCPU
- 4 GB RAM
- 40 GB SSD
- PostgreSQL database (external or local)
Monthly cost: $12-20 (Hetzner CAX21, DigitalOcean $18 droplet)
Heavy workload (scale)
Profile: High-volume production, enterprise
- 200+ workflows
- Concurrent executions
- Heavy data processing
- Multiple AI/LLM calls per workflow
Specs:
- 4+ vCPU
- 8-16 GB RAM
- 80+ GB SSD
- PostgreSQL (managed, external)
- Redis for queue mode
- Consider n8n queue mode with separate workers
Monthly cost: $40-100+
RAM: The real bottleneck
RAM matters more than CPU for most n8n deployments. Here's why:
Each workflow execution loads into memory. Complex workflows with large payloads eat RAM fast.
Concurrent executions multiply RAM needs. If you have 10 workflows running at the same time, each needs its own memory space.
RAM guidelines
| Concurrent Executions | Minimum RAM |
|---|---|
| 1-5 | 1 GB |
| 5-10 | 2 GB |
| 10-20 | 4 GB |
| 20-50 | 8 GB |
| 50+ | 16 GB + queue mode |
Signs you need more RAM
- Workflows failing with "out of memory" errors
- n8n becoming unresponsive during peak times
- Executions timing out unexpectedly
- Container/process being killed by the OS
Quick fix: Set EXECUTIONS_PROCESS to own (default in newer versions) so each execution runs in its own process.
CPU considerations
CPU matters less than RAM for typical workflows. But certain operations are CPU-intensive:
CPU-heavy operations
- AI/ML workflows: LLM calls are I/O bound, but processing responses uses CPU
- Data transformation: Large JSON transforms, regex on big strings
- Image processing: Resize, convert, manipulate images
- PDF generation: Building complex documents
- Encryption/decryption: Processing lots of encrypted data
CPU guidelines
| Workload Type | Recommended vCPU |
|---|---|
| Simple integrations | 1 |
| Mixed workloads | 2 |
| AI/ML heavy | 2-4 |
| Data processing | 4+ |
ARM vs x86: ARM instances (like Hetzner CAX, AWS Graviton) offer better price/performance for n8n. The Docker images support both architectures.
Database: SQLite vs PostgreSQL
n8n defaults to SQLite. It works fine until it doesn't.
When SQLite is fine
- Single user or small team
- Under 50 active workflows
- Execution history isn't critical
When to use PostgreSQL
- Multiple users accessing n8n simultaneously
- Over 50 workflows
- Need reliable execution history
- Running in production
- Using queue mode
PostgreSQL sizing
| Workload | Database Size | Notes |
|---|---|---|
| Light | Shared/smallest tier | 1 GB storage |
| Medium | 1-2 GB RAM dedicated | 10 GB storage |
| Heavy | 4+ GB RAM dedicated | 50+ GB storage |
Managed vs self-hosted: For production, use managed PostgreSQL (Neon, Supabase, AWS RDS, DigitalOcean).
Recommended VPS providers
Based on price/performance for n8n:
Budget-friendly
| Provider | Instance | Specs | Monthly |
|---|---|---|---|
| Hetzner | CAX11 | 2 ARM vCPU, 4 GB RAM | €4.51 |
| Hetzner | CAX21 | 4 ARM vCPU, 8 GB RAM | €8.21 |
| Netcup | VPS 1000 | 4 vCPU, 4 GB RAM | €8.50 |
Mid-range
| Provider | Instance | Specs | Monthly |
|---|---|---|---|
| DigitalOcean | Basic | 2 vCPU, 4 GB RAM | $24 |
| Vultr | Cloud | 2 vCPU, 4 GB RAM | $24 |
| Linode | Shared | 2 vCPU, 4 GB RAM | $24 |
My recommendation: Start with Hetzner CAX21 (€8.21/mo). You get €20 free credit with that link.
Quick start recommendation
For most teams starting with self-hosted n8n:
Setup:
- Hetzner CAX21 (4 ARM vCPU, 8 GB RAM) - €8.21/mo + €20 free credit
- PostgreSQL via Neon free tier
- Caddy for automatic SSL
- Docker deployment
Total cost: Under $10/month to start
Need help setting up n8n? Book a call or join our community.
Related Posts

n8n Expression Cheat Sheet (2026)
Stop Googling the same n8n expressions over and over. Complete reference for Luxon datetime, conditionals, JSON manipulation, and more.

Critical n8n vulnerability: CVE-2026-1470 allows remote code execution
A critical remote code execution vulnerability (CVE-2026-1470) in n8n allows authenticated users to execute arbitrary code. Here's what you need to know and how to fix it.

n8n autosave is here: never lose your workflow progress again
n8n's new autosave feature saves your workflows every two seconds. Here's what changed, why it matters, and how to use the three save modes effectively.
