Not all VPS providers are equal. This guide compares specs, pricing, datacenters, and real-world performance so you pick the right server for your n8n workloads.
A VPS (Virtual Private Server) gives you a dedicated slice of a physical server with guaranteed CPU, RAM, and storage. For n8n, this means unlimited workflow executions at a flat monthly cost, full root access to install anything your workflows need (Python, Puppeteer, ffmpeg, custom binaries), and complete data sovereignty where nothing leaves your server.
The alternative is n8n Cloud, which handles all infrastructure for you but charges per execution. A single workflow polling every minute runs 43,200 times per month. On n8n Cloud Starter (2,500 executions), that exhausts your quota in under two days. On a $5/month VPS, it costs nothing extra.
The tradeoff is real: you become your own DevOps engineer. Server updates, SSL renewals, Docker upgrades, backups, and security patches are your responsibility. If that sounds like too much overhead, n8n Cloud is the right choice. If you want control and cost efficiency, read on.
Already decided on a VPS? Head to our How to Setup n8n guide for step-by-step Docker, Nginx, SSL, and PostgreSQL installation instructions.
n8n runs as a Node.js application with a PostgreSQL database. Both need to coexist on your VPS alongside a reverse proxy (Nginx or Caddy). Here is what each resource actually does and how much you need.
| Resource | Minimum | Recommended | Why It Matters |
|---|---|---|---|
| RAM | 2 GB | 4 GB | n8n loads entire workflow payloads into memory. Large JSON objects, file processing, and concurrent executions spike RAM usage fast. 1 GB will crash under real workloads. |
| CPU | 1 vCPU | 2 vCPU | n8n is single-threaded per execution but runs multiple executions concurrently. 2 vCPUs let PostgreSQL and n8n share CPU without starving each other. |
| Storage | 20 GB SSD | 40+ GB SSD | n8n stores execution history, credentials, and workflow data in PostgreSQL. Docker images, logs, and OS consume ~8 GB. NVMe SSDs give faster database queries. |
| Bandwidth | 1 TB/mo | 2+ TB/mo | Webhook-heavy workflows and file transfers consume bandwidth. Most VPS providers include 1-3 TB. Hetzner includes 20 TB. |
| OS | Ubuntu 22.04 / 24.04 LTS | Best Docker support, widest community documentation, and longest security update window. Debian 12 also works well. | |
The 1 GB RAM trap: Many providers advertise $5/month plans with 1 GB RAM. These work for testing but will crash in production. n8n + PostgreSQL + Nginx already consume ~800 MB at idle. One complex workflow pushes you into OOM territory. Start at 2 GB minimum, 4 GB if you can afford it.
Prices reflect the cheapest plan that meets n8n's minimum requirements (2 GB RAM or more) as of mid-2026. All providers offer hourly billing unless noted.
| Provider | Plan | CPU | RAM | Storage | Bandwidth | Price | Datacenters |
|---|---|---|---|---|---|---|---|
| Hetzner | CX22 | 2 vCPU | 4 GB | 40 GB NVMe | 20 TB | ~$4.50/mo | Germany, Finland, US |
| Hostinger | KVM 2 | 2 vCPU | 8 GB | 100 GB NVMe | 8 TB | ~$6/mo | US, EU, Asia, S. America |
| DigitalOcean | Basic | 1 vCPU | 2 GB | 50 GB SSD | 2 TB | $12/mo | US, EU, Asia, Australia |
| Vultr | Cloud | 1 vCPU | 2 GB | 50 GB SSD | 3 TB | $12/mo | 32 locations worldwide |
| Linode (Akamai) | Shared | 1 vCPU | 2 GB | 50 GB SSD | 2 TB | $12/mo | US, EU, Asia |
| Contabo | VPS S | 4 vCPU | 8 GB | 50 GB NVMe | 32 TB | ~$7/mo | Germany, US, Asia, AU |
| Oracle Cloud | Free Tier | 1/8 OCPU | 1 GB | 47 GB | 10 TB | $0/mo | US, EU, Asia, ME, S. America |
Our pick: Hetzner CX22 at ~$4.50/month offers the best value. You get 4 GB RAM, 2 vCPUs, NVMe storage, and 20 TB bandwidth. For beginners, Hostinger offers a 1-click n8n template that pre-installs everything.
Hetzner is the price-to-performance king. Their CX22 plan gives you 4 GB RAM and 2 vCPUs for roughly what other providers charge for 1 GB. Datacenters are in Germany (Falkenstein, Nuremberg), Finland (Helsinki), and the US (Ashburn, Hillsboro). If your users or webhook sources are in Europe, Hetzner's latency is unbeatable. The downside: no Asian datacenters, and their control panel is more technical than competitors.
Hostinger is the easiest on-ramp. They offer an official 1-click n8n VPS template that pre-installs Docker, Nginx, and n8n. You get a running instance in under 10 minutes without touching the command line. Their KVM 2 plan at ~$6/month gives 8 GB RAM and 100 GB NVMe, which is more than enough for heavy production workloads. The tradeoff is that Hostinger's networking performance is slightly lower than Hetzner or DigitalOcean in benchmarks.
DigitalOcean has the best documentation ecosystem in the industry. Their tutorials cover every aspect of server setup in step-by-step detail. The community is extremely active, and most "how to self-host X" blog posts target DigitalOcean. If you are learning self-hosting for the first time, the educational value justifies the premium pricing. They also offer managed databases (PostgreSQL as a service) if you want to separate your database from your VPS.
Vultr stands out for geographic coverage. With 32 datacenter locations worldwide (including South Korea, Japan, Mumbai, Sao Paulo, Johannesburg), Vultr is the best choice if you need low-latency webhooks from a specific region. Their pricing mirrors DigitalOcean but with wider server location options.
Contabo offers extreme specs at low prices. Their VPS S gives you 4 vCPU, 8 GB RAM, and 32 TB bandwidth for ~$7/month. The catch: Contabo oversells their hardware more aggressively than premium providers. CPU performance is inconsistent during peak hours, and support response times can stretch to days. Contabo works well for non-critical or batch workloads where occasional slowdowns are acceptable.
Oracle Cloud Free Tier is genuinely free forever. Their Always Free tier includes a VM.Standard.E2.1.Micro with 1 GB RAM and 47 GB storage. This is tight for production n8n but works for personal testing or very light automations. The ARM-based A1 Flex instances (up to 4 OCPU, 24 GB RAM for free) are the real prize, but availability is limited and you may need to try repeatedly over several days to provision one.
Linode (Akamai) offers reliable network performance backed by Akamai's CDN infrastructure. Their pricing matches DigitalOcean, and the platform is well-suited for users who want a no-surprises hosting experience. Support quality is consistently rated higher than most competitors.
4 GB RAM, 2 vCPU, ~$4.50/month. Best specs per dollar. Ideal for cost-conscious teams running moderate workloads in EU or US regions.
8 GB RAM, 1-click n8n install, ~$6/month. Zero command-line required. Perfect for beginners or anyone who values speed of deployment.
2 GB RAM, $12/month. Premium pricing justified by world-class tutorials and community. Best if you are learning self-hosting.
1 GB RAM (or up to 24 GB ARM), $0/month. Tight for production but unbeatable for personal testing or lightweight automations.
8 GB RAM, 4 vCPU, ~$7/month. Highest specs at lowest price. Best for batch processing where consistent CPU is less critical.
2 GB RAM, $12/month. 32 datacenter locations worldwide. Best if your webhooks or users are in regions other providers do not cover.
The VPS price is not your only cost. Here is what a production n8n setup actually costs per month when you factor in everything.
| Item | Cost | Notes |
|---|---|---|
| VPS Server | $4.50 - $12 | Your main recurring cost. Hetzner is cheapest, DigitalOcean/Vultr are premium. |
| Domain Name | $1 - $2/mo | ~$12-15/year for a .com. Required for SSL certificates and webhook URLs. You may already own one. |
| SSL Certificate | $0 | Let's Encrypt provides free, auto-renewing certificates. No paid SSL needed. |
| Backups | $0 - $2 | Local backups are free. Offsite storage (Backblaze B2, S3) costs ~$1-2/month for typical n8n data. |
| Monitoring | $0 | UptimeRobot (free tier), Hetrixtools, or simple cron-based health checks cost nothing. |
| Total (Budget) | ~$5 - $7/mo | Hetzner + existing domain + local backups. Unlimited executions. |
| Total (Premium) | ~$15 - $18/mo | DigitalOcean + domain + offsite backups. Still cheaper than n8n Cloud Starter ($20/mo for 2,500 executions). |
Comparison with n8n Cloud: n8n Cloud Starter costs $20/month (annual) for 2,500 executions. A self-hosted Hetzner setup at $5/month runs unlimited executions. If you run more than ~5 workflows regularly, self-hosting pays for itself immediately. The breakeven is roughly 2,500 executions/month. Below that, n8n Cloud's zero-maintenance convenience may be worth the premium.
Hidden costs to watch: Bandwidth overages (rare with most providers), snapshot storage fees, and your own time for maintenance. Budget 1-2 hours per month for updates and monitoring on a stable setup.
When to upgrade: Monitor your server with htop and docker stats. Upgrade when you consistently see RAM usage above 80%, CPU sustained above 70%, or swap usage climbing. Slow webhook response times are another signal.
Vertical scaling (bigger server) is the simplest path. Most providers let you resize your VPS with a few clicks. Hetzner, DigitalOcean, and Vultr all support live resizing. Your IP address stays the same, and the upgrade typically completes within minutes. Expect to move from a 4 GB plan to 8 GB when you hit ~50 active workflows or process large files regularly.
Horizontal scaling (multiple servers) becomes relevant when you need high availability or are processing extremely high volumes. n8n supports queue mode where a main instance handles the editor and webhooks while separate worker instances process executions. This requires n8n's Enterprise license and is overkill for most self-hosters.
Database separation is the first scaling step most people take. Move PostgreSQL to a managed database service (DigitalOcean Managed Databases, Hetzner Cloud Databases, or AWS RDS). This frees RAM on your VPS for n8n and gives you automatic database backups, replication, and maintenance.
Scaling roadmap:
You can, but it will be unreliable. n8n + PostgreSQL + Nginx consume ~800 MB at idle. Any moderately complex workflow will push you into out-of-memory crashes. Adding 2 GB of swap space helps, but swap is slow and not a real solution. Start at 2 GB RAM minimum for any workload beyond basic testing.
Hetzner if you want the best value. DigitalOcean if you want the best documentation and learning resources. Hetzner gives you 4 GB RAM for what DigitalOcean charges for 1 GB. But DigitalOcean's tutorials, managed services, and community support are meaningfully better for first-time self-hosters.
Yes, Oracle's Always Free tier is genuinely free with no time limit. The catch is provisioning: the free ARM A1 instances (up to 24 GB RAM) are in high demand and often unavailable. You may need to run a provisioning script that retries every few minutes over several days. The x86 micro instance (1 GB RAM) is usually available immediately but is too small for production n8n.
It depends on your use case. If your workflows receive webhooks from services with users in a specific region, a nearby datacenter reduces latency. For GDPR compliance, you need a server within the EU. For most general automation workflows that call external APIs, the difference between US and EU servers is negligible (50-100ms).
No, unless you already run Kubernetes for other services. A managed K8s cluster (EKS, GKE, AKS) costs $70-150+/month minimum for the control plane alone, before any worker nodes. A $5 VPS with Docker Compose is simpler, cheaper, and easier to maintain for a single n8n instance.
We have a dedicated guide for that: How to Setup n8n covers Docker installation, Docker Compose configuration, Nginx reverse proxy, SSL with Let's Encrypt, PostgreSQL setup, backups, and security hardening step by step.
A VPS is simpler and cheaper for n8n. AWS EC2, GCP Compute Engine, and Azure VMs are functionally VPS providers with more complex pricing, more configuration options, and higher costs. A comparable EC2 instance (t3.small, 2 GB RAM) costs ~$15-18/month before bandwidth charges. Use cloud providers only if you need their ecosystem (managed databases, Lambda, etc.) or your company already has cloud credits.