Solved

Does Flow affect performance?

BobbyMacCheese
Shopify Partner
14 1 5

I have a guy who says we shouldn't be running more than 3 scenarios because the website is going to be slow. Of course some computing power is used every time anything is triggered, but I'm sure it won't be noticeable unless we run hundreds at a time. Is there any official information?

Accepted Solution (1)

DaveMcV
Shopify Staff
88 28 25

This is an accepted solution.

Hi @BobbyMacCheese,

 

Flow has no negative impact at all on the performance of your shop. All workflow runs are handled by different infrastructure and work with events that happen regardless of whether you have workflows configured or not.

 

Even having hundreds of workflows running at the same time will not impact the buyer or admin experience, however you may run out of API quota in Flow and hit rate limiting constraints. However, this would be local to Flow and not impact other areas of your shop.

 

Actions which would update orders, products, etc should have negligible impact on performance because this is already well optimized for around Shopify.

 

Hope that helps clarify things!

DaveMcV | Flow Development Manager @ Shopify
- Finding Flow useful? Leave us a review
- Need Flow help? Check out our help docs.
- Building for Flow? Check out Flow's dev docs.

View solution in original post

Replies 5 (5)

ahmad1999
Tourist
4 1 0

There's no strict limit on the number of scenarios a website can handle without slowing down. It depends on server capabilities, website complexity, and how efficiently the scenarios are designed. For most websites, running a few (1-5) scenarios simultaneously typically won't noticeably impact performance if they are well-optimized.

tim
Shopify Expert
3538 296 1313

I do not remember any official info on this. I believe that there is no direct dependency.

 

However, even single flow can negatively impact website speed:

 

As you may know, shopify implements server-side cache which means that when page is rendered, it's cached at the server side and does not have to be re-rendered each time visitors want to see it. Say, actually rendering your page with liquid may take 1 second (for example; can be more) while simply getting a cached copy will take 0.2s. This effects TTFB and it will impact other site speed parameters.

 

Obviously, to serve current information, Shopify has to invalidate cache from time to time. Say, when product is sold out, it's necessary to reflect this on the product page and cache is purged. If your theme is modified, cache is invalidated too. 

 

So, if your Flow touches some vital parameters, it will lead to cache invalidation. If it does it frequently, your pages would need to be re-rendered each time rather than fetched from cache negatively impacting TTFB stats.

 

Unfortunately, there is no official info on how cache works so we can only guess or learn from trial.

If my post is helpful, consider liking it -- it will help others with similar problem to find a solution.
I can be reached via e-mail tairli@yahoo.com
BobbyMacCheese
Shopify Partner
14 1 5

@tim wrote:

I do not remember any official info on this. I believe that there is no direct dependency.

 

However, even single flow can negatively impact website speed:

 

As you may know, shopify implements server-side cache which means that when page is rendered, it's cached at the server side and does not have to be re-rendered each time visitors want to see it. Say, actually rendering your page with liquid may take 1 second (for example; can be more) while simply getting a cached copy will take 0.2s. This effects TTFB and it will impact other site speed parameters.

 

Obviously, to serve current information, Shopify has to invalidate cache from time to time. Say, when product is sold out, it's necessary to reflect this on the product page and cache is purged. If your theme is modified, cache is invalidated too. 

 

So, if your Flow touches some vital parameters, it will lead to cache invalidation. If it does it frequently, your pages would need to be re-rendered each time rather than fetched from cache negatively impacting TTFB stats.

 

Unfortunately, there is no official info on how cache works so we can only guess or learn from trial.


Wouldn't it be frontend related only? 

Flow is stuff like "send email when order arrives" or "tag order if customer is from Nebraska" which is pure admin "backend"

tim
Shopify Expert
3538 296 1313

I have no idea what flows you have.

The ones you've mentioned should be ok from this point of view./

 

But consider "Unpublish product if inventory is less than 2 and has tag hard-to-get" or "Assign tag if inventory less than 2" and so on...

If my post is helpful, consider liking it -- it will help others with similar problem to find a solution.
I can be reached via e-mail tairli@yahoo.com

DaveMcV
Shopify Staff
88 28 25

This is an accepted solution.

Hi @BobbyMacCheese,

 

Flow has no negative impact at all on the performance of your shop. All workflow runs are handled by different infrastructure and work with events that happen regardless of whether you have workflows configured or not.

 

Even having hundreds of workflows running at the same time will not impact the buyer or admin experience, however you may run out of API quota in Flow and hit rate limiting constraints. However, this would be local to Flow and not impact other areas of your shop.

 

Actions which would update orders, products, etc should have negligible impact on performance because this is already well optimized for around Shopify.

 

Hope that helps clarify things!

DaveMcV | Flow Development Manager @ Shopify
- Finding Flow useful? Leave us a review
- Need Flow help? Check out our help docs.
- Building for Flow? Check out Flow's dev docs.