Self-Hosting n8n vs Activepieces at Scale (2026): Queue Mode, High Availability & the License Line
Most comparisons stop at the first container. This one starts where a single box runs out of headroom — and shows which scaling and security features each platform quietly puts behind a paid license.
TL;DR
If you only need more throughput, both platforms get you there for free: n8n with queue mode (Redis + worker processes) and Activepieces by separating workers from the app server. Neither charges you to add workers.
The split shows up at the next tier. True active-active high availability in n8n (multi-main) requires an Enterprise license, as do external secret stores, custom RBAC roles, SSO, and audit-log streaming. Activepieces keeps its automation engine fully MIT-licensed — including multi-worker scaling — but puts SSO, audit logs, custom project roles, and white-label embedding in a paid edition too.
Pick n8n at scale if you want the deepest connector library and accept that real HA and enterprise security mean a sales call. Pick Activepieces if you want a permissive license you can build on, simpler stateless scaling, and you can live with a thinner native-connector set. Choosing between them in general? Start with our honest n8n vs Activepieces comparison first, then come back here once you know you're scaling.
Who this guide is for
This is not a "which tool should I try" article — we wrote that comparison already, and a separate Docker setup and day-2 operations walkthrough covers the first deploy. This guide is for the moment after that: your single container is pinned at 90% CPU, a long-running workflow is blocking webhooks, and someone in security is asking who can see production credentials.
In other words, it's for B2B teams moving from "it runs" to "it runs reliably for the whole company." We'll compare the two platforms on the three things that actually matter at that stage: how they scale horizontally, what high availability really requires, and where the license line falls on the security and governance features auditors ask about.
Scaling at a glance
| Dimension | n8n | Activepieces |
|---|---|---|
| Core license | Sustainable Use License (fair-code, source-available) | MIT (automation engine) |
| Horizontal throughput | Queue mode: Redis broker + N worker processes Free | Separate workers from app server (3 env vars) Free |
| Required infra for scaling | PostgreSQL + Redis (SQLite not supported in queue mode) | PostgreSQL + Redis |
| Active-active HA | Multi-main (leader election) Enterprise | Stateless workers behind a load balancer — DIY No license gate |
| External secrets (Vault, AWS/Azure/GCP) | Enterprise | Enterprise edition Paid |
| SSO / SAML / LDAP | Enterprise | Enterprise edition Paid |
| Custom RBAC roles | Enterprise | Project permissions Paid |
| Audit-log streaming | Enterprise | Audit logs Paid |
| Embed inside your own SaaS | Prohibited by license | Allowed (MIT); white-label is a paid feature |
The pattern is worth saying out loud: raw scaling is free on both. What costs money is resilience (active-active HA) and governance (secrets, SSO, RBAC, audit). Budget for those, not for workers.
The shared architecture (and where it diverges)
Under the hood, both platforms converge on the same proven shape once you scale: a lightweight front layer that receives triggers, a message queue that holds pending jobs, a pool of stateless workers that execute them, and a database that persists everything.
The divergence is in the details:
- n8n calls this
queue mode. The main instance handles timers, webhooks, and the editor UI; it hands execution IDs to Redis, and worker processes pick them up. Per n8n's docs, queue mode requires Redis and a real database — running it on SQLite is explicitly unsupported. - Activepieces ships stateless app and worker containers. You separate workers from the app server using three environment variables; workers authenticate with a JWT signed by the same
AP_JWT_SECRETas the app and fetch their config from it. Crucially, workers have no direct access to Redis or the database, which shrinks the blast radius if a worker is compromised.
That last point is a genuine architectural difference, not marketing. n8n workers connect directly to Redis and Postgres; Activepieces workers talk only to the app server. If your threat model worries about a malicious piece of code exfiltrating database credentials, Activepieces' isolation is a real advantage.
Scaling n8n: queue mode, workers, and the concurrency dial
A single n8n process in "regular" mode runs everything in one event loop, so one heavy workflow can starve your webhooks. The fix is queue mode, and the good news is it's available in the free Community Edition.
What you turn on
- Set the execution mode to
queueand point n8n at Redis. - Run one or more dedicated worker processes. Each worker is a separate Node.js process that can run several executions in parallel.
- Tune
N8N_CONCURRENCY_PRODUCTION_LIMITper worker — n8n recommends a concurrency of 5 or higher. Throughput then scales with workers × concurrency. - Optionally run separate webhook processes so inbound webhooks never compete with execution for CPU.
As a rough capacity anchor: as of mid-2026, n8n community guidance and host benchmarks suggest a well-tuned instance on 4 vCPU / 8 GB RAM with PostgreSQL can sustain 200+ active workflows and thousands of executions per day. Beyond that, you add workers rather than a bigger box. Always confirm against your own workload — execution weight varies wildly between a 2-node ping and a 40-node data pipeline.
Adding workers gives you throughput, not availability — in single-main queue mode, the one main instance is still a single point of failure. Running multiple main instances (multi-main, with leader election and active-active redundancy) is an Enterprise-licensed feature. If your SLA needs the control plane to survive a node failure, that's a paid line item on n8n.
Want n8n scaling without managing Redis, workers, and multi-main yourself?
n8n's managed Cloud runs queue-mode infrastructure and high availability for you — a sensible escape hatch when ops time costs more than the subscription.
Try n8nScaling Activepieces: stateless workers you just add
Activepieces' scaling story is deliberately boring, which at scale is a compliment. Because the app and worker containers are stateless, horizontal scaling is mostly "run more worker containers behind the app server."
What the separation looks like
- On the app machine, set
AP_CONTAINER_TYPE=APP. - Generate a worker token via the CLI (
npm run workers token), signed with your sharedAP_JWT_SECRET. - Start worker containers pointed at the app server; they pull configuration automatically — no separate Redis/DB credentials handed to each worker.
- Give each worker a persistent volume to cache pieces and flows. The first uncached execution of a piece is slow; the cache fixes that, so don't skip it on ephemeral nodes.
The two practical wins here are simpler credential management (workers never hold database secrets) and true active-active scaling without a license gate — you can sit several identical app+worker stacks behind a load balancer yourself. The trade-off is that you own that HA design; there's no managed leader-election feature doing it for you, and the production-hardening docs are thinner than n8n's.
Because the Activepieces engine is MIT-licensed, you can scale it, modify it, and even embed it inside a product you ship — something n8n's license forbids. White-label embedding as a packaged feature is paid, but the engine itself carries no field-of-use restriction. For teams building automation into their own platform, this is often the whole decision.
Evaluating Activepieces for a self-hosted, embed-friendly stack?
Spin up the MIT-licensed Community Edition, separate your workers, and load-test before you commit — it costs nothing to validate the architecture.
Try ActivepiecesHigh availability: the honest gap
This is where the two diverge most, and where teams get surprised after go-live.
n8n gives you a supported, documented HA design — multi-main with automatic leader handoff if the leader crashes or its event loop stalls — but it lives behind the Enterprise license. You get a vetted answer; you pay for it.
Activepieces gives you the building blocks for HA (stateless containers) under MIT, but no managed control-plane redundancy. You get freedom; you own the design and its edge cases.
Neither is "better" in the abstract. If you have a platform team that can stand up redundant stateless stacks and a load balancer, Activepieces' approach is cheaper and unrestricted. If you'd rather buy a supported HA path and put your engineers on product work, n8n Enterprise is the faster route to a signed-off architecture.
The license line at scale (the part that bites)
At one workflow, licenses are an afterthought. At company scale, they decide what you can legally do. Here's the distinction that matters most:
n8n: fair-code, free for internal use
n8n's Sustainable Use License lets you use, modify, and self-host for free as long as the automation serves your own internal business purposes. Profit is fine — automate a million-dollar process all you like. What's prohibited is turning n8n itself into the product: embedding it in a SaaS you sell, reselling automation as a service to clients, or letting external users trigger workflows as a paid offering. (Consulting and building workflows for clients is explicitly allowed.) Cross that line and you need a commercial agreement.
Activepieces: MIT engine, paid enterprise add-ons
The Activepieces automation engine is MIT — about as permissive as it gets. You can embed it, ship it, and build on it. The paid edition (in the packages/ee tree) covers SSO, audit logs, custom project permissions/roles, and white-label embedding. So the engine is free to commercialize; the enterprise governance features are not.
Building automation into a product you sell? Activepieces' MIT engine is the only one of the two you can legally use. Running automation for your own company? Both are free — now the question is connector depth (n8n) vs license simplicity and worker isolation (Activepieces).
Security & governance at scale
Once more than a handful of people share an instance, auditors care about four things. On both platforms, the enterprise-grade versions of these are paid — so plan budget regardless of which you pick:
- External secrets. n8n Enterprise integrates HashiCorp Vault, AWS Secrets Manager, Azure Key Vault, GCP Secret Manager, 1Password, and Infisical. On the free tier, credentials live encrypted in n8n's own database — workable, but not what a SOC 2 reviewer hopes to see for a fleet.
- SSO & enforced 2FA. SAML/OIDC/LDAP and instance-wide 2FA are Enterprise on n8n; SSO is in Activepieces' paid edition. Below that, you manage users in-app.
- RBAC. Custom roles and per-project permissions are paid on both. Free tiers give coarse access control only.
- Audit logging / log streaming. Pushing events to your SIEM is Enterprise on n8n and a paid feature on Activepieces. Without it, your audit trail is whatever the UI shows.
The takeaway for a scaling B2B team: the free versions of both are perfectly fine for an engineering-team automation backbone. The moment compliance, finance, or external-facing data enters the picture, you're buying an enterprise tier on either one — so compare those quotes, not just the open-source feature lists.
Resource & cost reality at team scale
Self-hosting "free" software at scale still has a real bill. It breaks into three buckets:
- Compute. A production baseline of ~4 vCPU / 8 GB for the main/app tier, plus worker nodes sized to your execution volume. Both platforms let you scale workers horizontally, so this grows roughly linearly with load.
- Managed dependencies. A real PostgreSQL and a Redis instance. Self-managing these is possible but, at HA scale, a managed database/cache is usually cheaper than the on-call burden.
- License (optional). Zero if internal-use and you can live without enterprise governance — or an annual Enterprise contract (custom-quoted, sales-assisted on both) once you need HA/SSO/secrets/audit.
One efficiency note worth flagging: there is no per-execution metering on either self-hosted engine. Unlike usage-based cloud automation, doubling your run volume costs you compute, not a bigger SaaS invoice — which is exactly why high-volume teams self-host in the first place. If your volume is modest and predictable, though, a managed cloud tier can still be cheaper than paying engineers to run Redis at 2 a.m.
Not sure self-hosting at scale is worth the ops load?
For many teams the honest answer is managed hosting until volume justifies a platform team. Compare a managed automation tier against your fully-loaded infra + on-call cost before committing.
Compare hosting optionsn8n at scale: pros & cons
Strengths
- Deepest native connector library and a powerful code/expression layer for complex flows
- Queue mode is free, well-documented, and battle-tested
- Supported, vetted HA path (multi-main) — you don't design it yourself
- Mature enterprise security: Vault/cloud secret stores, SSO, RBAC, log streaming
Trade-offs
- Active-active HA, secrets, SSO, RBAC, and audit are all Enterprise — costs add up fast
- Fair-code license blocks embedding in a product you sell or reselling as a service
- Workers hold direct DB/Redis credentials (larger blast radius)
- Enterprise pricing is custom-quoted and sales-assisted only
Activepieces at scale: pros & cons
Strengths
- MIT engine — embed, modify, and commercialize without a field-of-use restriction
- Stateless workers with no direct DB/Redis access (smaller blast radius)
- Active-active scaling needs no license — just a load balancer and more containers
- Simple worker separation (three env vars) and ~400 MCP servers for AI-agent workflows
Trade-offs
- Thinner native connector set than n8n for niche enterprise systems
- No managed leader-election HA — you own the redundancy design and its edge cases
- SSO, audit logs, custom roles, and white-label embedding are paid
- Production-hardening documentation is less extensive than n8n's
Who should choose which at scale
- You're embedding automation into a product you sell. Activepieces — the MIT engine is the only legal option of the two.
- You need a signed-off, supported HA architecture fast. n8n Enterprise (multi-main) buys you a vetted answer and a support SLA.
- You have a capable platform team and want maximum freedom at minimum license cost. Activepieces — DIY active-active on stateless containers, no per-feature gate on the engine.
- Your workflows touch dozens of niche enterprise systems. n8n — connector depth wins, and you'll likely need its enterprise secrets/RBAC anyway.
- Security wants minimal credential exposure on execution nodes. Activepieces — workers never hold DB/Redis secrets.
- You'd rather not run Redis and workers at all. Either platform's managed cloud — buy back the ops time until volume justifies self-hosting.
Still deciding on the tools themselves rather than the scaling model? Our full n8n vs Activepieces comparison weighs connectors, UX, and pricing, and the Docker self-hosting guide walks the first deploy step by step. If your stack also leans on Notion or Slack, see our Notion API integrations guide and Slack–HubSpot integration walkthrough for connector patterns worth automating.
Frequently asked questions
Does n8n queue mode require an Enterprise license?
No. Queue mode — a single main instance plus multiple worker processes coordinated through Redis — is part of the free Community Edition. What requires an Enterprise license is multi-main: running several main instances for active-active high availability with leader election.
Can Activepieces scale to multiple workers for free?
Yes. Separating workers from the app server is a Community-Edition (MIT) capability configured with a few environment variables. Workers are stateless and pull their config from the app server, so you scale by adding worker containers. Enterprise features like SSO, audit logs, and custom roles are the paid part — not the worker scaling itself.
Which is safer for production credentials?
Architecturally, Activepieces isolates more: its workers have no direct connection to Redis or the database, so a compromised piece can't read those credentials directly. n8n workers connect to both. For enterprise secret management (Vault, AWS/Azure/GCP, etc.), n8n's Enterprise integration is more mature — Activepieces puts comparable governance in its paid edition.
Can I embed either tool inside a SaaS product I sell?
Only Activepieces. Its engine is MIT-licensed, so you may embed and commercialize it (packaged white-label embedding is a paid feature, but the engine carries no field-of-use limit). n8n's Sustainable Use License specifically prohibits embedding it in a product you sell or reselling automation as a service.
How much hardware do I need to self-host at scale?
A common production baseline is around 4 vCPU / 8 GB RAM for the main/app tier with PostgreSQL, which can handle a few hundred active workflows and thousands of daily executions; beyond that you add workers. You'll also need Redis for queue/worker coordination. Always load-test with your own workflows, since execution weight varies enormously.
Do I still avoid per-execution costs when self-hosting?
Yes. Neither self-hosted engine meters per execution, so scaling run volume costs you compute, not a larger software bill. That's the core economic reason high-volume teams self-host. For low, predictable volume, a managed cloud tier can still be cheaper once you price in on-call time.
Methodology
Based on our research, this comparison was built by reviewing the official n8n and Activepieces documentation, licenses, and community announcements in July 2026, focusing specifically on horizontal scaling, high-availability architecture, and the boundary between free/open-source and paid enterprise features. We did not load-test the platforms ourselves; capacity figures are drawn from vendor guidance and published host benchmarks and should be validated against your own workloads. Licensing summaries reflect the Sustainable Use License (n8n) and MIT plus commercial enterprise edition (Activepieces) as documented at the time of writing; verify current terms before making procurement decisions.