"Apply to each" in Power Automate: understanding, controlling, and avoiding the loop
"Auf alle anwenden" processes lists item by item and often appears unintentionally. How the loop works, why it slows things down, and when it can be removed.
"Apply to each", in the German interface "Auf alle anwenden", is the loop of Power Automate: it runs the contained steps for each element of a list individually, for every email, every row, every attachment. Two peculiarities make it the most discussed building block of the platform: it often appears automatically, without having been inserted, and it is the most common reason why flows become slow. Both have the same cause, and both can be controlled. As of: July 2026.
Why does "Apply to each" appear by itself?
Power Automate inserts the loop automatically as soon as you use dynamic content that is a list, even if you only expect a single element. The classic case: a SharePoint query technically always delivers a list, even if only one match exists, and the designer immediately wraps the following step in an "Auf alle anwenden". Anyone who wants to address the single element specifically avoids the loop with a formula such as first over the query result, or filters the list beforehand down to exactly one match. The loop is therefore not an error, but the honest answer of the system to a list, just not always the intended one.
What makes the loop slow and what helps
- By default it runs sequentially: one element after another. In the loop's settings, concurrency can be activated, up to 50 simultaneous runs, which drastically shortens long runs. Caution only when order matters or a variable is being written, that does not work well with concurrency.
- Every step in the loop counts as an action: with 500 elements and 4 steps that is 2,000 actions against the daily quota of the license. Lean loops save real money.
- By default only the first elements arrive: many connectors deliver only part of the list without pagination, often 100 entries. Anyone processing more activates pagination in the settings of the query step and sets the limit accordingly.
The high art: avoiding the loop entirely
The fastest loops are the ones that never run. Three patterns replace "Apply to each" in many cases: "Filter array" reduces a list to the matching elements without a loop, "Select" transforms all elements in a single step, and formulas such as join or concat build a text directly from a list, for example for a collective email. A flow that first filters, then transforms with Select, and sends the result in one step, accomplishes in three actions what the loop variant needs hundreds for. Such patterns are the difference between a tinkered flow and one that also runs through with 5,000 records, and this exact kind of craft is what we teach in our Power Automate consulting. Our article on Compose.
Frequently asked questions about "Apply to each"
How do I get a value out of the loop?
Filling a variable inside the loop is the usual way: initialize it before the loop, append to it or increment it inside, continue using it after the loop. With loops running in parallel, however, this is risky, because simultaneous write accesses can overtake each other, so it is better to work sequentially or to generate the result using "Select" and join entirely without a variable.
Why does my loop process only 100 elements?
Because the upstream query step, without pagination activated, delivers only the first page of results, for many connectors that is 100 entries. The solution does not lie in the loop, but in the query step: activate pagination in its settings and set the threshold to the expected quantity.
Can I nest loops inside each other?
Yes, "Apply to each" can be nested, for example for orders with line items. However, the number of actions then multiplies, and readability suffers quickly. It has proven effective to outsource the inner processing into a separate child flow, or to reshape the data structure beforehand using "Select" so that a single level is sufficient.
NordFlux UG (haftungsbeschränkt)
NordFlux builds digital employees for organisations: automations and AI agents that take over repetitive work. You stay in control.
Concrete questions about automation or AI?
In a free initial analysis we discuss your case directly. No strings attached.