n8n Install Guide

Install n8n in under 10 minutes. Cloud option for zero setup. Self-hosted for full data control.

Choose Your Path: Cloud or Self-Hosted

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

Cloud Setup (2 Minutes)

  1. Go to n8n.io
  2. Click "Sign Up"
  3. Create an account with email or Google
  4. You get a free tier immediately. Start building workflows.
  5. When you need more: $20/mo unlocks production features and higher limits
Free tier includes: 10 active workflows, up to 5,000 executions/month, email support, all integrations. That is plenty for learning or small automation.

Self-Hosted on Your Computer (5 Minutes)

⚙️
Prerequisites: Node.js 18 or higher installed. Check: open Terminal/CMD and type node --version. If you do not see a version, download from nodejs.org (LTS version).

Step 1: Install n8n

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

Step 2: Open n8n

Click the link or go to http://localhost:5678 in your browser. You see the n8n editor.

Step 3: Create Your First Workflow

Click "New Workflow" and start building. All 400+ integrations are available.

🎉
That is all. Your n8n is running on your machine. Workflows execute locally. Zero cloud fees. Zero data leaves your computer.

Self-Hosted on a VPS (Production Setup)

For always-on workflows that run while your computer is off, host n8n on a VPS. Here is a basic Docker setup:

Step 1: Get a VPS

Rent a small Linux server from DigitalOcean, Linode, or AWS (around $6/month). You need SSH access.

Step 2: Install Docker

SSH into your server and run:

curl -fsSL https://get.docker.com -o get-docker.sh && sh get-docker.sh

Step 3: Create a Docker Compose File

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

Step 4: Run n8n

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).

Your First Workflow: Simple Example

Let us build a workflow that sends an email when a form is submitted. Here is the step-by-step:

Step 1: Add a Webhook

  1. In n8n, click the + button to add a node
  2. Search "Webhook"
  3. Add the "Webhook" node
  4. Click "Copy" to copy the webhook URL

Step 2: Add an Email Node

  1. Click + again, search "Gmail" (or your email service)
  2. Add the Gmail node
  3. Authenticate with your Gmail account
  4. Set the "To" field to your email
  5. Set the "Subject" to something like "New Form Submission"
  6. For the body, use the dynamic values from the Webhook (the form data)

Step 3: Test It

  1. Click "Execute Workflow"
  2. Send test data to the webhook URL (using curl, Postman, or a form on your website)
  3. If it works, you get an email
🚀
Congratulations. You just built your first n8n workflow. From here you can add more steps: store data in Notion, send Slack messages, update a CRM, or trigger anything with an API.

Common Errors and Fixes

"Command not found: npx"

Fix: Node.js is not installed. Download from nodejs.org (get the LTS version). Restart Terminal after installing.

"Port 5678 is already in use"

Fix: Something else is using that port. Either close the other app, or run n8n on a different port: npx n8n -p 5679

"Module not found" or "EACCES permission denied"

Fix: Try clearing npm cache: npm cache clean --force then try npx n8n again. On Linux, you may need sudo.

Workflow starts but never completes

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.