Sold out today. Sold to the people who asked, the minute it’s back.

Reshelf puts a Notify-me form on sold-out products and emails or texts everyone waiting as soon as stock is confirmed. Every alert is logged with when it went out and whether it arrived, so you never have to take our word for it.

Install on ShopifyFree for 50 alerts a month with every feature. Set up in the theme editor, no code.
A sold-out product page on the Dawn theme with the Reshelf form under the Buy it now button: an email field, an optional mobile number field, a text-message consent checkbox, a news checkbox and a Notify me button
The back-in-stock alert email: the store name as sender, the product name, a short message, a Shop now button and a Cancel my request link

The block as Dawn renders it, with the mobile number field switched on, and the email the shopper receives.

  1. Mon 09:123 shoppers ask to be toldAlpine Snowboard, 158 cm
  2. Thu 14:03:12Shopify reports a restockInventory 0 to 8, confirmed across all locations
  3. Thu 14:03:532 emails and 1 text sent41 seconds after the restock
  4. Thu 14:043 of 3 deliveredReported back by the email and SMS providers
  5. Thu 15:51Order #1187, $885.95Counted as revenue from alerts

One restock, as the app logs it. Example data.

Every back-in-stock app has the form. The difference is what happens after.

If one has gone quiet on you before, these are the parts built differently here.

Alerts that went out late, or never
Shopify tells us the moment inventory changes, and every waiting item is re-checked every five minutes as a backstop. The log shows the gap between restock and email, to the second.
Alerts marked “sent” that nobody received
Each email and each text carries its own delivery status from the provider: delivered, delayed, bounced, marked as spam, or the exact send error. If sending stops, the home screen says “Alerts are paused”.
Alerts for items that were still sold out
Before any email goes out, real availability is re-checked across all your locations. No confirmed stock, no email.
Three hundred emails for a restock of five
Set a minimum quantity before anything sends, or email a few shoppers per unit in stock and the next group after a delay. You choose the rule.
The feature you need, one plan up
Every feature is on every plan, including Free. Plans differ only in how many alerts they send a month.

Email, text, and price drops. Same form, same log.

Everything below is on every plan, including Free.

Text alerts
Shoppers can leave a mobile number next to their email, with a consent checkbox that carries the wording carriers require. Texts go out from Reshelf’s verified number the moment you switch SMS on, or from your own Twilio account. STOP replies unsubscribe automatically, and every text shows in the log with its delivery status.
Price-drop alerts
On items that are in stock, the same block can offer “tell me if the price drops”. When the price goes below what the shopper saw, they get an email or text with the old and new price.
Klaviyo sync
Connect your Klaviyo key and every request and alert lands on the shopper’s profile as an event, so you can build your own flows on them. Newsletter opt-ins join the list you choose.
Shopify Flow
Two triggers, “request created” and “alert sent”, for tagging customers, Slack posts or your own reports.

What your shopper sees

The block on a Dawn product page with every option on, and the messages the app sends, all rendered from the app’s own templates with a sample product.

The product page: vendor, title, price with a Sold out badge, quantity, a greyed-out Sold out button, Buy it now, then the form: Sold out? Get an email when it's back, with an email field, a mobile number field, a text consent checkbox, a news checkbox and a Notify me button
Sold out: under the buy buttons, in the theme’s own type and spacing. Nothing else changed.

A form that only appears when it should

  • Shows for the selected variant while it is sold out, and hides itself the moment it is available.
  • Heading, button text and colours are yours to set in the theme editor. No code.
  • Seven languages built in, matched to the storefront language.
  • Optional mobile number field with the consent wording carriers require, for text alerts.
  • The “news and offers” checkbox is optional and off by default.
The same product page while in stock: Add to cart and Buy it now buttons, then the form with the heading Want it for less? We'll let you know if the price drops, an email field, a mobile number field, the consent checkbox and a Notify me button
In stock: the same block asks a different question, if you switch price-drop alerts on.

Price-drop alerts on items that are in stock

  • Off by default. Turn it on in the theme editor and the block appears on in-stock variants too.
  • The alert goes out only when the price is below what the shopper saw when they asked.
  • Heading is yours to change; the form fields and consent are shared with the restock form.
  • If the item sells out first, the shopper is offered a back-in-stock alert instead.
The price-drop email: the store name as sender, the subject Alpine Snowboard (158 cm) just dropped in price, the message with the old and new price, a Shop now button and a Cancel my request link
The price-drop email. The back-in-stock email is the same shape, with your restock wording.

An email that reads as yours

  • Your store’s name as the sender; replies go to your store email.
  • The product image and a link to that exact variant, not the collection page.
  • Subject line and wording edited in Settings, with a live preview, for restocks and price drops separately.
  • One-click cancel, plus a List-Unsubscribe header so mail apps show their own button.
A text-message thread from the store's toll-free number: a back-in-stock text with the product name and link, then a price-drop text with the new price, each ending with Reply STOP to opt out
The texts, exactly as the app composes them from the default wording.

A text that carriers will deliver

  • Short, from your store’s name, with a link straight to the variant.
  • The STOP line is added automatically if your wording leaves it out; a STOP reply unsubscribes at once.
  • Sent from Reshelf’s verified toll-free number with no setup or wait, or from your own Twilio number.
  • Each text shows in the alert log with the status the carrier reports back.

What happens when stock comes back

Five steps, each one recorded. Most apps stop at “email sent”.

Your sending rules

Wait until a minimum quantity is in stock before anyone is told. Or send in groups: a set number of shoppers per unit available, with the next group after a delay you choose. Oldest requests go first.

  1. Shopify reports the inventory change

    Usually within seconds. As a backstop, every waiting item is also re-checked every five minutes.

  2. Availability is confirmed

    Across all your locations, respecting “continue selling when out of stock”. Nobody is emailed about an item that is still sold out.

  3. Emails and texts go out under your rules

    Threshold or per-unit batching, in your wording, from your store’s name.

  4. Delivery is tracked per message

    Delivered, delayed, bounced or marked as spam, straight from the email and SMS providers. A spam complaint or a STOP reply unsubscribes that shopper automatically.

  5. Sales are attributed

    An order for that variant by that shopper within 14 days of the alert counts as revenue from alerts.

Every alert, on the record

The alert log inside the app. One row per email or text: who, what, why it was sent, how long after the restock, and what the email or SMS provider reported back. When something fails, the reason is in the row.

Alert logExample data
Alerts sent
212
Delivered
98%
Bounced or spam
3
Send failures
1
Restock to alert, median
38 s
ShopperProductCauseRestock detectedAlert sentStatus
[email protected]Alpine Snowboard, 158 cmRestockThu 14:03:12Thu 14:03:53 (+41 s)Delivered
+1 602 555 0187 (text)Alpine Snowboard, 158 cmRestockThu 14:03:12Thu 14:03:53 (+41 s)Delivered
[email protected]Alpine Snowboard, 158 cmRestockThu 14:03:12Thu 14:03:54 (+42 s)Delivered
[email protected]Alpine Snowboard, 158 cmRestockThu 14:03:12Thu 14:03:54 (+42 s)DelayedRecipient server busy, retrying
[email protected]Trail Jacket, MSend nowWed 11:20:05Wed 11:20:07 (+2 s)BouncedMailbox does not exist
[email protected]Trail Jacket, MFollow-up batchTue 08:51:40Tue 09:06:41 (+15 min)Marked as spamUnsubscribed automatically
[email protected]Wool BeanieRe-checkMon 16:02:00Mon 16:02:03 (+3 s)Send failedEmail service returned 422; request back to waiting

Shopper emails and phone numbers are stored encrypted and deleted on a schedule. GDPR data requests from Shopify are handled automatically. Every email has a one-click unsubscribe and every text honours STOP.

Nothing fails quietly

The home screen checks itself every time you open it and says plainly when something needs you. Next to it, what the alerts earned.

Status
  • OKAlert sending is runningLast check-in 40 seconds ago.
  • CheckForm last seen 3 days agoIt may have been removed from the theme, or the store has had no product-page traffic.
  • OKNo send failures in the last 24 hoursEvery alert handed to the email and SMS services was accepted.
  • OKDelivery tracking onDelivered and bounced statuses appear in the alert log.
  • OKStore permissions grantedThe app can read products, inventory and orders.
  • OKLast inventory update received 2 minutes agoRestocks reach us instantly through Shopify; a full re-check of waiting items also runs every 5 minutes.
Last 30 daysExample data
Revenue from alerts
$4,310
Orders from alerts
19
Alerts sent
212
Conversion rate
9%

An order counts when a shopper buys the item within 14 days of their alert.

Most requested
Alpine Snowboard, 158 cm27 waitingSend now
Trail Jacket, M14 waitingSend now
Wool Beanie9 waitingSend now

The full list, oldest request first, exports as CSV. Useful before you reorder.

Two Shopify Flow triggers ship with the app, “Back-in-stock request created” and “Back-in-stock alert sent”, so you can build your own automations on top.

Pay for alerts sent, not for features

Every plan has everything. The only difference is how many alerts go out a month. Billed by Shopify on your regular invoice; cancel any time from the app.

Free

$0 forever

Every feature included

50 alerts a month

No card needed.

Starter

$9 a month

or $79 a year

1,000 alerts a month

14-day free trial.

Growth

$19 a month

or $159 a year

5,000 alerts a month

14-day free trial.

Unlimited

$29 a month

or $249 a year

No cap on alerts

14-day free trial.

  • Signups are never capped. Shoppers can always ask to be told. Only alerts sent count, email or text alike.
  • Texts cost 2¢ each to US and Canadian numbers, other countries by destination, billed by Shopify with your plan. Every store gets 5 free. You set a monthly cap; texts pause there and resume when you raise it, never dropped. Emails are never charged per message.
  • Paid plans are never blocked at the cap. We keep sending and ask you to move up.
  • On Free, requests over the cap wait where you can see them, and go out the moment you upgrade, or on the 1st.

Questions merchants ask

Does it work with my theme?

Any Online Store 2.0 theme (Dawn and everything built since 2021). You add the block in the theme editor; there is no code to paste and nothing is left behind if you uninstall.

Where do the emails come from?

From our sending domain, with your store’s name as the sender and replies going to your store email. They do not count against your Shopify Email or Klaviyo limits.

Does it send SMS?

Yes. Turn on the mobile number field in the theme editor and shoppers can ask for a text, with a consent checkbox. Texts are sent from Reshelf’s carrier-verified number right away, marked “via Reshelf”, or from your own Twilio account if you want texts in your name alone. Push notifications are not a feature.

Can shoppers ask for a price-drop alert?

Yes. Switch it on in the theme editor and the block offers it on in-stock items. The alert goes out when the price is below what the shopper saw, by email or text, with both prices in the message.

Does it work with Klaviyo?

Paste a private API key on the Integrations page. Requests and sent alerts become events on the shopper’s Klaviyo profile, and newsletter opt-ins join the list you pick. Build your own flows on top, including Klaviyo SMS.

Variants, multiple locations, pre-orders?

Alerts are per variant, availability is checked across all locations, and “continue selling when out of stock” is treated as in stock. Pre-orders are not a feature.

What about shopper privacy?

Emails and phone numbers are stored encrypted, used only for the alert they asked for, and deleted on a schedule. Every email has a one-click unsubscribe and every text honours STOP. Shopify’s GDPR data requests are handled automatically. Details are in the privacy policy.

What happens if I go over my plan?

On a paid plan, nothing stops: alerts keep going out and the app asks you to move up. On Free, requests over the cap wait in a visible queue and are sent when you upgrade or on the 1st of the month.

Install Reshelf

Reshelf is being reviewed for the Shopify App Store. Already have it? Open it from your store.