Install n8n in under 10 minutes. Cloud option for zero setup. Self-hosted for full data control.
| Option | Best For | Setup Time | Cost |
|---|---|---|---|
| Cloud (n8n.io) | Speed, zero maintenance, learning | 2 minutes | Free or $20/mo |
| Self-Hosted (Your Computer) | Full control, privacy, no fees | 5 minutes | Free (you own it) |
| Self-Hosted (VPS) | Always-on workflows, production | 15 minutes | ~$6/mo server |
node --version. If you do not see a version, download from nodejs.org (LTS version).
Open Terminal (Mac/Linux) or Command Prompt/PowerShell (Windows) and run:
npx n8n
That is it. It downloads, installs, and starts n8n. You see output that says:
n8n is now available on: http://localhost:5678
Click the link or go to http://localhost:5678 in your browser. You see the n8n editor.
Click "New Workflow" and start building. All 400+ integrations are available.
For always-on workflows that run while your computer is off, host n8n on a VPS. Here is a basic Docker setup:
Rent a small Linux server from DigitalOcean, Linode, or AWS (around $6/month). You need SSH access.
SSH into your server and run:
curl -fsSL https://get.docker.com -o get-docker.sh && sh get-docker.sh
Create a file called docker-compose.yml:
version: '3'
services:
n8n:
image: n8nio/n8n
ports:
- "5678:5678"
environment:
- N8N_HOST=your-domain.com
- GENERIC_TIMEZONE=America/New_York
volumes:
- ./n8n_data:/home/node/.n8n
restart: unless-stopped
docker-compose up -d
n8n is now running on your VPS and will stay on even if you reboot. Access it at your-domain.com:5678 (or add HTTPS with Nginx/Caddy for production).
Let us build a workflow that sends an email when a form is submitted. Here is the step-by-step:
Fix: Node.js is not installed. Download from nodejs.org (get the LTS version). Restart Terminal after installing.
Fix: Something else is using that port. Either close the other app, or run n8n on a different port: npx n8n -p 5679
Fix: Try clearing npm cache: npm cache clean --force then try npx n8n again. On Linux, you may need sudo.
Fix: Check the node logs. Click a node and look at the "Executions" tab. Common issues: authentication missing, rate limit hit, API not responding. Check the node error message for details.