Running a sub-workflow in a “Run once for each item” mode with Wait for completion turned on. So it runs the sub-workflow multiple times and should aggregate the output from the last node of the sub-workflow and return that. Instead it seems to return the items in multiple branches of which only one I’m able to access and connect to another node.
This is expected behavior with Execute Workflow in “Run once for each item” mode. Each sub-workflow execution returns its result as a separate output “run,” which shows up as multiple branches in the UI. Only the first is connectable.
Since you’re already batching with Loop Over Items (batch size 24), the simplest fix is to switch Execute Workflow to “Run once with all items” mode instead. Your sub-workflow will then receive all 24 items at once per batch and should handle them internally. The output comes back as a single aggregated branch that you can connect normally.
Alternatively, if your sub-workflow can only handle one item at a time, set your Loop Over Items batch size to 1 and keep “Run once with all items” on the Execute Workflow node. That way each loop iteration sends exactly one item, and you always get a single clean output branch.
Thanks for the input. Even though this may be expected behaviour this does not seem like a the best way n8n could have implemented it so if anybody from the team is reading this, would be great to be able to handle this edge case.