Disclosure: some links on this site may be affiliate links. If you buy through one, we may earn a commission at no extra cost to you. It never changes what we write or how we rank things. Details.
n8n executions explained: what counts toward your quota, what doesn't, and what happens at the limit (checked November 2026)
n8n sells its plans by executions. An execution is one run of a whole workflow, however many steps it has, which makes n8n easier to estimate than tools that count every step. But runs don't all count the same way: a Schedule Trigger counts every time it fires, a polling trigger only when it finds something, and test runs, sub-workflows and error workflows not at all. This page collects n8n's counting rules, the plan quotas and the limits in one place, with worked examples. To price the same workflow on n8n, Make and Zapier side by side, use our automation cost calculator.
The short answer
- One execution is one run of the whole workflow. n8n's pricing FAQ: "It doesn't matter how many steps are in the workflow or how much data it processes. It's still a single execution."
- Only production executions count: runs started automatically by triggers, schedules or polling. Running a workflow from the editor while you build or test it does not count.
- A Schedule Trigger counts every time it fires, whatever the run does. A schedule every 15 minutes is 2,880 executions in a 30-day month, by our arithmetic: more than the Starter plan's 2,500.
- A polling trigger counts only when it finds new data. Polls that come back empty are free.
- A webhook counts every request that starts the workflow, even one with an empty body.
- Sub-workflows and error workflows don't count. Only the parent execution does.
- Plans: Starter 2,500 executions a month, Pro 10,000 or 50,000, Business (self-hosted only) from 40,000. The self-hosted Community Edition has no execution quota on the pricing page.
What counts as one execution
The docs define an execution as "a single run of a workflow", and the pricing FAQ adds that the number of steps and the amount of data don't change that. A workflow with a trigger and five action steps that runs 1,000 times a month is 1,000 executions. A step that loops over 50 rows is still part of the same execution.
That is the main difference from the other two tools we compare. The same 1,000 runs with five actions are 1,000 n8n executions, 6,000 Make credits with an instant trigger (Make counts the trigger and each action) and 5,000 Zapier tasks (Zapier counts each action step). See n8n vs Make vs Zapier pricing for the plans side by side.
Which runs count, trigger by trigger
The docs say paid plans, "whether cloud or self-hosted, have an execution limit quota. Only production executions count towards this quota." That holds whatever the instance is for: production executions on a development instance count too.
| How the run starts | Counts toward the quota? (n8n docs) |
|---|---|
| Schedule Trigger | Yes, every time it fires, regardless of outcome |
| Polling trigger (for example Google Drive Trigger) | Only when the poll finds new data |
| Webhook Trigger | Yes, every inbound request that starts the workflow, including an empty body |
| Webhook request that fails before the workflow starts | No |
| Manual run from the editor (Execute workflow or Execute step) | No |
| Sub-workflow called with the Execute Sub-workflow node | No, only the parent execution counts |
| Error workflow that runs after another execution fails | No |
What that means in practice:
- A schedule that checks for work costs the same whether there is work or not. A workflow that wakes up every 15 minutes, searches a sheet and usually finds nothing is still 2,880 executions a month.
- An app's own polling trigger is cheaper than a schedule plus a search. The poll may run just as often, but only the polls that find something count.
- Testing is free, but published workflows are not. The docs suggest unpublishing a workflow while you test it with manual runs: a published workflow keeps running on its trigger, and those runs count.
Schedules: executions per month
A Schedule Trigger counts on every fire, so its executions are simple arithmetic. By our arithmetic, for one workflow in a 30-day month, with the smallest hosted plan size that holds it:
| Schedule Trigger fires | Executions in a 30-day month | Smallest hosted plan size | Price per month, billed annually |
|---|---|---|---|
| Once a day | 30 | Starter, 2,500 | 20€ |
| Every hour | 720 | Starter, 2,500 | 20€ |
| Every 30 minutes | 1,440 | Starter, 2,500 | 20€ |
| Every 15 minutes | 2,880 | Pro, 10,000 | 50€ |
| Every 5 minutes | 8,640 | Pro, 10,000 | 50€ |
| Every minute | 43,200 | Pro, 50,000 | 120.83€ (1,450€ a year) |
n8n's own figures agree: its pricing FAQ says a daily schedule is 30 or 31 executions a month and one every 5 minutes "about 8,600–8,900". A 31-day month adds a day (2,976 at 15 minutes). Scheduled workflows add up, too: two workflows every 30 minutes are 2,880 together, which no longer fits Starter.
Worked example: one job, three ways to start it
Take the workflow from our n8n vs Make vs Zapier comparison: one trigger and five action steps, handling 1,000 new items a month. Our arithmetic, from the rules above:
- Webhook (the app calls n8n once per new item): 1,000 executions. That fits Starter's 2,500: 20€ a month billed annually.
- The app's polling trigger, every 15 minutes: 2,880 polls, but only the polls that find new items count. With the items arriving one at a time, that is at most 1,000 executions, and fewer when one poll picks up several items. Still Starter.
- A Schedule Trigger every 15 minutes, then a search for new items: every fire counts, so 2,880 executions whether the search finds anything or not. That is more than Starter's 2,500, so the smallest hosted plan is Pro at 10,000: 50€ a month billed annually.
On n8n, the first two cost the same. On Make, where a polling trigger uses a credit on every check, they come to 6,000 and 7,880 credits (Make credits explained). Zapier never counts checks for new data, so both are 5,000 tasks there.
How many executions each plan includes
From n8n's pricing page:
- Starter (hosted by n8n): 2,500 executions a month, 20€ a month billed annually or 24€ billed monthly.
- Pro (hosted by n8n): 10,000 executions at 50€ a month billed annually (60€ monthly), or 50,000 at 1,450€ a year (145€ monthly).
- Business (self-hosted only): from 40,000 executions at 667€ a month billed annually (8,000€ a year, or 800€ monthly). The pricing FAQ says Business is "not yet" available on n8n Cloud.
- Enterprise (hosted or self-hosted): custom executions, priced by sales.
- Community Edition (self-hosted, free): no execution quota on the pricing page. You pay for the server and do the upkeep; see how much self-hosting n8n costs.
- Free trial of n8n Cloud: 14 days of Pro features with 1,000 executions, 5 concurrent executions and a 180-second execution timeout. If you don't upgrade, the trial expires and n8n deletes the instance; the docs give you 90 days to download your workflows.
The pricing page's comparison table also sets these limits for the hosted plans:
| Executions and limits | Starter | Pro | Enterprise |
|---|---|---|---|
| Concurrent executions | 5 | 20 / 50 | 200+ |
| Max execution duration | 5 min | 40 min | 40 min |
| Max saved executions | 2.5k | 25k | 50k |
| Saved-execution storage | 2.5 GB | 25 GB | 50 GB |
| Max execution log retention | 7 days | 30 days | Unlimited |
| Overage fees | Capped | Capped | Custom |
Pro's plan card says "Up to 50 concurrent executions"; we read the table's 20 / 50 as 20 on the 10,000 size and 50 on the 50,000 size (the page doesn't spell this out). The saved-execution limits are about history, not runs: n8n keeps your most recent executions until the first limit is reached and then removes the oldest. In the FAQ's words, "Reaching a limit does not stop your workflows from running."
What happens when you reach the quota
- Business and Enterprise: the pricing FAQ says that if you exceed your quota, your workflows "will continue running without interruption, but overage charges may apply if you do not upgrade to the next usage tier." The sales team contacts you when you get close, and the n8n team reaches out to annual Business subscribers near 80% of the annual quota.
- Starter and Pro: the comparison table lists overage fees as "Capped". The pages we read don't say what the cap is or what happens to your workflows on Starter and Pro when the month's executions run out, so we don't guess. Keep an eye on your usage, and move to the next size before you get there: Pro has a 50,000 size.
- Where to see your usage: the Insights dashboard shows production execution counts, and the Overview page of the n8n Cloud console shows your plan and execution usage. Business plan users also get a weekly email with production execution counts.
For self-hosted Business and Enterprise, one license key can be used on any number of instances, and the combined usage of all of them counts toward the quota. The license key pings n8n's license server daily, and the ping includes the number of production executions.
Concurrency: how many run at the same time
The quota is per month; concurrency is how many production executions run at once.
- n8n Cloud limits concurrent production executions by plan: 5 on Starter (and the trial), 20 or 50 on Pro (by size, as above), 200+ on Enterprise. Executions over the limit wait in a queue and run in first-in, first-out order. Queued executions can't be retried, and cancelling or deleting one removes it from the queue.
- Manual, sub-workflow and error executions are outside the concurrency limit, as they are outside the quota.
- Self-hosted n8n doesn't limit concurrent production executions in regular mode by default. You can set a limit with the
N8N_CONCURRENCY_PRODUCTION_LIMITenvironment variable; executions over it queue the same way. In queue mode, the same variable (or the worker's--concurrencyflag) sets how many jobs each worker runs at once.
Ways to use fewer executions
These follow from n8n's counting rules above:
- Start from a webhook or the app's own trigger, not a Schedule Trigger that looks for work. Empty polls are free; empty scheduled runs are not.
- Handle a batch in one run. An execution counts once however much data it processes, so a run that picks up 20 new rows and loops over them is one execution.
- Move repeated steps into sub-workflows if it suits your design: only the parent execution counts.
- Build and test with manual runs. They don't count, but unpublish the workflow while you do, so its trigger isn't running in production at the same time.
- Lengthen the schedule where you can. Every 30 minutes instead of every 15 halves 2,880 executions to 1,440, which fits Starter.
Check the current numbers
- n8n pricing
- Understand executions in n8n's docs, including how executions count towards quotas
- Understand concurrency for n8n Cloud
- n8n against Make by runs and steps per run: n8n vs Make
- How Zapier counts the same work in tasks: Zapier tasks explained
- Compare with Make and Zapier: n8n vs Make vs Zapier pricing and the automation cost calculator
Sources
- n8n pricing page (plans, comparison table, FAQ) — https://n8n.io/pricing/, checked
- n8n docs: Understand executions (how executions count towards quotas) — https://docs.n8n.io/build/understand-workflows/understand-executions, checked
- n8n docs: Types of executions — https://docs.n8n.io/build/understand-workflows/understand-executions/types-of-executions, checked
- n8n docs: Understand concurrency (n8n Cloud) — https://docs.n8n.io/deploy/use-n8n-cloud/understand-concurrency, checked
- n8n docs: Control concurrency (self-hosted) — https://docs.n8n.io/deploy/host-n8n/configure-n8n/scaling/control-concurrency, checked
- n8n docs: Try free then choose a plan — https://docs.n8n.io/deploy/use-n8n-cloud/start-your-free-trial, checked
- n8n docs: Use the Cloud console — https://docs.n8n.io/deploy/use-n8n-cloud/use-the-cloud-console, checked
- n8n docs: Handle errors gracefully (error workflows) — https://docs.n8n.io/build/flow-logic/handle-errors-gracefully, checked
- n8n docs: Execute Sub-workflow node — https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.executeworkflow, checked