Self-Hosted n8n vs n8n Cloud: Cost, Control, and When Each Wins
n8n Cloud vs self-hosted: a practical decision guide for cost, control, compliance, ops burden, and when each option is the right production choice.
The hosting question for n8n is not ideological. It is whether you want to buy convenience or operate infrastructure — and which constraints (data, cost, network) dominate.
Spurlock Studios runs both depending on the client. This is the decision framework we use. Broader production rules live in the Production n8n handbook.
The short answer
- Choose n8n Cloud when you want less ops, faster start, and your compliance posture allows a reputable SaaS workflow host.
- Choose self-hosted when you need network placement, data residency, custom proxying, or cost advantages at high volume and someone will actually own the box.
- Do not choose self-hosted because it feels more “pro” if nobody will patch it.
Comparison that matters in production
| Factor | n8n Cloud | Self-hosted |
|---|---|---|
| Time to first production workflow | Faster | Slower (DNS, TLS, backups, upgrades) |
| Patching & uptime ops | Vendor | You (or your platform team) |
| Data residency / VPC | Limited to vendor options | Full control |
| Outbound IP stability / allowlists | Vendor IPs | Your IPs |
| Cost at low volume | Usually predictable and fine | Often more expensive once you count labor |
| Cost at high volume | Can climb with plan tiers | Infra may win if labor is already paid |
| Credential locality | In vendor systems | In your environment |
| Needs a named ops owner | Light | Hard requirement |
Is n8n Cloud worth it?
Yes — for many teams — if:
- You are early and need reliability without hiring platform time
- Your workflows are standard SaaS-to-SaaS with normal secrets posture
- Your buying team accepts vendor subprocessors
- You would under-invest in backups and upgrades if you self-hosted
Cloud is not “less production.” Production is discipline: idempotency, DLQ, schemas, approvals. Hosting is just where the rail lives.
Cloud is the wrong default if legal already said “automation payloads cannot leave our network” or if you need private connectors to systems that are not internet-reachable without a bridge you control.
When self-hosted wins
Self-host when two or more are true:
- Compliance or customer contracts require it
- You must place n8n on a private network next to internal APIs
- Execution volume makes Cloud pricing uncomfortable and you have ops capacity
- You need custom reverse proxy, mTLS, or egress control beyond Cloud knobs
Minimum self-hosted bar:
- Automated backups of the n8n database
- Documented upgrade path
- TLS
- Secrets via env / secret manager
- Monitoring and disk alerts
- A human who gets paged when it dies
If that list feels heavy, buy Cloud.
Cost shape (without fake precision)
Do not compare only subscription stickers.
Cloud TCO: subscription + workflow design time + vendor limits you work around.
Self-hosted TCO: compute + storage + backups + observability + upgrade labor + idle knowledge (“only Jamie knows how it runs”).
A $0 VPS with an abandoned n8n instance is not cheap. It is a future incident.
Revisit cost quarterly against real execution counts. Teams grow into different answers.
Hybrid patterns
Common and sane:
- Cloud for marketing/ops experiments
- Self-hosted for finance-adjacent or internal-only systems
- Export/import workflows with environment-specific credentials
Avoid: two unmanaged environments with the same name and nobody sure which is live. Label aggressively.
Migration notes
Cloud → self-hosted or the reverse:
- Export workflows, map credentials fresh (never copy secrets through chat)
- Rebuild webhook URLs and update providers
- Replay-test idempotency and error workflows in the new place
- Run dual-write or shadow for a short window on critical paths
- Keep a rollback: DNS and provider webhook endpoints ready to flip back
Treat migration as a production change, not a weekend hobby.
How this fits tool choice
Hosting is independent from “why n8n.” If you are still choosing rails, see n8n vs Make vs Zapier. If you already know n8n is the rail, pick hosting from constraints above.
Ops checklist for self-hosted (minimum viable)
If any box is unchecked, stay on Cloud or hire platform help before migrating.
- Postgres (or supported DB) with automated backups and restore tested
- TLS certificates auto-renewing
- Container/host updates scheduled
- n8n version pin + upgrade runbook
- Disk and memory alerts
- SMTP or other outbound for invites/alerts working
- Admin 2FA / SSO if available in your setup
- Secrets via env/secret manager
- Offsite backup of workflow exports
- Named primary + backup owner
“Docker run on a VPS” is a science fair project until this list exists.
Performance and scaling notes
Self-hosted control includes scaling knobs: worker processes, queue mode, DB size, binary data handling. Cloud abstracts some of this.
If you run heavy binary transforms or huge payloads, test early. Webhook bursts need reverse proxy timeouts aligned with n8n and provider retry behavior. Misaligned timeouts create duplicate deliveries — which is why idempotency remains mandatory on both hosting modes.
Compliance conversations
When legal asks “where does data live?”:
- Cloud: answer with vendor region options and subprocessors list
- Self-hosted: answer with your cloud region, encryption, access controls, and backup locations
Also answer what is in the executions: PII retention in logs can matter more than which brand hosts the container. Pair hosting choice with retention policy from the handbook.
Team skills required
| Skill | Cloud | Self-hosted |
|---|---|---|
| Workflow design | Required | Required |
| Production spine | Required | Required |
| Linux/containers | Optional | Required |
| DB backup/restore | Optional | Required |
| Networking / TLS | Optional | Required |
Do not assign self-hosted ownership to a marketer who happens to be brave. Bravery is not a restore strategy.
Decision worksheet
Copy/paste for your next architecture review:
- Data residency requirement? (yes/no/specify)
- Private network dependencies?
- Peak executions/month (current and 3×)
- Platform hours available per month
- Incident response owner
- Budget preference: subscription vs labor
- Timeline to first production workflow
If (1) or (2) is yes → bias self-hosted.
If (4) is near zero → bias Cloud.
If (3) is huge and (4) is solid → model both costs.
If timeline is this week → Cloud, revisit later.
Backup restore drill
If you self-host and have never restored a backup into a scratch environment, you do not have backups — you have files. Schedule a quarterly restore drill:
- Spin ephemeral instance
- Restore DB
- Confirm workflows load
- Confirm credentials re-inject process works
- Tear down
Record time-to-restore. That number belongs in your incident plan.
Upgrades without drama
Pin n8n versions. Read release notes for breaking changes. Upgrade staging first. Run a short regression on critical workflows (webhook verify, idempotency, one happy path). Then production.
Avoid auto-latest tags on production containers. Surprise major versions pair poorly with Monday morning lead flow.
Networking patterns
Common self-hosted layouts:
- Public webhook receiver + private worker
- VPN access to admin UI; only webhook path public
- Egress via fixed NAT IPs for vendor allowlists
Cloud cannot always match fixed egress needs. That single requirement has decided self-hosted for several of our clients.
When Cloud becomes worth revisiting
Teams sometimes outgrow their own ops capacity. Signals to move back to Cloud (or to managed hosting help):
- Repeated missed upgrades
- Single owner burnout
- Restore drills skipped twice
- Security questionnaire answers getting shaky
Pride is not an availability strategy. Choose the mode you can operate.
Spurlock Studios default bias
Default recommendation: n8n Cloud for speed and clean ops, unless residency, network, or scale economics say otherwise. We implement the same production spine on either. Hosting is a constraint fit — not a personality test.
Closing operating notes
Hosting bravado fades the first time nobody can restore last night’s backup.
Field note from production
The pattern above is not theoretical. When it is missing, the failure mode is predictable: a duplicate side effect, a muted channel, a CRM row that cannot be trusted, or a finance fire drill. When it is present, the workflow becomes boring — which is the goal.
If you only have time for one improvement this week, implement the control this post centers on, wire an owner, and test the failure case once in staging. That single loop does more than another connector.
For the full spine across idempotency, DLQ, schema, approvals, and hosting, keep the Production n8n handbook open while you build. When you want a production review instead of another internal debate, use the automation lane or book a call.
Implementation order we recommend
- Write the happy path on one page.
- Mark irreversible steps.
- Add the control from this article before expanding scope.
- Prove one failure case in staging.
- Ship behind the tightest autonomy setting you can tolerate.
- Review metrics in two weeks; only then loosen.
Skipping straight to step 6 is how demos become incidents. Order is part of ROI.
Thirty-day revisit
Revisit hosting thirty days after go-live with three numbers: execution volume, hours spent on platform ops, and incident count. Let those numbers — not aesthetics — decide whether to stay, migrate, or buy help.
FAQ
n8n Cloud vs self-hosted — which is better?
Neither universally. Cloud wins on ops convenience and speed. Self-hosted wins on control, residency, and certain cost/network cases. Pick from constraints and ownership capacity.
Is n8n Cloud worth it for a small team?
Usually yes, if SaaS subprocessors are acceptable. Small teams rarely win by running their own automation platform on nights and weekends.
Is self-hosted more secure?
Not automatically. A patched, monitored Cloud can beat a neglected VM. Self-hosted can be more secure when you need private networking and you operate it well.
Can I start on Cloud and move later?
Yes. Many teams do. Design workflows with portable patterns (explicit credentials, documented webhooks, minimal hard-coded URLs) so migration is boring.
What about execution limits?
Cloud plans have limits and pricing tiers; self-hosted limits are your hardware and database. Model against peak month, not average quiet week.
Who should own self-hosted n8n?
A platform/devops owner with a backup human. “The freelancer who set it up” is not an ownership model.
CTA
Buy convenience until constraints force control — then earn that control with real ops.
If you want a recommendation for your volume and compliance posture, read the handbook, then use automation or book a call.