PowerBlocks
GuidesPower Automate "Apply to each" is slow — how to speed it up
Power AutomateVerified September 16, 2026

Power Automate "Apply to each" is slow — how to speed it up

A slow "Apply to each" in Power Automate usually comes from processing items one by one with no parallelism, plus per-item API calls that add up fast. Immediate fix: open the loop’s Settings, turn on Concurrency Control, and raise the Degree of Parallelism (up to 50) — but only when each iteration is independent of the others. Durable fix: filter at the source (OData filter / Filter Query) or add a Filter array action before the loop so fewer items enter it, and replace per-iteration calls with a batch/bulk action or expression-based transforms where the connector supports it — this also avoids 429 throttling.

Enable concurrency

  1. 1On the Apply to each, open Settings and turn on Concurrency Control.
  2. 2Raise the Degree of Parallelism (up to 50) so items process in parallel instead of one by one.
  3. 3Note: only enable it when items are independent — not when each iteration depends on the previous.

Process fewer items

  1. 1Filter at the source (OData filter / Filter Query) so the loop only receives the rows you need.
  2. 2Use a "Filter array" action before the loop instead of an If inside it.

Avoid per-item API calls

Calling an action on every iteration is the biggest cost and risks throttling (429). Where the connector supports it, use a batch/bulk action, or select/transform data with expressions instead of looping.

Related guides