BOVO Digital
BOVO Digital
Tutorials8 min read

n8n Self-Hosted: Complete Guide to Install on VPS (2026)

n8n self-hosted gives you total freedom: unlimited workflows, your data at home, zero cloud subscription. This guide covers the complete installation on Ubuntu VPS, from initial setup to production.

n8n Self-Hosted: Complete Guide to Install on VPS (2026)

n8n Self-Hosted: Complete Guide to Install on VPS (2026)

n8n self-hosted is the option chosen by teams who refuse to depend on a SaaS for their critical automations. Zero execution limits, 100% private data, controlled fixed costs.

Why Self-Host n8n?

Economic advantage

Monthly volumen8n Cloudn8n Self-hosted
2,500 executions$20/month~$6/month (VPS)
10,000 executions$50/month~$6/month
100,000 executions$400+/month~$10/month

Over 3 years, the savings reach several thousand dollars for a team that automates seriously.

Other advantages

  • No execution limits — process thousands of operations per hour at no extra cost
  • Reduced latency if your VPS is in the same region as your APIs
  • Local system connections: internal databases, file servers, private APIs not exposed on the internet

Choosing Your VPS for n8n

Minimum configuration

  • CPU: 1 vCPU (2 vCPU for AI agents)
  • RAM: 1 GB (2 GB recommended)
  • Storage: 20 GB SSD
  • OS: Ubuntu 22.04 LTS
ProviderPlanPrice/month
HetznerCX21 (2 vCPU, 4 GB)~$7
DigitalOceanBasic 2 GB Droplet~$12
VultrCloud Compute~$10

Our recommendation: Hetzner CX21. Excellent performance/price ratio, GDPR-compliant datacenter, 99.9% SLA.

Step-by-Step Installation

1. VPS hardening

apt update && apt upgrade -y
adduser n8nadmin
usermod -aG sudo n8nadmin
sed -i 's/#PermitRootLogin yes/PermitRootLogin no/' /etc/ssh/sshd_config
systemctl restart sshd
ufw allow OpenSSH && ufw allow 80 && ufw allow 443 && ufw enable

2. Install Docker

curl -fsSL https://get.docker.com | sh
usermod -aG docker n8nadmin
systemctl enable docker

3. Deploy n8n

Follow our n8n Docker guide for the docker-compose.yml file and full HTTPS configuration.

4. Automatic monitoring

#!/bin/bash
STATUS=$(curl -s -o /dev/null -w "%{http_code}" https://n8n.your-domain.com/healthz)
if [ "$STATUS" != "200" ]; then
    cd ~/n8n && docker compose restart n8n
    curl -X POST "https://hooks.slack.com/..." -d '{"text":"⚠️ n8n restarted"}'
fi

Cron: */5 * * * * /bin/bash ~/healthcheck-n8n.sh

n8n Self-Hosted vs Cloud: 2026 Verdict

Choose self-hosted if: >2,500 executions/month, sensitive data, technical team, controlled costs.

Choose cloud if: beginner, low volume, no infrastructure to manage.

Our BOVO Digital team can deploy and configure your n8n self-hosted instance with training included.

Tags

#n8n#Self-hosted#VPS#Hosting#DevOps#Automation

Take action with BOVO Digital

This article sparked ideas? Our experts guide you from strategy to production.

Related articles