Self-hosted n8n setup, production-ready in your own infrastructure
For teams that want n8n on their own servers without becoming its system administrators. We install, secure and scale it in your cloud account, hand you the keys, and stay on for maintenance only if you want us to.
Self-hosted n8n is the free Community edition (or a paid Business or Enterprise license) running on infrastructure you control. Installing it takes an afternoon. Running it in production takes Postgres, queue mode, HTTPS, backups you have restored at least once, updates, user management and alerts. We set all of that up in your account as a fixed-price project, document it, and hand it over.
- Who it is for
- Teams that need n8n on their own infrastructure (data rules, volume, custom nodes) and do not want to run it themselves
- What we set up
- Docker, PostgreSQL, queue mode with workers, SSL, backups, SSO where your license allows it, monitoring and alerts, a runbook
- Where it runs
- Your AWS, Azure or Google Cloud account, or a VPS you own. Or n8n Cloud when that fits better
- Price
- Priced as a project before it starts. Usually delivered with your first build: projects run $6,000 to $24,000, three to six weeks
- Maintenance
- Optional. Nothing to buy up front; quoted once the setup is live, scope agreed then
- Who owns it
- You. Your account, your instance, your encryption key. No 2V platform in the middle
When self-hosted n8n is still a demo
It still runs on SQLite
The default database works for testing. n8n’s own hosting templates recommend PostgreSQL for production, and queue mode does not run on SQLite at all.
Nobody has the encryption key
n8n encrypts every stored credential with one key. If it only lives on the original server, a rebuild means re-entering every password and token by hand.
The version is a year old
n8n ships updates often. Nobody upgrades because nobody knows what will break, so security fixes pile up.
One person knows the server
The setup lives in someone’s head and a shell history. When they leave or go on holiday, nobody can restart it.
Webhooks fail without a sound
A wrong public URL, an expired certificate or a full disk, and the first sign is a customer asking where their invoice went.
Everything slows down at month end
One process runs the editor, the triggers and every execution. Heavy workflows block the light ones, and the UI freezes.
n8n’s own team put it plainly in their community forum: installing is the easy part, keeping it stable, updated and secure is the work. That work is what this service covers.
What a production n8n setup includes
Twelve pieces. The docs explain each one on its own page; this is the list we work through on every self-hosted install, in your account.
The right place to run it
A VM in your existing cloud account, a dedicated server, or Kubernetes if you already run it. Chosen from your volume, data rules and who will look after it. Comparison below.
Docker Compose or Helm
The official n8n image with pinned versions, never latest. Compose for a single host, n8n’s Helm chart on Kubernetes.
PostgreSQL
Workflows, credentials and execution history in Postgres, managed by your cloud provider where possible. Execution data pruned so the database does not grow forever.
Queue mode and workers
Redis as the broker, a main instance for the editor and triggers, workers for executions. Add workers when volume grows instead of resizing the whole box.
SSL, domain and webhooks
A reverse proxy with auto-renewed certificates, the n8n port closed to the internet, and the public webhook URL set correctly so every trigger registers the right address.
Backups you have restored
Nightly database backups off the server, the encryption key stored outside it, and one full restore into a fresh instance before handover.
An upgrade path
A written update procedure: back up, read the release notes, upgrade a staging copy, run the critical workflows, then production.
SSO and user management
Email invites and 2FA on Community. SSO (SAML, LDAP or OIDC), projects and sharing when your license includes them. One owner account that is not a person’s inbox.
Monitoring and alerts
Health and readiness checks, Prometheus metrics, disk and backup alerts, and an error workflow that tells a human when an execution fails.
Keys and credentials
Environment files out of the repository, the encryption key in your secrets manager, credentials scoped per workflow. External secret stores on Enterprise.
Security settings
Firewall, OS patches, public API off if unused, risky nodes blocked, SSRF protection, telemetry choices, and n8n’s built-in security audit run before go-live.
Runbook and documentation
How to update, restore, add a worker and rotate the key, in plain language. Your team can run it without us.
On top of the instance, we build the workflows themselves to the same standard: error branches, retries, sub-workflows. That is the work of our n8n automation agency, and the patterns are in our n8n best practices. When an integration does not exist, we write a custom n8n node, which only a self-hosted instance can load freely.
Where your n8n runs
There is no best host, only the one that matches your volume, your data rules and the team that will look after it.
| Option | Fits when | Watch out for |
|---|---|---|
| A VPS or dedicated server (Hetzner, DigitalOcean, OVH and similar) | Moderate volume, one region, a team that wants the lowest monthly bill and simple Docker Compose. | You own the OS, firewall and backups. Size for growth: a small VM with 2 vCPUs and 4 GB of RAM is a common start for the main instance. |
| Your existing cloud account (AWS, Azure, Google Cloud) | Data must stay inside your company’s cloud and its controls. Managed Postgres and Redis are a click away. | Cost creeps if instances are oversized. IAM, networking and backups follow your cloud’s rules, so they need configuring. |
| Kubernetes with n8n’s Helm chart | You already run a cluster and an ops team, or you need autoscaled workers and multi-main high availability. | The most moving parts. Rarely worth it unless you already run Kubernetes. Multi-main needs an Enterprise license. |
| n8n Cloud | Modest volume, no data residency rule, nobody who wants to own a server. | Execution caps per plan, no /metrics endpoint, and your data on n8n’s infrastructure. See below. |
Fire Plan Strategies runs on self-hosted n8n on a dedicated server, which removed per-execution costs at their volume. Contrail Financial, a solo consultancy, runs on n8n Cloud at $55 to $60 a month to operate at 10 clients. Both are in the cases below.
Which n8n license you need: Community, Business or Enterprise
Most self-hosted teams start on the free Community edition. Pay for a license only when you need a specific feature from this list. Prices from n8n’s pricing page, checked November 2026.
| Edition | Price (n8n.io, Nov 2026) | What it adds for a self-hosted team |
|---|---|---|
| Community | Free, no license key | The workflow engine, unlimited workflows and executions, users with 2FA, queue mode. Lacks SSO, projects, sharing, Git environments, custom variables, external secrets, external binary storage, log streaming and multi-main. |
| Registered Community | Free, register an email | Folders, debug in editor (copy and pin execution data) and custom execution data. |
| Business | $800 a month billed annually, self-hosted, 40,000 executions a month | SSO and LDAP, 6 projects, 30 days of insights. The plan card also lists multiple environments with Git, which the comparison table places on Enterprise: confirm with n8n. 50% off for companies under 20 employees. |
| Enterprise | Contact n8n sales | Log streaming, external secret stores, audit logging, multi-main high availability, longer history, SLA support from n8n. |
One mismatch to know about
n8n’s pricing page lists queue mode among Business features, while the Community edition docs say queue mode is included in Community. In practice queue mode runs on Community; the paid tiers add multi-main and S3 binary storage around it. We check the current docs again before every install.
How paid keys behave
Business and Enterprise keys are applied to a normal instance. Per n8n’s pricing FAQ, the instance pings n8n’s license server daily with production execution counts, and going over quota does not stop workflows but can bring overage charges. Your firewall has to allow that call.
The Community edition’s license, the Sustainable Use License, allows use for your own internal business purposes. That is one reason we install n8n in your account rather than hosting your workflows on ours. For the full cost picture across Cloud and self-hosted plans, see our n8n pricing guide.
When n8n Cloud is the better call
We set up n8n Cloud too. We recommend it over self-hosting more often than people expect.
Choose n8n Cloud when
Your volume fits a plan (Starter covers 2,500 executions a month and Pro 10,000, per n8n’s pricing page in November 2026), nobody on your side wants to own a server, and no rule says the data must stay in your infrastructure. You trade control for zero upkeep.
Choose self-hosted when
Data has to stay in your cloud or region, volume would push you past Cloud caps into Enterprise pricing, you need custom nodes against internal systems or self-hosted AI models, or you already run servers and one more is marginal work.
What self-hosted n8n costs to run, labor included
Server price tables leave out the biggest line: the engineer’s hours. Here is the whole bill for one illustrative company.
Illustrative example. Assumptions: a 25-person company, 30 active workflows, about 8,000 executions a month, Community edition, one VM plus managed Postgres. Infrastructure prices are typical round numbers. Engineer time valued at $100 an hour. n8n Cloud price from n8n.io, November 2026.
| Line | Do it yourself | Self-hosted, set up by us | n8n Cloud Pro |
|---|---|---|---|
| n8n license | $0 (Community) | $0 (Community) | $50 a month billed annually ($600 a year) |
| Infrastructure: VM, managed Postgres, off-site backups | About $85 a month ($1,020 a year) | The same $85, billed to your account | Included |
| Setup to production standard | About 24 engineer hours: $2,400 | Fixed project price, agreed before we start | Sign-up |
| Upkeep: updates, checks, one small incident | About 4 hours a month: $4,800 a year | Your team follows the runbook, or optional maintenance quoted once live | Run by n8n |
| Execution cap | None | None | 10,000 a month |
| Year one | About $8,220, then about $5,820 a year | $1,020 of infrastructure plus the project price and whatever upkeep you choose | About $600 |
What the numbers say
At 8,000 executions a month with no data rules, n8n Cloud is the cheapest line by far. We would tell this company to use it.
Where it flips
Triple the volume, or add a rule that customer data stays in your AWS account, and Cloud means a higher plan or Enterprise, while the self-hosted infrastructure barely moves.
The real DIY risk
The labor line is not the danger. The danger is the hours that do not get spent: the update skipped, the backup never restored, the key never copied.
Setup is a project, maintenance is optional
The same terms as everything else we build: a price before we start, built in your accounts, yours when we finish.
- Phase 1
Discovery week
We spend a week inside your operations, with the people doing the work, and find where the time and the margin go.
One week - Phase 2
The plan
A map of how your business runs today and a ranked list of what to change first, with the payback on each item. Yours to keep.
End of week one - Phase 3
Build
The instance first: hosting, Postgres, queue mode, SSL, backups and monitoring, in your account. Then the first process on top of it. Each project is priced before it starts and scoped to pay back on its own.
Three to six weeks per project - Phase 4
Improve
The systems run on their own. If you want us to stay, we keep improving them and take on the next process.
Optional
If you are automating more than hosting
Most clients get the instance as part of their first build, after an Automation Discovery Week ($2,000 for 1 to 20 people) decides what to automate first. Projects run $6,000 to $24,000, three to six weeks.
If you only need the instance
Your team builds the workflows and wants the platform done right. Skip the discovery week: book a call, we confirm the scope and price the setup as a project before it starts. See pricing for how projects are quoted.
Maintenance, if you want it
Agreed once the setup is live, covering whatever you want covered: tested n8n upgrades, OS patches, backup and restore checks, alert follow-up. We work US hours from Lisbon and New York and do not sell 24/7 on-call.
Self-hosted n8n and n8n Cloud, in production
Lead intake, quotes, invoicing and certificates, automated on self-hosted n8n for a Canada-wide fire safety services company. Every lead used to be typed into three systems by hand.
Fire Plan Strategies →Five n8n modules that read over 100 RSS feeds, score each article per client, and leave a personalized brief in the founder's Gmail drafts by 6am. He reviews and sends.
Contrail Financial →Fire Plan Strategies, self-hosted
We moved their whole automation layer to self-hosted n8n on a dedicated server. It handles more than 100 fire safety plan inquiries with 99%+ uptime, every execution is logged, and a failure raises a notification instead of breaking silently.
“This is music to my ears. Our accountant is definitely going to love this because she's not going to have to do invoices anymore. The admin staff is also going to love it because they're not going to have to manually do each one of those certificates.”
Mariano VelazcoManaging Partner, Fire Plan Strategies · Read the case
Four things that break queue mode
Queue mode is how self-hosted n8n scales. These four requirements sit in n8n’s queue mode docs, and missing any of them is the usual reason a scaled setup fails.
1. Workers need the same encryption key
The main instance’s key must be set on every worker and webhook processor, or workers cannot read credentials and executions fail on the first node that logs in somewhere.
2. Files cannot live on the local disk
n8n does not support filesystem binary data storage in queue mode, and S3 external storage is a paid feature. If your workflows handle PDFs or images, decide where binary data goes before switching modes.
3. Worker health checks are off by default
The main instance answers health checks; workers do not until you enable them. Without that, a dead worker looks healthy while the queue grows.
4. Concurrency against the database pool
Each worker runs 10 jobs in parallel by default. n8n recommends 5 or more, and warns that many workers at low concurrency can exhaust the database connection pool. Size workers and Postgres together.
Monitoring that catches the failures that matter
“Monitoring included” usually means the process restarts when it dies. A self-hosted n8n needs four layers.
| Layer | What we set up | What it catches |
|---|---|---|
| Is it up? | /healthz on the main instance, polled from outside your network | The server or container is down, DNS or the certificate broke |
| Can it work? | /healthz/readiness, which only returns 200 when the database is connected and migrated; worker health checks enabled | A failed upgrade migration, a lost database connection, a dead worker |
| Is it coping? | /metrics (self-hosted only) into Prometheus or your cloud’s monitoring, plus disk, memory and queue depth alerts | Slow growth: a filling disk, a backlog building at month end |
| Did the work happen? | An error workflow on every production workflow, routed to Slack or email with the execution link; a daily check that last night’s backup exists | The failures customers notice: an API change, an expired token, a silent backup job |
What you hold when we hand over
If the person who set up n8n leaves, can you still run it? At the end of every setup, these sit with you.
The encryption key
In your password or secrets manager, with a tested note on how to restore it. Without it, a restored database has unreadable credentials.
Every account
Cloud or server root access, DNS, the database, the backup bucket and any n8n license key, all in your company’s name. Our access is removable in one step.
The runbook
Update, restore, add a worker, rotate the key, read the alerts. Written for your team, tested during handover.
The DIY route, step by step
If you have an engineer who wants to own the server, you do not need us for the setup. Our n8n setup and installation guide walks through the one-line install, Docker and a Docker Compose stack with Postgres, Redis and a worker, plus HTTPS, backups and updates. New to the tool? Start with what n8n is.
Use the scope list above as your checklist. If you get stuck on queue mode, SSO or a migration, a call is free.
Questions people ask first
Is self-hosted n8n free?
The Community edition is free to run on your own server for your own internal business use, under n8n’s Sustainable Use License. You still pay for the server, the database and the backups, and someone has to spend time updating and watching it. Features like SSO, Git environments and external secrets need a paid Business or Enterprise license key.
How much does it cost to self-host n8n?
The software line can be zero. The infrastructure for a small production setup (a VM, a managed Postgres database, off-site backups) is usually tens of dollars a month. The line most teams miss is engineer time: setup, monthly updates and the odd incident. Our worked example above puts all three side by side.
Do I need n8n Enterprise to self-host?
No. Community runs without a license key, and queue mode works on it. You need Business or Enterprise when you want SSO, Git-based environments, sharing and projects, or log streaming and external secrets (Enterprise). Multi-main high availability is Enterprise and self-hosted only. Check the current list on n8n’s Community edition page.
What VPS do I need for n8n?
For a small team, a VM with 2 vCPUs and 4 GB of RAM is a common starting point for the main instance, with Postgres beside it or as a managed service. What changes the size is volume, files and AI calls, and whether you run queue mode with workers. We size it from your real workflows, then leave room to add workers rather than buying a large box up front.
Should we self-host n8n or use n8n Cloud?
Self-host when you need your data inside your own infrastructure, your volume would push you past the Cloud execution caps, or you want custom nodes against internal systems. Use n8n Cloud when volume is modest, nobody on your side wants to own a server, and there is no data rule against it. We set up either.
Who maintains a self-hosted n8n instance after setup?
You choose. Every setup ships with a runbook so your own team can update, restore and scale it. If you would rather we keep it updated and watched, that is an optional maintenance agreement, scoped and quoted once the setup is live. There is nothing to buy up front.
Can you move us from n8n Cloud or Zapier to self-hosted n8n?
Yes. Moving from n8n Cloud means standing up the instance, exporting and importing the workflows, and reconnecting credentials before cutover. Moving from Zapier or Make is a rebuild, run in parallel on real data before cutover, which our Zapier to n8n migration service covers.
Is self-hosted n8n secure, and where does our data live?
It lives where you put it: your cloud account, your region, your database. Security depends on the setup: HTTPS, a closed firewall, the n8n port not exposed directly, 2FA or SSO, a backed-up encryption key and patched software. We configure all of that and run n8n’s own security audit before handover.
Get n8n running in your own infrastructure, properly.
Book a call and we will tell you whether self-hosting or n8n Cloud fits, and what the setup involves. Or start with a discovery week ($2,000 for 1 to 20 people) to decide what to automate on it first.