October DealsAmazon USOctober deal check: compare before you payAmazon US: current deals, useful picks and tech finds.Check DealsSlow PC?RecommendedPC slow today? Run a repair scan before it gets worseResolve common Windows issues and optimize system performance.Scan NowOctober DealsAmazon USDeal season is back - check today's better picksAmazon US: current deals, useful picks and tech finds.See Picks×
Skip to content
World desk9 min

n8n Benchmark: How Much Performance Can a Self-Hosted VPS Deliver?

n8n reports up to 220 executions per second on one instance, but real VPS capacity depends on workflow complexity, payloads, concurrency and storage. Compare the published webhook and binary benchmarks, then size and scale your deployment using your own workload tests.
Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

There is no single “n8n VPS limit.” n8n reports that one instance can handle up to 220 workflow executions per second, but that is a capability statement rather than a promise for every automation. In n8n’s 2025 queue-mode tests, a C5.large handled 72 webhook requests per second with latency below three seconds and no failures at 200 virtual users; a C5.4xlarge handled 162 requests per second with latency below 1.2 seconds and no failures. File-heavy workflows performed very differently: the binary test on the C5.4xlarge reached 5.2 requests per second with 0% failures.

Those figures show why VPS sizing must start with your workflow, payload size, concurrency, and latency target—not with a generic “executions per second” claim. A small, lightweight webhook can be hundreds of times easier to run than a workflow that downloads, transforms, and stores large files.

As an Amazon Associate I earn from qualifying purchases.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

What the published n8n numbers actually measure

n8n’s documentation says a single instance can handle up to 220 workflow executions per second, with further scaling available by adding instances. The wording matters: it describes an upper capability observed by n8n, not a guaranteed rate for a particular VPS, database, workflow, or payload.

The more detailed 2025 benchmark used AWS C5 instances and compared queue-mode deployments. The tested workload was a single webhook, so it represents a relatively light request path. It does not predict the rate of a workflow containing large binary objects, expensive code, slow third-party APIs, or many database operations.

Test Instance and mode Result Latency/failures What it demonstrates
Single-webhook load test AWS C5.large, queue mode 72 requests per second Below 3 seconds; zero failures at 200 virtual users A smaller queue deployment can absorb substantial lightweight webhook traffic.
Single-webhook load test AWS C5.4xlarge, queue mode 162 requests per second Below 1.2 seconds; zero failures More compute capacity improved throughput and latency for the same type of request.
Binary workload test AWS C5.4xlarge, queue mode 5.2 requests per second 0% failures across the binary test Large files can make disk, memory, and CPU the limiting resources even on a much larger instance.

“Requests per second” in these tests is tied to the benchmark’s webhook scenario. It should not be converted directly into a universal number of completed business workflows per second. A workflow may make several internal calls, wait on external services, or fan out into multiple executions.

How self-hosted n8n processes executions

Regular single-instance mode

In regular self-hosted mode, one n8n process receives triggers and runs executions. By default, production executions have no concurrency limit. That can appear efficient at low traffic, but an abrupt burst can start too many simultaneous runs, compete for CPU and memory, and leave the event loop unresponsive.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

You can set N8N_CONCURRENCY_PRODUCTION_LIMIT to cap the number of production executions running at once. When the limit is reached, excess executions wait rather than continually competing for resources. This does not create more capacity; it converts overload into queueing, which is usually easier to observe and recover from than crashes or timeouts.

Queue mode

Queue mode separates intake from execution. A main n8n instance receives incoming workflow information, Redis stores pending jobs, and worker instances pick up and execute those jobs. Workers can process multiple executions simultaneously, and n8n also provides optional health and metrics endpoints for operating the deployment.

This architecture lets you add workers without placing all incoming webhook handling and workflow execution on one process. It also gives you a backlog to monitor: if arrivals exceed worker capacity, jobs wait in Redis instead of forcing the web process to execute everything immediately.

Queue mode is therefore a scaling architecture, not merely a faster setting. It introduces Redis, worker processes, deployment coordination, and additional monitoring. A single small VPS may not have enough CPU, RAM, or disk throughput to host the main process, Redis, database, and several workers comfortably.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Why workflow type changes VPS capacity

Lightweight webhook workflows

A webhook that validates a small JSON payload, performs a short transformation, and returns quickly is close to the kind of workload represented by the published throughput tests. For this class, CPU and event-loop responsiveness are often more important than raw disk capacity. External API latency can still dominate end-to-end response time even when n8n itself has spare CPU.

Large JSON and many-node workflows

Memory demand rises as payloads become larger, as a workflow carries data through more nodes, and as multiple executions overlap. Expressions and transformations can create additional copies of data. Manual runs can also retain execution data that would not exist in a minimal production path.

Code or Function nodes

Code-heavy nodes can consume considerably more CPU and memory than simple trigger-and-forward automations. A workflow that performs loops, parsing, encryption, image manipulation, or custom logic should be benchmarked separately from your ordinary webhook path.

Binary and file-heavy workflows

Binary data creates a separate capacity problem. Downloading, buffering, converting, and writing large files stresses CPU, RAM, and disk throughput at the same time. n8n’s binary test reached only 5.2 requests per second on a C5.4xlarge queue deployment, despite the same class of infrastructure handling 162 requests per second in the lightweight webhook test. Queue mode improved resilience, but it did not make a small machine suitable for unlimited file traffic.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

What to provision on a self-hosted VPS

There is no universal RAM minimum in the published figures. Choose resources from observed peaks and leave headroom for the operating system, database, Redis, logs, and deployment overhead.

  • CPU: match sustained execution work. Code nodes, transformations, compression, and file conversion benefit from additional cores. Watch utilization during bursts, not only the daily average.
  • RAM: size for the largest payload multiplied by simultaneous executions, plus n8n and its supporting services. Large JSON, binary data, many nodes, Code/Function nodes, and manual execution copies all increase demand.
  • Disk throughput and space: file workflows can become storage-bound before CPU is exhausted. Use fast storage, monitor write latency, and reserve room for temporary files, execution data, and logs.
  • Database capacity: execution history and workflow metadata add database work. A busy queue deployment should not allow database connections or I/O to become the hidden bottleneck.
  • Network: webhook ingress and calls to external APIs require predictable bandwidth and low latency. A workflow waiting on a remote service cannot complete faster than that service responds.
  • Operational headroom: avoid running permanently at the edge of memory or CPU. Spikes, retries, deployments, and backups need capacity that a steady-state average does not show.

How to choose between a larger VPS and more workers

Observed problem Likely constraint First change to test
One process becomes unresponsive during bursts Too many simultaneous executions or event-loop contention Set N8N_CONCURRENCY_PRODUCTION_LIMIT; then measure backlog and latency.
Webhook intake slows while executions are running Incoming work and execution compete in one process Move to queue mode so a main instance handles intake and workers execute jobs.
CPU remains saturated with short, compute-heavy runs Insufficient compute per worker Use a larger VPS or add workers after confirming the database and Redis can keep up.
Memory rises until the process is killed Large payloads, binary data, many concurrent runs, or retained execution copies Reduce concurrency, redesign the heaviest workflow, or provision more RAM.
File jobs have high latency while CPU is moderate Disk throughput or temporary-file I/O Use faster storage, reduce simultaneous binary jobs, or separate file processing from ordinary automations.
Workers are idle but jobs still wait Database, Redis, external API, or intake bottleneck Inspect each dependency before adding more workers.

Add workers when executions are independent, the queue has a sustained backlog, and the supporting database, Redis, network, and storage layers have spare capacity. Upgrade the VPS when each worker is already CPU- or memory-bound, or when the entire stack is competing for the same limited resources. Adding workers to a storage-bound binary workload can increase contention instead of improving throughput.

A practical sizing process

  1. Classify your workflows. Separate lightweight webhooks, scheduled jobs, API-heavy automations, code-intensive runs, and binary/file pipelines. Do not combine them into one average.
  2. Measure arrival patterns. Record normal rate, peak rate, burst duration, and the number of executions that can overlap. A five-minute burst requires different protection than the same daily volume spread over 24 hours.
  3. Define service targets. Decide the maximum acceptable webhook latency, how long a queued job may wait, and whether occasional retries are acceptable. A system optimized for throughput may not meet a strict interactive latency target.
  4. Start with bounded concurrency. In a single instance, set N8N_CONCURRENCY_PRODUCTION_LIMIT to a value your memory and CPU can sustain. Increase it gradually while watching latency, failures, and resident memory.
  5. Load-test a representative workflow. Use n8n’s benchmarking framework with realistic payloads, node counts, external-service behavior, and concurrency. Test both steady traffic and bursts.
  6. Repeat for the worst case. Benchmark the largest JSON payload, the largest binary object, and the longest-running workflow separately. The slowest or most resource-intensive class often determines the VPS size.
  7. Check the whole dependency chain. Monitor n8n, Redis, the database, disk I/O, network latency, and external APIs. A green CPU graph does not prove that the system has spare database connections or storage bandwidth.
  8. Choose the scaling action. If one execution consumes all available resources, use a larger machine or redesign it. If independent jobs form a queue while each worker has headroom, add workers in queue mode.
  9. Retest after every architectural change. Queue mode, a new worker count, a different database, or a concurrency limit changes latency and failure behavior. Keep the same workload and acceptance criteria so results remain comparable.
Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Support on Ko-Fi

Interpreting queue-mode performance

Queue mode can improve reliability under bursts because intake is decoupled from execution. That does not guarantee lower latency for every request: a job may spend time waiting in Redis before a worker starts it, and additional network hops and serialization add overhead. The benefit appears when the alternative is an overloaded single process that becomes slow or unavailable.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

The published C5 results illustrate the hardware effect within the same queue architecture. The C5.large test delivered 72 requests per second with sub-three-second latency, while the C5.4xlarge delivered 162 requests per second with latency below 1.2 seconds. Those results support using a larger instance when the workload is CPU-bound, but they do not establish a linear scaling rule for other workflows.

Common failure modes and fixes

Event-loop thrashing and timeouts

When unrestricted production concurrency allows too many runs to start, response times can climb sharply and the n8n process may stop responding. Apply N8N_CONCURRENCY_PRODUCTION_LIMIT, then investigate which workflows consume the most CPU or memory. A lower limit may increase queue time while restoring predictable service.

Out-of-memory crashes

Look for large JSON or binary payloads, overlapping executions, Code/Function nodes, and manual execution data. Reduce overlap, split oversized workflows, avoid unnecessary data copies, or add RAM. Increasing concurrency on a memory-starved VPS usually worsens the problem.

Binary jobs overwhelming storage

Monitor disk utilization and write latency, not just CPU. Limit simultaneous file jobs, use faster storage, clean up temporary and obsolete execution data according to your retention policy, and keep ordinary webhook workers from competing with file processing where possible.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Queue backlog that never clears

A growing Redis backlog means arrivals exceed completed work, but the cause may be workers, the database, Redis, storage, or a slow external API. Confirm the bottleneck before adding workers; otherwise you may multiply contention without increasing completed executions.

Misleading benchmark results

A test that uses tiny payloads and a fast local response can overstate production capacity. Include authentication, retries, real API latency, representative data sizes, and the same execution-history settings used in production. Record throughput, latency distribution, failure rate, CPU, memory, disk, and queue depth together.

What the benchmark means for your VPS decision

Use the published numbers as reference points, not as a sizing calculator. A lightweight webhook deployment may approach the documented high-throughput range on suitable hardware, while binary processing can be limited to single-digit requests per second even on a much larger instance. The correct VPS is the smallest machine that passes your own workload test with your latency and reliability targets, while retaining headroom for bursts and maintenance.

For a modest, predictable workload, start with one instance, bound production concurrency, and measure. Move to queue mode when intake and execution interfere or when independent jobs create a sustained backlog. Add workers when the queue is the bottleneck and each worker still has resource headroom. Choose a larger VPS or redesign the workflow when CPU, memory, or disk throughput is already saturated. This evidence-based sequence avoids paying for unused workers and avoids treating a headline executions-per-second figure as a guarantee.

Free tools Windows power users keep installed

One-click scans. No signup required.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.

Leave a Reply

Your email address will not be published. Required fields are marked *

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

More from the Wire

  1. World desk4 min
    How to Spot an AI Voice Scam Before Sending MoneyDon’t rely on how a caller sounds. Pause, call back through a known number, and verify the emergency with another trusted person before sending money.
  2. Mountain View desk4 min
    Google’s SynthID Detector: How to Check AI-Generated Images, Video and AudioGoogle’s SynthID Detector looks for an embedded watermark in supported images, video and audio. Here is what its results do—and do not—show.
  3. Redmond desk20 min
    How to create a link to File or Folder in Windows 11Windows 11 gives you several ways to point to a file or folder without moving or duplicating it. You can create a desktop shortcut,…
Recommended PC Tool
Recommended PC Tool
Windows Errors? Fix Them Before They SpreadFree repair scan
Outdated Drivers Are Slowing You DownFree scan - exact matches

Two free Windows tools

One Free Minute Could Fix That PC

Before you go - each of these free tools takes about a minute and tackles what quietly slows a Windows PC down.

Special offer. View Outbyte info, uninstall instructions, EULA, and Privacy Policy.