Performance issue

Unthrottled loop HTTP in n8n

Why making rapid HTTP requests in a loop can get you rate-limited or blocked

What is this issue?

When HTTP Request nodes are placed inside loops without any delay or rate limiting, they fire requests as fast as possible. This can overwhelm external APIs, trigger rate limits, or get your IP temporarily blocked.

Common patterns:

  • Split In Batches with HTTP Request inside
  • Loop Over Items calling external API per item
  • Code node with fetch() in a for loop
  • Multiple HTTP nodes in parallel branches

Why is this dangerous?

Rate limit errors

APIs return 429 Too Many Requests, causing partial workflow failures.

IP blocking

Some services temporarily or permanently block IPs that send too many requests.

API quota exhaustion

You may consume your entire API quota in minutes instead of hours.

Inconsistent results

Some requests succeed while others fail, leaving data in an inconsistent state.

How to fix it

  1. 1

    Add Wait node

    Insert a Wait node with a small delay (100-500ms) inside the loop.

  2. 2

    Use batch operations

    Where available, use batch API endpoints to process multiple items in one request.

  3. 3

    Configure retry on rate limit

    Set up HTTP node to retry with exponential backoff on 429 errors.

  4. 4

    Reduce concurrency

    Lower the batch size in Split In Batches to control request rate.

Scan your workflow now

Upload your n8n workflow JSON and detect HTTP requests in loops without throttling.

Scan for rate limit risks

Related resources

Related performance issues