cancel
Showing results for 
Search instead for 
Did you mean: 
nagaraja2026

Degree of Parallelism in Power Automate

 

What is Degree of Parallelism ?

The number of loop iterations that can run at the same time, or in parallel.

 

Degree of Parallelism in Power Automate?

Lets take a scenario of updating child records on update of parent record. One of the most used controls is ‘Apply Each’ which is used to process a list of items.

 

By default, loops run in sequence (essentially, parallelism is 1) . That means only one child record is processed at a time.

 

So, in some scenarios if the number of child records is more , flow takes more time to complete. In my case, it took more than 4 minutes to process 100 records.

 

We can improve the flow performance by enabling ‘Concurrency Control’ and adjusting ‘Degree of parallelism’ settings of ‘Apply Each’ control.

 

image.png

 

image.png

 

In my case, it took less than 1 minute to process 100 child records after setting the degree of parallelism to 20 (Max value is 50).

 

Read about limits and configuration in Power Automate here.

 

Hope it helps.

 

Original Post from my blog : https://powerofpowerplatform.com/degree-of-parallelism-in-power-automate/

 

 

 

 

Comments

Hi there,

 

I have a similar situation where i have a SharePoint list containing items "invoices" that increase on daily basis.

 

I want to send all the invoices created within the week to the customers by the end of the week.

This will make more than 200 invoice per week.

 

My currant configurations is sending only 50 as i`m using apply to each item " 50 Degree of parallelism" to send the email with options "which will cause the flaw to pause till the customer responds".

 

Is there any way to increase the degree of parallelism more than 50?

Hi @omostafa97 . Were you able to identify the solution? I have the same use case to send out an action that waits for a user to respond. Can this be resolved if we go for a paid license? Or is there any way to do it in the free version? One way I found was to have Parallel 'Apply to each', but that would just do a 50*3 if we go for 3 parallel actions. So were you able to resolve the query you had?

@Varun_Bhatia 
For my configuration, i didn't rely on the parallel apply to each as it's sending out 50 parallel requests and wait for their responses  which might not get replied on or even read (could happen), this will keep the next 50 Message or invoice stuck until the first patch get fully responded or expired.

Instead, I used it as a trigger.
The invoices are being created in SharePoint list.
So I set my trigger as if a new item is added or modified the invoice is being delayed for 48 hours then being sent separately,

 

This way will force the flow run once for each invoice instead of running once for all of them "it was possible with the free version", which will not postpone sending any actionable email as each one is being considered for one automatic & delayed run separately.

In my situation, I have a list of about 750 items, with a date column called "check-in date."  I have a scheduled flow which loops through the whole list, checking that date column, and if one matches today, sends an approval task, using the actions 'Create an approval' -> 'Send an Email (V2)' -> 'Wait for an approval'.  I have the same issue as described by other commenters, but my requirements don't allow me to build this flow as a triggered flow like omostafa97 did.  I just discovered the 'degree of parallelism' setting, though, and so setting it to 50 will alleviate some of the symptoms of the tasks looping through sequentially while needing them to be concurrent.  But it would be reassuring if the setting could go beyond 50.

Another way around that is for example (using sharepoint) : including a finalize button for the invoice like submit or confirmed, and adjust the trigger for the flow to fire based on if an item was changed, then confirming that the invoice is indeed ready to be sent through a condition checker for the column that was added,

EX : if column "invoice ready" = ready, then the flow will send the message, and it can wait for the response, since every single invoice will have a separate flow run, not one flow run for all messages, that way it can be done without a paid subscription and also easier to identify any failed runs

About the Author
  • Experienced Consultant with a demonstrated history of working in the information technology and services industry. Skilled in Office 365, Azure, SharePoint Online, PowerShell, Nintex, K2, SharePoint Designer workflow automation, PowerApps, Microsoft Flow, PowerShell, Active Directory, Operating Systems, Networking, and JavaScript. Strong consulting professional with a Bachelor of Engineering (B.E.) focused in Information Technology from Mumbai University.
  • I am a Microsoft Business Applications MVP and a Senior Manager at EY. I am a technology enthusiast and problem solver. I work/speak/blog/Vlog on Microsoft technology, including Office 365, Power Apps, Power Automate, SharePoint, and Teams Etc. I am helping global clients on Power Platform adoption and empowering them with Power Platform possibilities, capabilities, and easiness. I am a leader of the Houston Power Platform User Group and Power Automate community superuser. I love traveling , exploring new places, and meeting people from different cultures.
  • Read more about me and my achievements at: https://ganeshsanapblogs.wordpress.com/about MCT | SharePoint, Microsoft 365 and Power Platform Consultant | Contributor on SharePoint StackExchange, MSFT Techcommunity
  • Encodian Owner / Founder - Ex Microsoft Consulting Services - Architect / Developer - 20 years in SharePoint - PowerPlatform Fan
  • Founder of SKILLFUL SARDINE, a company focused on productivity and the Power Platform. You can find me on LinkedIn: https://linkedin.com/in/manueltgomes and twitter http://twitter.com/manueltgomes. I also write at https://www.manueltgomes.com, so if you want some Power Automate, SharePoint or Power Apps content I'm your guy 🙂
  • I am the Owner/Principal Architect at Don't Pa..Panic Consulting. I've been working in the information technology industry for over 30 years, and have played key roles in several enterprise SharePoint architectural design review, Intranet deployment, application development, and migration projects. I've been a Microsoft Most Valuable Professional (MVP) 15 consecutive years and am also a Microsoft Certified SharePoint Masters (MCSM) since 2013.
  • Big fan of Power Platform technologies and implemented many solutions.
  • Passionate #Programmer #SharePoint #SPFx #M365 #Power Platform| Microsoft MVP | SharePoint StackOverflow, Github, PnP contributor
  • Web site – https://kamdaryash.wordpress.com Youtube channel - https://www.youtube.com/channel/UCM149rFkLNgerSvgDVeYTZQ/