Playbook · Shopify back in stock / restock notification customer mail
Shopify back in stock email not sending — after the product is already restocked.
Written for a Shopify DTC owner whose buyer clicked Notify me / Back in stock on a sold-out product, inventory came back — and the restock notification email never arrives. This is a Klaviyo Back in Stock, native Shopify Flow, or restock / waitlist app playbook — not abandoned checkout, not payment pending, not local pickup ready, not POS receipt, not gift card, not refund / cancel, not return request, not fulfillment hold, not WISMO, and not customer account invite. DIY tools first. Honest limits. No ticket-cut number, no recovered-revenue claim, no invented case studies.
Nico at Latch AI Ops · Sep 7, 2026 · ~9 minute read
Buy the 72-hour install — $997Abandoned checkout not sendingPayment pending not sendingLocal pickup ready not sendingMerchant FAQ
01
Back in stock mail, not abandoned checkout, payment pending, local pickup, or POS.
A back in stock / restock notification is not abandoned checkout and not payment pending. Abandoned checkout fires when a cart is left unpaid — that playbook is abandoned checkout email not sending. Payment pending / authorization failed is an order stuck authorizing — payment pending email not sending. Local pickup ready is “your order is waiting at the counter” — local pickup ready email not sending. POS / retail receipt is a till sale — POS receipt email not sending. This page is the buyer-facing “the sold-out product you wanted is back” path: Klaviyo Back in Stock, a Shopify Flow watching inventory quantity, or a dedicated restock / waitlist app.
Also not this page: gift card, refund / cancel, return request / label, fulfillment hold, WISMO, customer account invite. Six ordinary reasons restock mail never lands: the waitlist never captured the buyer on that variant, the flow or app send is off, inventory never hit a sellable quantity on the right SKU, the profile is suppressed, you tested the wrong email, or sender / spam hid a send that did fire. Walk them in that order. You already pay for Shopify and usually Klaviyo or a waitlist app. You do not need a second restock app to read the flow list.
02
Waitlist / Notify me never captured the buyer on that variant.
Restock email needs a captured signup on the exact product variant that was sold out. Open Klaviyo → Back in Stock / Subscribers (or your waitlist app’s signup list) and search the buyer’s email against that variant ID. Empty means the theme button never wrote a subscription — Shopify has nothing to notify when stock returns.
Common traps: a Notify me button that is pure CSS with no Klaviyo / app script, a button wired only on the parent product while the buyer picked a sold-out size/color variant, OOS form hidden behind a sold-out badge the theme never shows on that template, or the buyer typed a typo and you are searching the wrong address. Wrong capture, wrong silence.
Also confirm the product was actually unavailable for purchase when they signed up. If Continue selling when out of stock was on, many waitlist widgets never appear — the buyer could still check out, so there was no restock event to wait for.
03
Klaviyo flow, Shopify Flow, or restock app send is off or draft.
Open the product that owns this mail. In Klaviyo: Flows → Back in Stock (or your custom restock flow) → status Live, not Draft / Manual. Read the trigger (Back in Stock / Product inventory / custom metric) — not Abandoned Checkout, not Placed Order, not a preview. Draft does not send. A staffer who paused “BIS while we rebuild the theme” leaves a hole that looks like Klaviyo is broken when a buyer asks why nothing arrived after restock.
If you replaced Klaviyo with a Shopify Flow “Send email” when Inventory quantity changed, the Klaviyo flow may be intentionally off — then the bug is Flow’s run history, not Klaviyo. Name which product you intended before you flip the wrong switch. Flow that never runs at all is also Shopify Flow not running. A restock app with notifications disabled, API key revoked, or plan limits hit is the same class of bug: the send path is off.
Abandoned checkout can be live and Back in Stock still draft. Payment pending, local pickup ready, POS receipt, gift card, refund, return, fulfillment hold, WISMO, and customer invite are different events again. Do not debug this page on those toggles. Owner comparison for marketing vs native mail is Klaviyo vs Shopify Email.
04
Inventory never restocked to a sellable quantity on the right SKU.
The flow can be live and still not send. Klaviyo Back in Stock and most waitlist apps fire when inventory on the subscribed variant crosses from unavailable into a positive, sellable quantity. Restocking a different size, editing cost without changing available units, or setting inventory on a draft / unpublished product never triggers the waitlist the buyer joined.
This is the merchandising trap. Someone updates the parent product’s total while variants stay at zero, imports a CSV that skips the OOS SKU, or turns Continue selling when out of stock on without ever writing a positive Available quantity — some integrations treat that as “still unavailable for waitlist purposes.” Calling the customer is not the same as the Back in Stock metric firing.
For the next test: take one real sold-out variant with a signup you own, set Available to a positive number (and keep Continue selling off if your tool requires classic OOS → in-stock), wait for the integration’s sync window, then read that inbox — not the product admin alone. Admin can show stock while Klaviyo still shows the last sync as OOS.
05
Profile suppressed, unsubscribed, or bounced in Klaviyo / the app.
If restock mail is supposed to come from Klaviyo, open the profile → Suppressions / Consent. Suppressed, unsubscribed, hard-bounced, or marked Invalid never receives Back in Stock even when the flow is Live and inventory crossed. A waitlist app with its own suppression list has the same failure mode.
Native Shopify notifications and Klaviyo do not share one suppression table. Someone who unsubscribed from marketing still gets order confirmation but never gets Back in Stock — that is expected, not “Shopify email is down.” Do not install a third restock SMS app to “make sure it fires” while the profile is suppressed in the tool you already pay for.
If the flow runs but the email action skipped the profile, read the skip reason in flow analytics — suppressed and missing email look like “not sending” from the buyer’s seat. If Flow never runs on any trigger, leave this page and use Shopify Flow not running.
06
You tested abandoned checkout, payment pending, local pickup, POS, gift card, refund, return, hold, WISMO, or invite.
Leaving a cart proves abandoned checkout, not Back in Stock. Creating a Payment pending order proves payment-pending mail. Marking Ready for pickup proves local pickup ready. Ringing a POS sale proves POS receipt. Issuing a gift card, refund, return label, fulfillment hold, WISMO reply, or customer account invite proves those templates. Preview in the flow editor and Send test email prove the template renders. They do not prove a live waitlist signup on a sold-out variant fires when inventory returns.
Honest test: sell out (or set Available to 0) one variant, submit Notify me with an email you own that is not suppressed, restock that exact variant to a positive Available quantity, wait for sync, then search that inbox and spam for the store name. If abandoned checkout arrived from a cart test and Back in Stock did not from a restock test, the bug is waitlist capture / flow / inventory / suppression — not “email is down.”
Related wrong-event pages: abandoned checkout, payment pending, local pickup ready, POS receipt, gift card, refund, return request, fulfillment hold, WISMO, customer account invite.
07
Sender, spam, and deliverability hid the send.
Klaviyo or the restock app can send and the customer still reports nothing. Open the sending domain / brand settings. A custom from-address without authenticated DNS (SPF / DKIM / DMARC for the domain your ESP tells you to add) lands in spam, or is dropped. A shared onboarding domain also gets filtered on some inboxes. BCC to the owner is not proof the customer got it — BCC can arrive while the To: line bounced.
In Klaviyo (or the app), look for a Back in Stock / notification sent event on the profile, not just “inventory updated” in Shopify. If the ESP says it sent, have the customer search spam, promotions, and the exact from-address. If the ESP does not say it sent, go back to waitlist capture / flow live / inventory / suppression — do not buy a deliverability app for a mail that never left.
Do not install a second restock / SMS app to “make sure it fires.” You will double-message the next customer who was never the bug. Shopify Email (marketing campaigns) and a Klaviyo Back in Stock flow are also not the same product — mixing them is how you pay for two products and still send none, or send three.
08
When to stay DIY vs pay $997.
Stay DIY if you can spend one afternoon on the list above: waitlist signup on the sold-out variant, Klaviyo / Flow / app send Live, inventory restocked to sellable on that SKU, profile not suppressed, sender/spam. Force one live restock from a variant you control. Read the inbox. That is the whole playbook. No agency required. Short answers also live on the merchant FAQ. Related troubleshooting: abandoned checkout not sending, payment pending not sending, local pickup ready not sending, POS receipt not sending, Klaviyo vs Shopify Email, Shopify Flow not running.
Pay for help when the work is not the notification toggle — it is connecting the stack you already have so Back in Stock mail is one live path instead of a Klaviyo draft plus a Flow send plus a waitlist app you forgot, lead capture is not dying in DMs, and exceptions show up in a channel you already check. That is the Latch AI Ops install.
What $997 USD one-time buys: lead capture on the live store, ops alerts in a channel you already check, and a checkout-ready workflow. 72 hours after collaborator access, not after payment. One live Shopify store. Access plus a delivery thread. Store URL collected at checkout. Not a SaaS seat, not a notification rebuild, not a Klaviyo rebuild, not a Gorgias implementation, not a support VA, not a brand or theme job.
Other shops’ public ranges, not testimonials: a Shopify Flow or recovery-app install typically runs $500–$2,500. A Klaviyo-only rebuild typically runs $2,000–$5,000. $997 is the cheap end of that work, sold as a 72-hour install of three systems — not as a ticket-cut number or recovered checkout revenue.
What it does not buy: fewer WISMO tickets, recovered checkout revenue, a lift in conversion, or a case study. Latch AI Ops has not published customer proof because there are no customers yet. You are buying the install.
Checkout is on Whop. Operator is Nico. United States offer. You can revoke collaborator access after handoff. We do not take owner passwords.