Throttle icon

Throttle

Limits the frequence of execution of subsequent nodes. Useful for rate limiting.

Overview

The Throttle node is designed to limit the frequency of workflow executions in n8n. It is particularly useful for rate limiting, ensuring that only a specified number of executions are allowed within a defined time interval. This helps prevent overloading external services or APIs with too many requests in a short period.

Common scenarios:

  • Preventing API rate limit errors by spacing out requests.
  • Controlling the flow of data to downstream systems that can only handle a certain throughput.
  • Ensuring compliance with service-level agreements (SLAs) that restrict request rates.

Practical example:
If you have a webhook-triggered workflow that processes incoming orders and sends them to an external system, but the external system allows only 5 requests per minute, you can use this node to ensure you do not exceed that limit.

Properties

Name Type Meaning
This node will not work when workflow is triggered manually.
It will only throttle executions when triggered by a webhook, timer or other trigger
notice Informational warning; throttling does not apply to manual workflow runs.
WARNING: This node will not work properly for concurrent executions. It will only throttle sequential executions. It is recommended to set N8N EXECUTIONS_PROCESS mode to "main", so all executions will be sequential. notice Warning about concurrency; recommends configuration for correct throttling behavior.
Interval number The length of the time window for throttling (e.g., 10).
Interval Unit options The unit of time for the interval (Seconds, Minutes, Hours, Days).
Executions per Interval number Maximum number of executions allowed during each interval.

Output

  • The node has two outputs:
    • Output 1 ("allow"): Items that are allowed to proceed because they are within the execution limit for the current interval.
    • Output 2 ("block"): Items that are blocked because the execution limit has been reached for the current interval.

Each output item retains the original json structure from the input. No additional fields are added or removed.

Dependencies

  • No external services or API keys required.
  • For correct operation, it is recommended to set the environment variable EXECUTIONS_PROCESS to "main" in your n8n instance to ensure sequential execution. See n8n Execution Modes.

Troubleshooting

Common issues:

  • Node does not throttle on manual runs: Throttling is disabled when workflows are run manually. Use a trigger node (webhook, timer, etc.) for proper throttling.
  • Concurrent executions bypass throttling: If multiple executions run in parallel (e.g., in queue or worker mode), throttling may not work as expected. Set EXECUTIONS_PROCESS=main for sequential processing.
  • Blocked items not processed: If you see items routed to the "block" output, it means the execution limit was reached. Adjust the "Executions per Interval" or increase the interval if needed.

Error messages:

  • The node does not throw custom error messages under normal operation, but misconfiguration (such as running in concurrent mode) may lead to unexpected results.

Links and References

Discussion