Back to blog

n8n Cloud vs Self-Hosted: Cost, Control and Which One to Choose

IM Host EditorialOctober 10, 20268 min read
n8n Cloud vs Self-Hosted: Cost, Control and Which One to Choose

n8n Cloud is the simpler choice when your volume is small and nobody on the team wants to run a server. Self-hosted n8n wins when executions grow, when data must stay in a country you choose, or when you need community nodes and custom code. The cost gap comes from the pricing model: Cloud plans are priced by executions and plan limits, while a self-hosted server costs the same each month whether it runs 1,000 executions or 500,000. What you pay instead is responsibility for updates, backups and uptime. Here is how to weigh each part.

How the two pricing models work

  • n8n Cloud: monthly plans priced mainly by the number of workflow executions per month, plus limits such as concurrent executions and which features are included. n8n counts one full workflow run as one execution, however many nodes it has, which is already cheaper than per-step pricing used by some automation tools. Prices change, so check n8n's own pricing page when you compare.

  • Self-hosted: n8n's community edition can be self-hosted for your internal use without a license fee. You pay for the server. The execution limit is whatever your hardware can handle.

Do the execution math before anything else

Most people underestimate their volume because they think in workflows, not runs:

  • One workflow that polls a sheet or inbox every 5 minutes: 288 runs a day, about 8,640 a month.

  • The same workflow polling every minute: about 43,200 a month.

  • A webhook that receives 300 website leads a day: about 9,000 a month.

Ten workflows like these put you in the tens of thousands of executions per month. On an execution-priced plan that number drives the bill; on your own server it only drives CPU and database size. Either way, switch polling triggers to webhooks where the source app supports them. You get faster reactions and far fewer runs.

Control and data location

Every execution stores data by default: the payload that came in and what each node produced. For a lead form or an order workflow, that means customer names, phone numbers, addresses and invoice totals sitting in the n8n database.

  • On Cloud, n8n stores your workflows, credentials and execution history on its infrastructure, in the region it operates. Check n8n's documentation for where that is and how long data is kept on your plan.

  • Self-hosted, you choose the country, you hold the database and the encryption key, and you decide how long execution data lives.

For businesses serving Egyptian customers, Egypt's Personal Data Protection Law (Law 151/2020) makes data location a real question. Hosting in Egypt keeps data inside the country, which is one element of compliance, not compliance itself. Our article on Law 151 and where your hosting data lives explains what location does and does not cover. This is general information, not legal advice.

IM HOST n8n servers are available in Germany, Poland, the UK, the USA and Egypt, subject to stock. The data centers page lists each facility, and we confirm your location before activation.

Maintenance: what self-hosting really asks of you

On Cloud, n8n handles the platform and you handle workflows and credentials. Self-hosted, the following is yours:

  • Updates. n8n ships new versions often. Read the release notes for breaking changes before upgrading. With Docker Compose the upgrade itself is short:

docker compose pull && docker compose up -d
  • Backups of the database and the key. Dump PostgreSQL daily and keep a copy of N8N_ENCRYPTION_KEY somewhere safe off the server. Without that key, a restored database cannot decrypt your saved credentials. Adjust the service, user and database names to match your compose file:

docker compose exec -T postgres pg_dump -U n8n -Fc n8n > n8n-$(date +%F).dump
  • Execution data pruning. Keep the database from growing without limit by deleting old execution data, for example after 7 days:

EXECUTIONS_DATA_PRUNE=true
EXECUTIONS_DATA_MAX_AGE=168
  • The server itself: OS security updates, HTTPS renewal, disk space and an uptime monitor on your webhook URL.

As a rule of thumb, a small, stable instance takes one to three hours a month once it is set up, and more in the month an upgrade breaks a node. For a full production setup, including reverse proxy and hardening, see our guide to self-hosting n8n on a VPS in production.

Community nodes and custom code

  • Self-hosted: you can install community nodes from npm through Settings > Community nodes, allow external npm packages inside the Code node with NODE_FUNCTION_ALLOW_EXTERNAL, read and write local files, and, if you enable it, run command-line tools on the server.

  • Cloud: you are limited to the built-in nodes plus the community nodes n8n has verified, and there is no shell access.

Treat community nodes as third-party code that runs next to your credentials. Install maintained packages only, and pin versions on production.

Scaling: what queue mode changes

By default, one n8n process serves the editor, receives webhooks and runs executions. For most small businesses that is enough. Queue mode splits the work: the main instance places jobs in Redis, and one or more worker processes pick them up and run them. All of them share the same PostgreSQL database and the same encryption key:

EXECUTIONS_MODE=queue
QUEUE_BULL_REDIS_HOST=redis
N8N_ENCRYPTION_KEY=the-same-key-on-main-and-workers

Workers are started with n8n worker. Signs you need this: executions queue up behind one long workflow, the editor becomes slow during heavy runs, or webhook bursts time out. Try the cheaper fixes first: split huge workflows, process items in batches with Loop Over Items, and avoid loading large files fully into memory. On Cloud, the equivalent ceiling is your plan's concurrency limit.

Licensing: read it before you resell

n8n is "fair-code" under its Sustainable Use License. Self-hosting for your own internal business use is allowed. Reselling n8n as a service, for example running it for clients and charging them for access to n8n itself, has restrictions. Read n8n's license for your case before you build a business model on it. Also note that some features, such as single sign-on and advanced environments, belong to n8n's paid editions on both Cloud and self-hosted, so check n8n's feature comparison for what your workflows need.

Decision checklist by workload

Choose n8n Cloud if

  • You run a few thousand executions a month and the number is predictable.

  • Nobody on the team wants to own a server, updates and backups.

  • Verified community nodes cover your integrations and n8n's data location is acceptable for your customers.

Choose self-hosted if

  • Polling or high-volume webhooks put you in the tens of thousands of executions per month.

  • You need data in a specific country, such as Egypt or the EU.

  • You need unverified community nodes, npm packages in Code nodes or local file access.

  • You want a fixed monthly cost that does not grow with each new automation.

Rough server sizing for self-hosted

  • Small: a handful of workflows with small JSON payloads: 1 to 2 vCPU and 2 GB RAM.

  • Medium: dozens of workflows, PDFs or images, AI calls with large prompts: 2 to 4 vCPU and 4 to 8 GB RAM.

  • Heavy: bursty webhooks, long-running workflows, many parallel runs: queue mode with workers and 8 GB or more.

The middle path: self-hosted without the setup

There is a third option between doing everything yourself and paying per execution. IM HOST n8n hosting gives you your own NVMe KVM server with the latest n8n pre-installed together with PostgreSQL and an HTTPS address. The owner account is created for you and the login is sent by email. Workflows and executions are unlimited, with no per-execution pricing from IM HOST, plus free SSL with your custom domain, free daily backups and full root access. Pro plans and above include queue mode with Redis workers. There are 5 plans from $7.99/mo, from Starter (1 vCPU, 2 GB) up to Enterprise (8 vCPU, 32 GB).

What stays with you: your workflows and credentials, a safe copy of your encryption key, the timing of n8n upgrades (you have root, so you decide), and following n8n's license. If you are still deciding what to automate, our n8n workflow examples for small businesses show eight practical builds.

Frequently asked questions

Is self-hosted n8n free?

The community edition can be self-hosted for your own internal use without a license fee. You still pay for the server and your time, and some features require a paid n8n license.

Can I move from n8n Cloud to self-hosted later?

Yes. Download your workflows as JSON and import them into the new instance. Plan to re-create credentials, because each instance encrypts them with its own key.

How much RAM does self-hosted n8n need?

2 GB is enough for a small instance with light payloads. Large files, big JSON arrays and many parallel runs are what push you to 4 to 8 GB or more.

Does self-hosted n8n limit executions?

n8n does not cap executions on a self-hosted community instance. The practical limit is CPU, RAM and database size, which is why pruning old execution data matters.

If you want your own n8n server without building it from scratch, look at the n8n hosting plans. Our engineers are available 24/7 if you need help choosing a plan size or a location.

More from our blog

Discover more practical guides and product insights from the IM Host team.

View all articles