n8n
Good enough to bet a client's daily operations on
With one condition: self-host it. The hosted tier changes the maths and the answer.
The verdict
n8n is the right default for automation that runs unattended against your own systems, provided you self-host it and treat workflows as code you review.
It sits between a no-code tool and a job queue. You get a visual editor for the boring parts. A JavaScript node handles the rest, which is most of the interesting work.
Price is not the reason to choose it over Zapier. It is that the workflow runs on infrastructure you control, against databases you already trust it to reach.
In short
5 things that decide this
- 01n8n is fair-code licensed and self-hostable, so workflows and data stay on your infrastructure.
- 02The visual editor covers routine integration work, and a code node running JavaScript or Python handles anything it cannot express.
- 03Cloud billing counts one execution per whole workflow run, not per step, so long workflows are cheap and frequent ones are not.
- 04The catalogue is over 500 integrations, against Zapier's 9,000+. More connectors become your problem.
- 05Debugging a long-running workflow is the weakest part of the product.
For someone who has not used it
n8n is a workflow tool. You draw a sequence of nodes, each one an app or an operation, and it runs whenever a trigger fires. Zapier and Make do that too.
Three things make it different. You can run it yourself. A node can contain arbitrary JavaScript or Python. The whole workflow is a JSON document you can put in version control. Together they move it from a convenience tool to something you can put a client's operations on.
What we built with it
Little Tree Confections is an artisan bakery that was losing decisions made in meetings. Fireflies recorded every call, but the transcripts were rarely read and the action items never reached ClickUp. We built a two-workflow n8n system: transcripts flow into an OpenAI refinement step, then into ClickUp tasks and Notion docs.
One node reads the live ClickUp structure rather than hardcoding it, so tasks route to the right department on their own. A second workflow runs daily and builds the CEO brief. Why n8n and not a bespoke service? The bakery's operations manager can open the canvas and read what it does. That matters more than elegance when the maintainer is not an engineer.
- TriggerWebhook, schedule or event.
- NodesThe integrations you did not write.
- CodeJavaScript where the canvas gives up.
- RunOn your infrastructure, not theirs.
- FailRe-trigger. There is no durable replay.
That last station is the whole limitation. Plan around it or pick a job queue.
n8n, dimension by dimension
Scored from running it in production, not from the marketing site.
| Dimension | Verdict | Why |
|---|---|---|
| Integration coverage | Strong | The ordinary connectors exist and work. |
| Escape hatch | Strong | A code node means no wall you cannot cross. |
| Self-hosting | Strong | First-class. Data never leaves your infrastructure. |
| Version control | Adequate | Workflows are JSON. Discipline is yours to supply. |
| Debugging | Weak | A failed step deep in a long run is slow to diagnose. |
| Durable execution | Absent | No replay. Plan around it or use a queue. |
| Cloud pricing | Mixed | One execution covers a whole run, so step count is free. Run count is not. |
| Integration catalogue | Adequate | Over 500, against Zapier's 9,000+. The gap is real. |
Cloud or self-hosted?
The question that decides whether n8n is cheap or expensive for you.
Does the workflow touch a private database?
How often does it run?
Will anyone ask where the data lives?
Every outcome
- Self-host it
- A container, a database and a queue, plus someone who owns upgrades. You get the data-residency answer and the pricing stops mattering.
- Start on n8n Cloud
- Skip the infrastructure while volume is low and nothing touches a private database. Move later; the workflows import unchanged.
Where it stands
Good at
- Self-hosting is first-class, not an afterthought, so data never leaves your infrastructure.
- The code node means you never hit a wall the visual editor cannot cross.
- Workflows export as JSON, so they can be reviewed, diffed and rolled back.
- The node library covers the ordinary integrations without custom work.
Weak at
- Debugging a failed run in a long workflow is slow and the error surface is thin.
- Execution-based cloud billing rewards big workflows and penalises frequent ones, which is the opposite of most people's mental model.
- On n8n Cloud the code node cannot import external npm modules. Only crypto and moment are available.
- Version control is possible but not native, so discipline has to come from your team.
- Complex branching becomes hard to read on the canvas well before it becomes hard to run.
n8n running unattended, in production
Common questions
01n8n or Zapier?
Zapier if the workflow crosses public SaaS tools and nobody wants to run infrastructure. n8n if it touches your own database, needs custom logic, or the execution volume makes per-task pricing painful.
02Is n8n really open source?
Not quite, and the distinction matters for some buyers. n8n ships under the Sustainable Use License, a fair-code licence rather than an OSI-approved one. You may use and modify it for your own internal business purposes and self-host it freely. You may not sell it on as a competing hosted service. Distribution to others is permitted only free of charge, for non-commercial purposes. For most teams that is invisible. Anyone building a product on top should read the licence first.
03What does self-hosting actually cost in effort?
A container, a database and somebody who owns upgrades. SQLite is the default database, but n8n does not recommend it for queue mode, so production means Postgres. Scaling past one instance means queue mode, which needs Redis as the message broker and separate worker processes. The real cost is that it becomes yours to monitor. That is the trade for keeping the data in house.
04What happens if we outgrow it?
The workflows are JSON, and the logic inside the code nodes is ordinary JavaScript. Both port. What does not port is the visual arrangement, so the migration is a rewrite of the wiring rather than a rewrite of the thinking.
Related
- meeting notes that become tracked actions →The build this review draws on.
- business process automation →How we build automation that runs unattended.
- n8n vs Zapier →The catalogue against the code node, with both billing models.
- what to use when you outgrow it →Temporal, Windmill and Make, and when to stay put.
- AI agents →When automation has to decide, not only move data.

