The pipeline, stage by stage
1. A customer signs up
When a shopper submits the notify-me form, we store exactly two things: their email address and the variant they want (see the privacy policy). The submission passes three anti-spam checks first: per-IP rate limiting, a hidden honeypot field that only bots fill in, and email format validation. If double opt-in is enabled, the subscriber also confirms their address by email.
2. Shopify tells us about the restock — instantly
Restock Rocket subscribes to Shopify's inventory_levels/update webhook. The moment you (or your fulfillment integration) update inventory, Shopify pushes the change to us. There is no polling and no scheduled job — this matters, because apps that check inventory on a timer are structurally minutes-to-hours late. We detect the transition from “out of stock” to “in stock” for each variant.
3. Alerts are queued immediately, with retries
All waiting subscribers for that variant are placed on a dedicated send queue in the same second the webhook arrives. Each email is sent independently with automatic retries and backoff, so one transient failure never blocks the rest of the batch. Each subscriber gets one alert per signup — no duplicates if inventory flaps or the webhook is delivered twice.
4. Resend delivers the email
Emails go out through Resend over our authenticated sending domain (DKIM and SPF configured), with your branding on the template (Growth+). The product button in the email carries UTM parameters, so the visit shows up cleanly in your analytics — and, on Pro, feeds recovered-sale attribution.
5. The clock is stopped, and the number published
For every single alert, we record the time from webhook received to email accepted for delivery. That latency is stored with the alert and rolled up on your dashboard as:
- p50 — your median alert latency,
- p95 — the latency 95% of alerts beat,
- % under 60 s — the share of alerts sent within the promise.
Why we publish this: “fast alerts” is an easy claim and a hard guarantee. Instead of asking you to trust it, the dashboard computes the numbers from your store's real alerts. If we ever get slow, you'll see it before we do damage control.
What “under 60 seconds” covers — honestly
The 60-second target covers our side of the pipeline: from Shopify's webhook reaching us to the email being handed to the recipient's mail system. Two things sit outside it:
- Shopify's webhook delivery is normally near-instant, but is ultimately Shopify's infrastructure.
- Inbox delivery: Gmail, Outlook and others occasionally hold or throttle mail on their side. This affects every email app equally and is not measurable from outside.
In practice, the alert is in the subscriber's inbox well before they'd have found the restock on their own — which is the entire point.
Edge cases, handled
- Quota reached: alerts pause (they are queued, not lost) and the dashboard shows a banner. Upgrade or wait for the monthly reset to release them. See billing & plans.
- Restock of 1–2 units with many subscribers: all waiting subscribers are alerted — first click wins, which is honest to everyone and mirrors how drops work everywhere.
- Variant restocked, then sold out again before we send: alerts already queued still go out; new signups simply re-open on the widget.
- Multi-location inventory: a variant counts as back in stock when its total available across locations goes from zero to positive.
Still stuck? Email us at anadvisory.fr@gmail.com.
We read everything and reply within one business day.