Microsoft Flow – Improve your flow’s performance in a few easy steps

In recent days I’ve had a look at performance in Microsoft Flow. We all know that nested Apply to each steps are not a great idea or maybe …

Therefore I started by creating some nested apply to each steps. If you do a bad job then do at least a really bad job!

I’ve got a number of set variable actions and a number of compose actions. All of these are building up some HTML out of data collected from SharePoint using Get Items actions.

To run all of this within an apply to each about 45 times takes 16 minutes. Pretty performance poor isn’t it?

I decided to optimise the flow a bit by adding Select statements straight after the Get Items actions and I gained 10 minutes. Simply by adding all the complexity into a single select my flow started to perform a lot better

I always thought that the usage of the variables would really cause the performance trouble as Flow is waiting for  locks on the variables. Both versions of the flow are using the same number of variables and the same number of compose actions.

Time to look at the details.


Within the original Flow within the Apply to each there were a lot of expressions used. Moving these expressions from the nested apply to each steps to a single Select action reduced the complexity in the nested Apply-to each steps.

In the optimised flow I put all my expressions in the Select action.

This now means that as I use a Set Variable inside my apply for each becomes very simple a set of references to my data returned by the select.






Please leave a comment or feedback

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.