Let's POWER Automate

From no-code to low-code

Menu
  • Expressions
  • Filters
  • General
  • Application specific solutions
    • Dataverse
    • Excel
    • Forms
    • Outlook
    • Planner
    • Power Apps
    • SharePoint
    • Teams
  • Triggers
  • Ready to use solutions
    • Approval Process Template
    • Task Delegation App
    • The Ultimate Power Automate expressions cheat sheet
    • Power Automate HTTP requests to SharePoint cheat sheet
    • Power Automate HTTP requests to Graph API cheat sheet
  • ABOUT ME
  • Get help with your flow
  • POWER PLATFORM SERVICES
Menu

Three ways to add parallel approval tasks in Power Automate

Posted on October 26, 2024October 26, 2024 by Tom

“I’ve got an approval process with 10+ parallel approval tasks, what’s the best way to implement it in Power Automate?”


Most approval processes, including the Approval Process template, assign the tasks in a sequence. The first user/group of users complete their task, followed by the second user, third, and so on. Yet sometimes you encounter a process that’s more time sensitive. A process where waiting for each response before starting the next one might take too long. A situation asking for a bunch of parallel tasks.

This article will show you 3 ways how to implement such parallel tasks in your flows.

A lot of parallel branches

One approach is to add a lot of parallel branches – one for every approval task. You add all the actions and configure them, one by one.

It is a very simple approach, probably the first one you’ll think of. And it’ll do the job while being easy to read and follow. Each branch can have different task settings, different conditions, different actions, different processing. That’s the way to go if the branches are not unified, if they differ. Just tell the flow in which steps it should create these tasks and go wild.

But it’s not ideal when all the branches look the same. You’ll repeat a lots of actions – each branch will contain not only the task, but its processing too. The initial configuration will take long as you’ll have to configure all the actions, the same if you decide to update them later. Not to mention that adding a new step will require another copy of the parallel branch.

Parallel task in a loop

Another approach, related to the use of configuration lists, is using a parallel loop for the tasks. Instead of multiple branches you add an ‘Apply to each’, set concurrency control, and create the tasks inside. Here the configuration list is a necessity as you can’t hardcode anything in those tasks. All the configuration must be in the list – the approvers, their possible responses, task title… everything. Quite similar to the configuration list used in the approval process template.

This solution might require a bit more thinking to combine the configuration list and the flow, but the benefits are obvious. There’s just one set of actions to configure and to manage. Nothing is hard coded, meaning most of the changes can be done only in the configuration list – you can add/remove/modify steps without touching the flow.

It’s a good approach when the task processing follows the same, or at least very similar rules.

The downside is that it’s hard to follow. Such flow might be harder to understand, needing more detailed explanation, being complicated to maintain by inexperienced users. And when using the flow you don’t see what’s happening in that loop until it’s finished. And if the loop contains approval tasks, it can take days before it finishes…

Child flows

The third approach, and the one I’m using right now are child flows. It’s very similar to the previous one, but instead of having the tasks in a loop they’re in a separate flow. Here we’re getting back to the Solutions as child flows must be in a solution.

Take out the whole approval part and put it in a separate, manually started flow with all the dynamic parts as input parameters. Everything that’s related to the task should be in this flow, let it be the task itself or its evaluation and following steps.

Once everything is done respond back to the main flow.

Power Automate many parallel tasks

In the main flow, replace the approval part in the original flow by the ‘Run a Child Flow’ action that’ll create the task.

Power Automate many parallel tasks

This approach addresses two of the issues of the loop approval. Firstly, you can keep track of each approval step – it’s a separate flow that’ll finish together with the task. Secondly, you can restart a specific approval step. If anything happens you can resubmit only the child flow, recreating only the single task.

Summary

In this article I showed you three approaches to deal with many parallel tasks in a Power Automate approval flow. It’s an evolutionary story of the approaches I used in the past until I got to the last one, the one I’m using right now in my flows. It’s more complicated as it has more moving parts than a single, hard coded flow, but in the long term it seems to be the most user friendly solution. You can easily add/remove/modify steps, you have only a few actions to manage, and you can restart any approval step when needed. These are all good features for an approval process.


πŸš€ Master Power Automate

Join 2,000+ professionals getting actionable Power Automate tutorials, solutions, cheat sheets & tips every week.

No spam. Unsubscribe anytime.

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

πŸš€ Master Power Automate

Join 2,000+ professionals getting actionable Power Automate tutorials, solutions, cheat sheets & tips every week.

No spam. Unsubscribe anytime.

Still exchanging emails to get things approved?

Use the Approval Process Template and the Task Delegation App to skip the hard part and deploy an automated, fully functional approval solution on a SharePoint list in minutes! And then the next one, and the next one...

Approval Template Preview ✨ Learn more ✨

Turn ideas into flows with ease!

Grab the complete Power Automate Cheat Sheet Bundleβ€”everything you need to master expressions, SharePoint HTTP calls, and Graph API in Power Automate.

Cheat Sheet Bundle Preview ✨ Get the Cheat Sheets

Didn't find what you were looking for?
Need to adjust a solution to fit your needs?
Or would you just like to get an assistance from somebody with thousands of hours of experience with Power Automate?

Power Automate blogs worth visiting

Damien Bird
Dennis (Expiscornovus)
Paul Murana

©2025 Let's POWER Automate | Theme by SuperbThemes