Skip to main content

Why Isn’t My Widget Showing?

Troubleshoot Rebuy widgets not showing, loading, or appearing on your storefront. Covers widget status INITIALIZING, HIDDEN, and READY but not visible, datasource issues, popup widget triggers, Rebuy Preview Mode diagnostics, and environment conflicts.

Written by Christian Sokolowski

Confirm the Rebuy Connector is enabled in Shopify

Confirm the Rebuy Connector is enabled in Shopify. The Rebuy Connector must be active in your Shopify theme for any Rebuy features to load.

To verify: in your Shopify admin, go to Online Store > Themes > Customize your live theme > App Embeds, and confirm the Rebuy Connector toggle is turned on. Save if you make any changes.

Confirm the Widget Is Installed in Shopify

A Rebuy widget won't display on your storefront until it's been installed in your Shopify theme. Creating a widget in the Rebuy admin is only the first step — installation is a separate action.

In the widget editor, click the Install button in the top navigation bar. This opens a step-by-step installation guide specific to your widget type and theme setup. Follow the guide to place the widget in your Shopify theme using either the App Blocks method (recommended for Shopify 2.0 themes) or manual code placement.

For full installation documentation, see: Installing Rebuy Widgets via App Blocks

Cart widgets (such as cart upsell and cross-sell widgets) are installed directly within the Smart Cart editor — they do not require a separate Shopify theme installation. If you're working with a cart widget, manage its placement from the Smart Cart settings instead.

Checkout, Thank You, and Order Status page widgets are installed through the Shopify Checkout Editor, not the theme editor. To verify or install: go to Shopify Admin > Settings > Checkout > Customize, then locate the Rebuy Smart Component app block in the editor. Confirm the correct widget ID is entered in its settings. These widget types will not appear in Rebuy Preview Mode — the Shopify Checkout Editor is the only place to verify their installation.


Use Rebuy Preview Mode to Diagnose Widget Status

Use Rebuy Preview Mode to identify your widget's current status. Navigate to your storefront with Rebuy's Preview Mode active and click the REBUY DATA button to see a list of all installed widgets and their statuses.

What each status means:

READY — The widget is installed and rendering. If it's still not visible on the page, see Widget Is READY But Not Visible.

INITIALIZING / REINITIALIZING — The widget is failing to render, usually due to a code conflict. See Widget Status: INITIALIZING / REINITIALIZING

HIDDEN — The widget has loaded but a built-in condition is preventing it from displaying. See Widget Status: HIDDEN.

Not listed — The widget isn't installed on the page you're currently viewing. Keep in mind that Preview Mode is scoped to the page you're on — a product page widget won't appear in the list if you're browsing a collection page, for example. Make sure you're on the correct page type before concluding the widget isn't installed. If you're on the right page and it's still not listed, click the Install button in the widget's settings and follow the installation guide.

Note: Post-purchase widgets, checkout widgets, and Thank You / Order Confirmation page widgets will not appear listed in Preview Mode's Rebuy Data panel.


Widget Status: INITIALIZING / REINITIALIZING

A widget stuck on "initializing" or "reinitializing" means something interrupted the loading process before the widget could fully render.

There are a few distinct causes:

A network request failed. When a widget loads, it makes requests to fetch its settings and product data. If either of those requests fails, the widget stops loading and stays stuck. You can confirm this by opening your browser's developer tools and checking the Network tab for any failed requests. A slow or intermittent connection can also trigger this.

The widget's container element is missing from the page. If the widget code was added to the theme but the page structure doesn't include the element the widget is looking for, it has nowhere to render. This can happen with certain theme templates or custom page layouts where the expected container isn't present.

A JavaScript error broke the loading chain. A conflict with a third-party script, theme code, or custom JavaScript can throw an error mid-load and prevent the widget from completing initialization. To isolate this:

  • Go to Smart Cart Settings > Advanced > Code Boxes and temporarily remove any custom JavaScript, then retest.

  • Go to Widget Settings > Advanced > Code Boxes and do the same.

  • Check the widget's Advanced > Custom JS Callbacks settings and remove any code there as well.

  • Check your Shopify theme for conflicting 3rd party apps & scripts.

Duplicate your Smart Cart or Shopify theme before removing code so you can restore it easily.


Widget Status: HIDDEN

A Rebuy widget shows a HIDDEN status in Preview Mode when a built-in condition has determined it should not render for the current visitor or context. This is distinct from installation or datasource issues — the widget loaded successfully, but a rule is actively suppressing it.

View limit reached. The most common cause is that the widget has a view limit enabled and the visitor has already seen it the maximum number of times allowed. To check, open the widget's settings and review the View Options section. If view limiting is enabled, you can either increase the limit, reset it, or disable it entirely depending on your intended behavior.


Widget Status Is READY But Not Visible

A "READY" status means the widget rendered successfully, but nothing appears on the page. This is usually a settings, datasource, or placement issue.

Live mode is disabled (Preview Mode still on). If the widget is not toggled to live — meaning Preview Mode is still enabled in its settings — it will show as READY in the Rebuy Data panel but won't display to actual customers. This is a common oversight when launching a new widget. Confirm the widget is set to live in its settings.

Datasource not returning products. If the widget is rendering but empty, the datasource may not be returning anything for the current context. See Rebuy Widget Data Source Issues for common causes and how to use the Datasource Previewer to diagnose.

Display set to "none" in Layout settings. Check the widget's Layout tab to confirm visibility isn't being overridden by a CSS display setting.

Dynamic placement overriding App Block position. If a widget's App Block placement in Shopify's Theme Editor looks correct but the widget is still rendering in the wrong location — or not appearing at all — check whether Dynamic Placement is enabled in the widget editor (Advanced tab > Dynamic Placement). An active dynamic placement setting will override the App Block placement entirely, controlling where the widget gets injected into the page. Disable it or update the selector to resolve the conflict.


Rebuy Widget Data Source Issues

If a Rebuy widget is installed and rendering but showing no products — or not showing at all when you'd expect it to — the datasource is often the culprit. The Datasource Previewer is the best tool for diagnosing this. It lets you simulate different customer scenarios and see exactly what products your datasource rules would return before anything goes live.

Where to find it: Rebuy Admin → Data Sources → select your datasource → Preview Ruleset. Datasource Previewer documentation

Example screenshot above shows where the Data Source Preview Ruleset simulator is located in the Data Source settings.

Common datasource issues to check:

Rules not matching the current page context. Datasource rules are evaluated against the page the widget is on. If a rule is set to trigger on a specific product, collection, or URL and the current page doesn't match, no products will be returned. Use the Previewer to simulate the exact page context and confirm whether the rules are firing.

No products returned — out-of-stock items. If the datasource is configured to exclude out-of-stock products and the intended products are OOS, the widget will have nothing to display. Check the datasource's Filter out of stock products setting and verify product availability.

No products returned — datasource input (IF) condition not matching. In a Rebuy datasource, rules follow an IF → THEN RETURN structure where the IF condition determines when the rule fires — if nothing matches, the widget returns no products and stays hidden. For Product Page (PDP) widget types (Product Page, Dynamic Bundle, Addon widgets), the IF rule evaluates context using the product ID of the current page, not the variant ID. This means if the IF rule is scoped to a specific variant, Rebuy can't match it and the widget won't render. The fix is to use IF Products Contains Any with all variants selected.

Worth noting: while the input (IF) side can't be variant-specific on Product Page (PDP) widgets, the RETURN side can — so you can still control which specific variants get recommended. Learn more about Data Source input (IF) conditions here: IF conditions: setting up your data source rules

The screenshot example above shows a Data Source Rule input (IF) condition. IF the input product Contains Any variant of the "Ski Helmet" product, THEN RETURN a specific variant (1 of 4) of the "Snowboard" product.

No products returned — product not published or wrong Shopify status. Rebuy evaluates each product's Shopify lifecycle status at query time. If a product isn't published to the Online Store sales channel, or has a status that Rebuy blocks, it won't be returned by the datasource regardless of how the rules are configured. Here's how each Shopify product status is handled:

Shopify Status

Rebuy Behavior

Active

Returned in all data source responses

Draft

Blocked from all data source responses, including explicit specific product returns. Draft products also cause a 422 error at Shopify checkout.

Archived

Blocked from all data source responses

Unlisted

Filtered from AI, Top Sellers, collections, tags, and algorithmic ranking responses. Can still be surfaced via an explicit specific product return rule — useful for GWP or hidden SKU setups.

If a product isn't appearing in widget results, confirm it's Active and published to the Online Store sales channel in Shopify before troubleshooting the datasource rules.

Rules look correct but products still aren't returning — stale cache. The datasource may be serving outdated data from a previous sync. Clear the cache by going to Rebuy Settings > Status > Data Source Cache > Clear Cache, or use the Clear Cache button directly within the datasource settings.

Too many rules causing the datasource to not save or load. Datasources with more than 30–50 rules can become too slow to evaluate or fail to save new rules at all. If the datasource is large, consider splitting it across multiple datasources and separate widgets.

Rules returning the same products on every page. If an AI or endpoint-based rule isn't scoped correctly, it may return the same product set regardless of page context. Check that input product rules and endpoint configurations are specific enough to vary by page.


Environment Issues Preventing Rebuy Widgets from Loading

External factors like browser settings, privacy tools, and third-party Shopify apps can block Rebuy widgets from loading entirely — even when everything in the Rebuy admin looks correctly configured.

Cookie consent popups: If the store has a cookie consent popup that must be accepted before Rebuy loads, customers who decline or dismiss it won't see any Rebuy widgets. This is controlled by the store's privacy settings, not Rebuy. A developer will need to adjust how third-party scripts are classified in the store's cookie configuration.

Ad blockers and VPNs: Strict ad blockers and VPNs can prevent Rebuy scripts from loading entirely, affecting both widgets and the Smart Cart. This is outside Rebuy's control — the best workaround is to disable the blocker when testing, and report the site to the blocker's provider so it can be removed from their block list.

Third-party app conflicts: Certain Shopify apps — particularly those for bundles, gifts, quantity limits, or custom cart drawers — may conflict with Rebuy and prevent widgets from displaying. To isolate the issue, duplicate your Shopify theme and systematically disable third-party apps one at a time, testing after each deactivation.

Rebuy support covers issues directly related to Rebuy features. Conflicts involving third-party apps or custom theme code are outside standard support scope.


Rebuy Widget Trigger and Popup Display Issues

Some widgets fail to appear not because of installation or datasource problems, but because of how or when they're triggered — particularly popup widgets, which rely on specific events or DOM conditions to fire.

Widgets not appearing on first page load (quick-load themes): Some Shopify themes use a "quick-load" method that can prevent Rebuy widgets from initializing on the first page visit — the widget only appears after a page refresh. To work around this, add a manual trigger in the widget's Advanced > READY code box. The listener should watch for the rebuy:cart.add event and call widget.show() in response.

Popup widget not visible due to theme render order: Some themes render elements in an order that causes popup widgets to not appear at all. If a popup widget is installed and showing READY but nothing appears, try using dynamic placement to force it into the correct position in the DOM. In the widget editor, go to Advanced tab > enable Dynamic Placement, set the Placement Selector to body, set the Placement Location to append, and apply this to all screen sizes. That typically resolves it.

The screenshot example above shows a product cross-sell popup widget with dynamic placement enabled, configured to append to the body element.


Frequently Asked Questions

Where do I start if my Rebuy widget isn't showing?

The best starting point when a Rebuy widget isn't showing is to check its status using Rebuy Preview Mode. Open your storefront with Preview Mode active, click the REBUY DATA button, and find your widget in the list. The status — READY, INITIALIZING/REINITIALIZING, HIDDEN, or not listed — tells you exactly which troubleshooting path to follow. If the widget doesn't appear in the list at all, confirm you're on the correct page type, since Preview Mode only shows widgets installed on the page you're currently viewing.

Why is my Rebuy widget showing as READY but nothing appears on the page?

A Rebuy widget reporting READY means it rendered successfully, but it can still be invisible for a few reasons. The most common is that the widget is still in Preview Mode (not toggled to live), so it shows as READY in the Rebuy Data panel but won't display to actual customers. Other causes include the datasource not returning any products, a CSS display override in the widget's Layout settings, or a Dynamic Placement setting conflicting with the App Block position. See the Widget Is READY But Not Visible section for the full checklist.

Why is my Rebuy widget status showing as HIDDEN in Preview Mode?

A Rebuy widget shows a HIDDEN status when a built-in condition is preventing it from rendering for the current visitor or context. The most common cause is a view limit — if view limiting is enabled and the visitor has already seen the widget the maximum number of times, it will be hidden. Check the widget's View Options settings to review or adjust the limit. Note that post-purchase, checkout, and Thank You page widgets won't appear in the Rebuy Data panel at all, so a missing widget on those page types is a separate issue.

Why is my Rebuy widget status stuck on "initializing" or "reinitializing" and not rendering?

A Rebuy widget stuck on "initializing" or "reinitializing" means the loading process was interrupted before the widget could fully render. The most common causes are a failed network request (check the browser's Network tab for errors), a JavaScript conflict from custom code in the widget's or Smart Cart's code boxes, or a missing container element in the page's HTML. In some cases, a widget type set to "placeholder" will stay in the initializing state permanently — this is intentional. See the Widget Status: INITIALIZING/REINITIALIZING section for full troubleshooting steps.

My widget is installed and the datasource looks correct, but no products are showing — why?

When a Rebuy widget is installed and rendering but showing no products, the datasource is usually the cause. Common reasons include rules that aren't matching the current page context, out-of-stock products being filtered out by exclusion settings, a missing input product ID on non-standard pages, or a stale datasource cache serving outdated results. Use the Datasource Previewer (Rebuy Admin → Data Sources → select your datasource → Preview Ruleset) to simulate the page context and see exactly what the rules are returning.

Why aren't my widgets showing in Rebuy Preview Mode?

If no widgets are appearing in the Rebuy Data panel, first confirm that both the Rebuy Connector App Embed is enabled in Shopify (Online Store > Themes > Customize > App Embeds) and that the widget was properly installed on Shopify's side. If those are both true, make sure you're browsing the correct page — Preview Mode only lists widgets installed on the page you're currently viewing.

Can a cookie consent popup or ad blocker prevent Rebuy widgets from loading?

Yes — both cookie consent popups and ad blockers can prevent Rebuy widgets from loading entirely. If a store's cookie consent popup categorizes Rebuy as a non-essential script and a customer declines, Rebuy won't load for that customer. Ad blockers and strict VPNs can also block Rebuy scripts. Cookie consent issues require a developer to reclassify Rebuy in the store's privacy configuration on Shopify's side. For ad blockers, the best workaround is to disable the blocker and report the site to the blocker's provider.


Still Not Resolved?

Before reaching out, test in an incognito or private browser window. This eliminates cached data and any preview-mode visibility that might be affecting your regular session, and shows you what an actual customer would see.

If the issue persists, contact Rebuy Support. When reaching out, include:

  • The widget ID

  • A link to the page where the widget should appear

  • Any browser console errors (a screenshot or recording of the console is most helpful)

  • A screen recording of the issue if possible

Did this answer your question?