Noob question: Loop end executed for each item


Why is the loop end executed for the two Items? Shouldn’t it be fired when the last item has been processed, meaning once? Is this a (parallel) for-each loop?

Loop Over Items is a special node that iterates over a list of items, executing the flow for each one separately. It essentially works like a for-each, but each execution is independent and sequential (not parallel), unless you’ve configured n8n with parallel execution at the flow level (not common by default).

The “end loop” is executed twice (once per item): This is expected and correct. The Loop Over Items node in n8n is executed once for each item processed. The entire flow within the loop is executed for each item, and the end of the loop is reached at the end of each execution.

Therefore, if you have two items, it will be executed:

Once for the first item (with all nodes within the loop)

Once for the second item (repeating the entire flow)

And that’s why the “end loop” is executed twice, once for each item.

The behavior is correct and expected. The loop is not parallel, but sequential. The end node of the loop executes once for each element, not just at the end of the last one.

If you need to execute an action only once after all the elements have been processed, you can use:

A Merge node outside the loop.

Or configure conditional logic using Wait or IF nodes to detect the last element and act only then.

1 Like