Preorder button not showing: the full checklist (Essential Preorder app)
This article is for shop owners whose Preorder button is missing, showing the wrong label, or flickering between "Add to cart" and "Preorder" on the storefront. Work through the checks in order. They are listed by how often they turn out to be the cause.
If you're looking for Notify me / back in stock troubleshooting specifically, see Enable Back in Stock notifications in your store instead.
A hard refresh or incognito window only rules out browser caching. It will not fix a missing app embed or a stock setting mismatch, so don't start there. Start with the checklist below.
1. Turn on the app embed
The Preorder button, badge and Notify me button are all added to your theme through an app embed. If it's off, nothing from the app will show, no matter what your campaign settings say.
- In Shopify admin, go to Online Store > Themes and open the theme editor.
- Click App embeds in the left-hand menu.
- Find the app and turn the toggle on.
- Click Save.
If the app shows a banner reading "Essential Preorder app is not activated yet.", click Activate, then Save on the following page, then click I have done it. You can check the current state any time under App status: it reads Active or Inactive, with a link to manage the embed in the store editor.
2. Match your trigger setting to Shopify's "Continue selling when out of stock"
This is the single biggest cause of a missing or flickering button. Each Show preorder button option has a hard requirement on Shopify's own inventory setting, and the app cannot override it.
| Show preorder button | Requirement | Behaviour |
|---|---|---|
| Always | "Continue selling when out of stock" must be on for out-of-stock products | "Preorder" replaces "Add to cart" regardless of stock levels |
| When product is out of stock | "Continue selling when out of stock" must be on | Switches back to "Add to cart" as soon as inventory is above 0 |
| When product is in stock | "Continue selling when out of stock" must be off | "Preorder" replaces "Add to cart" only while the product is in stock |
Check this per product (and per variant, if the product has variants) under Products > select product > Inventory in Shopify admin. For the full explanation of why this setting exists and how it interacts with overselling, see Shopify "Continue selling when out of stock" and Essential Preorder.
Turning "Continue selling when out of stock" off will hide the Preorder button on out-of-stock products immediately. If you only meant to fix overselling on one variant, use the checker in step 4 instead of editing the master setting.

3. Confirm the campaign is live and the product is in it
- Open the campaign and check Status, scheduling. It will be Live, Scheduled, or Draft. A Draft campaign is never visible to customers. Republishing or refreshing the storefront will not change that.
- If a scheduled campaign has already ended, its summary reads "Preorder ended on [date]. Click Publish to reactivate." You must click Publish. An ended campaign does not restart on its own.
- Open the product list inside the campaign and confirm the product is actually added to it. Creating a campaign does not automatically include every product in your store.
- Confirm the product itself is set to Active, not Draft, in Shopify admin.
4. Run the built-in inventory policy checker
Instead of checking each product's inventory setting one by one, use the checker built into the app. Open the campaign's Preorder products tab. If any products conflict with your trigger setting, you'll see one of these banners:
- Preorder button may not show for some products: some products have "Continue selling when out of stock" set the wrong way for your trigger.
- Some products allow overselling: the opposite mismatch, which lets customers buy out-of-stock stock as a normal purchase instead of a preorder.
- Preorder button may not show for some products, and some products allow overselling: both issues, split across different products.
Use the bulk actions offered on that banner: Turn ON "Continue selling", Turn OFF "Continue selling", or Turn ON/OFF "Continue selling" accordingly. Use them to fix every affected product at once, rather than opening each product page individually. If you have more than one page of products, check the other pages too, since the checker only scans the page you're viewing.
If the campaign itself isn't published yet, you'll also see "Continue selling" for unpublished campaign. That notice reminds you that until the campaign goes live you are controlling the setting yourself, so turn it off on unpublished campaigns to avoid overselling.
5. Check where the button is set to display
Go to Preorder → Settings → General settings and click Manage. Check Show preorder button on. Each placement is a separate toggle:
- Product pages
- Product lists in collection, homepage and search pages
- Featured products
- Quick buy modals: this placement requires the Lite plan or above.
If a placement is switched off, the button will never show there, regardless of stock or campaign status. Use Do the buttons appear on selected pages? Preview in store to open your storefront and check each placement directly.

6. Two buttons showing, or the wrong one, on a product in both campaign types
If a product is covered by both a preorder campaign and a back-in-stock campaign, you control what shows on the back-in-stock campaign, Back in stock products tab, under If a product is in preorder and back in stock campaigns:, set to either Show Notify me and preorder buttons together or Show only preorder. If you're seeing both buttons stacked or overlapping and only want one, switch this to Show only preorder.

7. Theme or app conflicts
Some product options and personalisation apps rebuild the "Add to cart" button after the page finishes loading. When that happens, it can overwrite or hide the Preorder button, or cause it to flicker between "Add to cart" and "Preorder". The app cannot control what other apps do to the buy button after load. The nearest workaround is checking whether your specific product options app is listed as compatible, and adjusting load order if it is. See Which Product Options Apps Work with Essential Preorder for the current compatibility list.
On custom or heavily edited themes, the app embed sometimes doesn't reach every buy-button block automatically (for example, buttons on a custom homepage). If the Preorder button shows correctly on the product page but not elsewhere, this is the likely cause. Contact support with the page URL and ask them to check embed placement for that block.
8. Badge, price or deposit text missing (button shows, but something else doesn't)
- Badge not showing: confirm the badge option is switched on in the campaign's Content tab. Badge position itself is not a merchant setting. Contact support and ask them to adjust the badge's style and position for your theme.
- Discount/strikethrough price not showing: confirm the discount is set on the campaign’s Content tab and, for lists and quick buy modals, that Preorder discount is on under Preorder → Settings → General settings → Manage.
- Works on one variant, not another: a variant that sits in two published campaigns follows both. If either campaign needs “Continue selling” on, it stays on. Check Home → Activity log to see which campaign changed it.
- Deposit/partial payment text not showing: see Managing Preorder Partial Payments for the settings that control this text.
If you need to target any of these elements with custom CSS, the storefront markup carries data attributes you can select directly, for example data-essential-preorder-element="button", data-essential-preorder-element="badge-container", data-essential-preorder-element="badge-text", and data-essential-preorder-element="button-compare-at". An active preorder container also carries the class essential-preorder-container-active.
Other things to rule out
| Symptom | Likely cause |
|---|---|
| Button never showed, even in your own browser | App embed off. See step 1 |
| Button showed, then disappeared once stock hit 0 | Trigger set to "When product is in stock" while "Continue selling" is off. Check step 2 |
| Works on one variant, not another | "Continue selling when out of stock" set per-variant, not per-product. Check step 2 and the checker in step 4 |
| Works on the product page but not in collection grids | "Product lists in collection, homepage and search pages" toggle off. See step 5 |
| Stock shows available but button still says preorder or vice versa | Stock counted only comes from locations with fulfilment enabled: see Why is Preorder Button not Showing? Check Location Fulfillment Settings |
| You uninstalled and reinstalled the app | The button only works while the app is installed and the embed is re-enabled. Repeat step 1 after reinstalling |
Still stuck?
If you've been through the checklist above and the button still isn't showing, contact support and include: the product URL, the campaign name, and a screenshot of the Show preorder button setting for that campaign. This lets support check your specific theme placement without needing back-and-forth on the basics first.