How to test your back in stock alerts before you trust them
Restock alerts fail quietly, and you usually find out from a sales dip, not an error message. Here is a ten-minute self-test any merchant can run on any app to prove alerts actually fire and land before you rely on them.
07/11/2026

Most merchants find out their back in stock alerts stopped working the same way: not from an error message, but from a slow, unexplained dip in sales. The app kept showing a green status. The subscriber count kept ticking up. And somewhere in there, the alerts quietly stopped going out, and nobody noticed for weeks.
That is the tricky part about this whole category. When alerts break, they usually break silently. There is no bounced email in your face, no red banner, no angry popup. A customer signs up, the item comes back, and the email just does not arrive. The customer does not write in to complain. They buy from someone else. You never hear about it. Read enough one star reviews of the big back in stock apps and this is the pattern that shows up over and over: “worked for a while, then stopped, and I only found out later.” It is the most common way trust in one of these apps falls apart.
So the fix is not to hope your app works. It is to check, on purpose, before you are relying on it. Here is how.
Why “it works” is not something to take on faith
An alert has to clear a surprising number of hurdles to actually do its job. Detection has to notice the restock. The send has to fire. The email has to get past spam filters and land in the inbox. The link has to point at the right product. And it all has to happen fast enough that the customer still wants the thing.
Any one of those can fail on its own, and most of them fail invisibly. A green “connected” light in your app dashboard only tells you the app is installed. It does not tell you the last restock actually sent, or where those emails ended up. The only way to know is to run the whole path yourself and watch what happens.
Good news: you can do that in about ten minutes, with no special access, on any app.
The ten-minute self-test any merchant can run
You are going to play the part of your own customer. Set up a fake restock end to end and watch it fire.
1. Make a test product. Create a cheap, hidden product in your Shopify admin. Call it something obvious like “ZZ Test Do Not Buy” so it never confuses a real order. If it has variants, give it two so you can test that the alert links to the right one.
2. Set it to zero. Take the inventory down to 0 so the product reads as sold out. This is what makes the “notify me” button show up on the storefront.
3. Sign yourself up with a real inbox. Go to the live product page and join the waitlist with an email address you can actually check. Use a plain Gmail or Outlook address, not a company alias that skips spam filtering, because you want to see what a normal shopper sees. If you can, sign up a second address on the other variant too.
4. Restock it. Bump the inventory back up, say from 0 to 5. Note the exact time you did it. This is the clock starting.
5. Watch, and time it. Now measure. Here is what you are actually checking:
- Did it send at all? The first and biggest question. If nothing arrives in a few minutes, that is your answer right there.
- How many minutes passed? From the moment you restocked to the moment the email hit your inbox. A few minutes is healthy. An hour is a problem, because by then a real shopper may have moved on. We dug into why speed matters so much in our piece on restock alert timing.
- Inbox or spam? Check the spam and promotions folders too. An email that lands in spam is, to the customer, an email that never sent.
- Did the link go to the right place? Click it. It should land on the exact product, and if you tested variants, the exact variant that came back. Getting the specific variant right, not just the product, is a common place these apps slip. A link to a sold-out variant or a generic homepage is a broken alert wearing a nice suit.
- Does it de-dupe? Set the item to 0 and restock it again. You should not get a second, duplicate blast for the same signup. Getting hammered with repeat emails is its own kind of failure, and it is the fast way to a spam complaint.
Write the results down. Five simple checks, one real test. If your app passes all five, you have earned the right to trust it. If it does not, you found out on a fake product instead of on your best seller during a sale.
What a good app lets you see after the fact
Running the test once is great. But you should not have to run it every week to feel safe. A solid app shows you its own work, so you can spot trouble without staging a fake restock each time.
The thing to look for is a send log, sometimes called an audit trail. For any restock, it should show you each alert moving through its stages: queued, then sent, then delivered, then clicked. That record is what lets you or the app’s support team answer the only question that matters when a customer says they never got an alert: what actually happened to it? Was it never triggered? Sent and bounced? Sent and buried in spam? Each of those has a different cause, and you cannot tell them apart without the log.
If your app cannot show you a per-alert record like that, you are trusting it blind. You are taking “it works” on faith, which is the exact thing this whole post is arguing against. We wrote a full breakdown of the failure modes behind a missing email in why restock alert emails go missing, for when you are past testing and into “it is already broken, now what.”
Where Kelso fits
Honesty first: this is the problem Kelso was built around, so of course I think it matters.
Kelso detects restocks two ways at once. The Shopify inventory webhook fires for speed, and a scheduled reconciliation poll runs behind it to catch anything the webhook drops. That matters because Shopify itself says webhook delivery is not guaranteed, so a webhook-only app can silently miss a restock and never know. Two paths mean a dropped webhook does not become a missed alert. And every alert gets a full send log, per subscriber, from queued to delivered to clicked, so you can run exactly the check above whenever you want instead of staging a fake restock.
If you want to try it, it is on the Shopify App Store. The free plan covers 50 sends a month with unlimited subscribers and no card required, which is plenty to run this whole self-test on your own store. Already on another app? Here is how to move to Kelso, and here is more on the free plan.
The short version
Do not wait for a sales dip to tell you your alerts broke. Make a test product, sell it out, sign up with a real inbox, restock it, and watch. Time it, check the folder it lands in, click the link, and make sure repeats de-dupe. Then confirm your app can show you a per-alert send log so you can check again without the whole staging routine. Ten minutes now beats a silent gap you find out about in your reports.