Home › Guides › Shopify Flow alerts
Building a low stock alert with Shopify Flow
Shopify Flow is Shopify's own free way to get a low stock email. It is a real option and worth building before you pay anybody. Here is the setup, then an honest account of where it stops being the right tool.
By Fazeel Tanveer, Founder · Last reviewed 20 August 2026
Availability. Shopify Flow is a free app on the Basic, Grow, Advanced and Plus plans. If you are on a paid Shopify plan you already have access to it.
On this page
Building the workflow
- Install Flow. Search for Shopify Flow in the App Store and add it. It is published by Shopify and free.
- Create a workflow and pick the inventory quantity changed trigger. It fires every time stock moves, which is the starting point you want.
-
Add a condition. Set the variable to
productVariant/inventoryQuantity, the operator to less than or equal to and the value to your threshold number. - Add the action. Send internal email, addressed to whoever actually places the order. Put the product name and the count in the body so the email is useful without opening admin.
- Turn it on and test it against one real product before assuming it works.
How to test it. Set the number above a real product's current stock for a moment, then change that product's quantity by one so the trigger fires. Check the email arrives and did not land in spam, then put the number back.
Where Shopify Flow stops keeping up
None of this makes Flow a bad tool. These are simply the reasons stores outgrow it.
- The number lives in the workflow, not on the product. One number covers everything that workflow touches. Products that take longer to restock need their own workflow and that pile grows fast.
- It fires per variant. A product with ten variants can send ten separate emails, which is a lot of noise when a whole size run drops at once.
- Locations are awkward. Getting a clean per location alert takes more condition building than most people want to look after.
- There is a limit on actions per workflow, so you cannot send everything to everyone from one place.
- No daily summary. Flow reacts to events, so it sends you one email per event. Building a single morning list of everything running low is not what it is built for.
- It repeats itself. Stock sitting right on your number crosses it back and forth all day and Flow emails you every time unless you build something to stop it.
Shopify Flow or an app: how to decide
Stay on Flow when:
- You hold stock in one place.
- One number across the whole catalog is close enough.
- You are happy building and looking after workflows.
- One or two people need the email.
Move to an app when:
- You have more workflows than you can keep track of.
- Stock sits in several places and you need each one checked on its own.
- You want a morning summary as well as instant emails.
- People have started ignoring the repeat emails. That is the moment your alerting quietly stopped working.
When the workflow count gets out of hand
Stockwell gives every SKU its own number, checks every location on its own and sends a morning summary, with no workflow to build for each case. Start on the free plan and leave Flow running while you compare.
Get it on the Shopify App Store
Free plan covers 50 SKUs with a daily summary. Paid plans add instant
alerts and more recipients. No card needed to start.
Common questions
Is Shopify Flow free?
Yes. Flow is a free app on the Basic, Grow, Advanced and Plus plans. A few individual actions, such as sending an HTTP request, are only on the higher plans.
Can Shopify Flow send low stock alerts per location?
You can build it, but it takes more condition work than most merchants want to look after and it gets harder with every location you add. This is one of the most common reasons stores with several warehouses move to an app.
Why is my Flow alert firing repeatedly for the same product?
Because the trigger fires on every stock change, so a product sitting right on your number emails you every time it crosses. It also fires per variant, so a product with lots of variants multiplies that. Stopping the repeats means adding more steps to the workflow.