n8n: automate everything, pay once
Your own workflow automation platform.
Replace Zapier and Make with unlimited executions on your server.
n8n capabilities
Drag-and-drop automation with JavaScript and Python when you need it.
Visual workflow builder
Drag-and-drop editor to build complex automations. Connect nodes, set conditions, and test flows visually.
400+ integrations
Pre-built nodes for Slack, GitHub, Google Sheets, databases, CRMs, and hundreds more. Add custom nodes via npm.
Webhooks and triggers
Start workflows from webhooks, cron schedules, or external events. React to data in real time.
Code nodes
Write custom JavaScript or Python inside any workflow. Full access to npm packages when needed.
HTTP requests and API
Call any REST API directly from workflows. Send and receive JSON, handle authentication, and parse responses.
Error handling
Built-in retry logic and error workflows. Get notified on failures and automatically recover from transient issues.
n8n vs Zapier
Zapier without the per-zap tax. 400+ integrations.
| Feature | n8n + VPS | Zapier |
|---|---|---|
| Task executions | Unlimited, no per-task cost | Per-task pricing, limits on all plans |
| Code execution | Full JavaScript and Python nodes | Limited code steps, restricted runtime |
| Data ownership | Your server, your data | Data processed on Zapier servers |
| Self-hosting | Docker, full control | Cloud only, no self-host option |
| Pricing | Flat VPS price, open-source | $19.99-$799/mo |
Install n8n in 5 minutes
Docker Compose on your VPS.
Connect and install Docker
ssh root@your-server-ip apt update && apt install -y docker.io docker-compose-v2 Create a docker-compose.yml
services:
n8n:
image: n8nio/n8n
restart: always
ports:
- "5678:5678"
environment:
- DB_TYPE=postgresdb
- DB_POSTGRESDB_HOST=postgres
- DB_POSTGRESDB_DATABASE=n8n
- DB_POSTGRESDB_USER=n8n
- DB_POSTGRESDB_PASSWORD=changeme
volumes:
- n8n_data:/home/node/.n8n
depends_on:
- postgres
postgres:
image: postgres:16-alpine
restart: always
environment:
- POSTGRES_DB=n8n
- POSTGRES_USER=n8n
- POSTGRES_PASSWORD=changeme
volumes:
- postgres_data:/var/lib/postgresql/data
volumes:
n8n_data:
postgres_data: Start the services
docker compose up -d Access your n8n instance
Visit http://your-server-ip:5678 and create your admin account.
Recommended VPS specs
Personal
A few simple workflows
- 1 GB RAM
- Light automation
Active
Multiple active workflows
- 2 GB RAM
- Webhooks, cron, integrations
Team
Heavy automation
- 4 GB+ RAM
- High-frequency triggers, large data
n8n FAQ
Still have questions? Contact our support team
Automate without per-task fees
Run as many workflows as your server can handle.