n8n
Workflow automation with a node-based editor
n8n is a workflow automation tool with a visual node editor that connects apps and APIs, with optional code steps. It targets technical users automating processes across services. It is deployed via Docker.
Key features
- Visual node-based workflows
- Hundreds of app integrations
- Code nodes for custom logic
- Self-hostable with no execution caps
Pros & cons
Strengths
- Powerful and flexible
- Huge integration library
- Code when you need it
Trade-offs
- License is fair-code, not OSI
- Complex workflows get unwieldy
n8n replaces
Last reviewed Aug 23, 2026 · 726 words
n8n replaces a Zapier subscription with a visual workflow editor on your own box — no task limits, no per-execution pricing, and code nodes for the 10% of logic that drag-and-drop can't express. Self-hosting it is easy; self-hosting it so that two years of accumulated automations survive a server rebuild takes four decisions people usually make too late.
Save the encryption key before you build anything
n8n encrypts every stored credential — your API keys, OAuth tokens, database passwords — with a key it generates on first run. Lose that key and every credential in every workflow becomes undecryptable ciphertext; your workflows survive, but you re-authenticate dozens of services by hand. Set it explicitly and store it in your password manager today:
services:
n8n:
image: docker.n8n.io/n8nio/n8n
ports:
- "5678:5678"
environment:
- N8N_ENCRYPTION_KEY=generate-a-long-random-string
- WEBHOOK_URL=https://n8n.example.com/
- GENERIC_TIMEZONE=Europe/London
volumes:
- ./n8n-data:/home/node/.n8n
restart: unless-stopped
The timezone line matters more than it looks: every Cron and Schedule node fires in this zone, and the default is UTC — the classic "why did my 8 a.m. report arrive at 3 a.m." mystery.
Webhooks are why the proxy config matters
Half of n8n's value is webhook triggers — Stripe events, GitHub pushes, form submissions land in a workflow instantly. For that, external services need a stable HTTPS URL, which means n8n lives behind a reverse proxy (Caddy makes it two lines) and WEBHOOK_URL must be set to that public address. Miss it and n8n advertises http://localhost:5678/ to every service you connect, and nothing fires. Test with the production webhook URL, not the editor's test URL — the test one only listens while the editor is open, another rite-of-passage confusion.
SQLite is fine until the day it isn't
The default SQLite database happily runs dozens of light workflows. Move to Postgres (DB_TYPE=postgresdb) when executions climb into the thousands per day, when you want the execution log to survive pruning honestly, or before you adopt queue mode with multiple workers for heavy parallel loads. The practical advice: if n8n is becoming the nervous system of your business rather than a hobby, migrate while the export/import is small. Either way, prune: EXECUTIONS_DATA_MAX_AGE=336 (14 days) keeps the execution history from quietly eating your disk, which is the most common n8n operational surprise.
Build workflows that survive their author
- Name nodes for what they do ("Fetch overdue invoices"), not "HTTP Request 3". Six months later, the canvas is documentation or it is archaeology.
- Handle the error path. Every workflow that matters gets an error workflow (Settings → Error Workflow) that notifies you — via ntfy or your Uptime Kuma channel — when a run fails. Silent failure is the default; opt out of it.
- Export as you go. Workflows export to JSON; a nightly export into a git repo turns "the server died" into a non-event and gives you diffable history. Pair it with a real backup of the data volume, which also holds your credentials.
- Pin versions. n8n releases weekly and moves fast;
latestplus auto-updates will eventually break a node mid-workflow. Pin, read release notes, bump monthly.
The license, plainly
n8n uses the Sustainable Use License — fair-code, not OSI open source. For self-hosting your own automations, personal or internal business use, everything here is free and unrestricted. What you cannot do is sell n8n itself as a hosted service to others. If OSI purity matters to you on principle, that's a real consideration; the who-pays-for-open-source discussion covers the trade-offs of the model honestly. For the typical homelab or internal-tools user, it changes nothing in practice.
What I'd do
The compose file above with the encryption key in a password manager, behind Caddy with WEBHOOK_URL set, execution pruning at 14 days, an error workflow wired to my phone, and nightly JSON exports to git. Start with one real automation — the invoice chaser, the backup report, the RSS-to-newsletter — and let the library grow from need, not from the integration catalogue's 400 shiny options. n8n rewards being boring infrastructure far more than being a weekend of enthusiastic canvas-drawing.
Compare n8n
14 head-to-head comparisons.
Similar automation & workflows apps
Firecrawl
Automation & WorkflowsTurn websites into clean data for AI applications
Replaces Apify
Crawl4AI
Automation & WorkflowsOpen-source web crawler built for LLM data pipelines
Replaces Firecrawl
Huginn
Automation & WorkflowsAgents that monitor and act on your behalf
Replaces IFTTT, Zapier
Apache Airflow
Automation & WorkflowsProgrammatically author, schedule and monitor workflows
Replaces AWS Step Functions, Azure Data Factory
ToolJet
Automation & WorkflowsLow-code platform for building and automating business tools
Replaces Retool, Microsoft Power Apps
Appsmith
Automation & WorkflowsOpen-source low-code platform for building internal apps
Replaces Retool, Microsoft Power Apps