Why isn't my Nudgesmart popup showing on the storefront?
Eight quick checks plus a step-by-step diagnostic flow for the most common reasons a popup isn't appearing — and what to fix in your admin.
A popup that won't show up is almost always one of eight things — and seven of them you can fix from the Nudgesmart admin in under two minutes, without touching code or contacting support.
TL;DR
Walk through the Setup Guide on your Nudgesmart dashboard first — nine times out of ten, the theme extension simply isn't enabled and clicking Enable in Theme Editor, then Save, fixes it. If the setup guide shows everything green, open your campaign and check three things in order: status (must be Active), targeting rules (do they match the page you're testing on), and frequency (have you already seen the popup recently?). After that, check the campaign's Analytics tab — if it shows "No analytics data yet," the popup isn't reaching visitors at all and the problem is upstream. The remaining causes — privacy consent, theme conflicts, bot detection, mobile-vs-desktop visibility — are rarer and covered below.
Quick checklist
Run through these eight yes/no questions in order. The first "no" is almost certainly your problem.
- Is the Nudgesmart theme extension enabled in your live theme? (Setup Guide → step 2 should show a green checkmark.)
- Is the campaign's status set to Active? (Campaign list → status pill should read Active, not Draft, Paused, or Archived.)
- Do the campaign's targeting rules match the page you're testing on? (Page URL, country, device, and any custom rules.)
- Has the cooldown for this campaign already been hit on this browser? (If you saw the popup earlier today, the frequency cap may be enforcing.)
- Did you (or your test shopper) accept the analytics consent banner? (Display itself isn't gated, but tracking is — see section 5.)
- Is anything in your theme covering the popup? (Sticky headers, third-party app banners, very high z-index elements.)
- Are you testing as a search-engine crawler or in an unusual user agent? (Bots are auto-suppressed.)
- Does the campaign's device-visibility setting match the device you're testing on? (Some campaigns are desktop-only or mobile-only.)
1 · App embed disabled in your theme
This is by far the most common cause. The Nudgesmart admin can be perfectly configured, the campaign can be Active, and rules can match — but if the theme extension is switched off, nothing renders on the storefront.
The fastest way to check is the Setup Guide on your Nudgesmart dashboard.
Open your Nudgesmart admin and look at step 2 of the Setup Guide: Required: Enable Nudgesmart in your theme so campaigns can display on your store. If it shows a green checkmark, this isn't your problem — skip to section 2. If it shows the Enable in Theme Editor button, click it.
Shopify opens your theme editor with the Nudgesmart app embed pre-selected on the right-hand side. The helper text in the Setup Guide reads: 💡 This opens your theme editor. Just click "Save" to enable. Click Save in the top-right of the theme editor.
Return to the Nudgesmart admin. The button now reads Check Status and the helper text reads: 👆 Click "Check Status" after saving in the theme editor. Click Check Status to verify.
The Setup Guide on the Nudgesmart admin dashboard with step 2 'Enable Theme Extension' showing as incomplete with the 'Enable in Theme Editor' button.
Screenshot coming soon
If the step still doesn't go green, it usually means you saved a different theme (a draft or a copy) rather than your live theme. Open Shopify admin → Online Store → Themes and confirm which theme is published. Then repeat the steps above against the published one. The full walkthrough lives in Enable the Nudgesmart app embed block and Shopify's own theme app embeds documentation covers the underlying mechanism.
2 · Campaign status isn't Active
A campaign has to be Active to render. Drafts, paused campaigns, and archived campaigns are all invisible on the storefront — and it's surprisingly easy to leave a campaign in Draft after editing it.
Open your Campaigns list and look at the status pill on the row for the campaign you're testing. Nudgesmart uses four statuses with these descriptions:
- Active — Campaign is live and showing to visitors
- Draft — Campaign is saved but not active yet
- Paused — Campaign is temporarily stopped
- Archived — Campaign is archived and not active
Only Active campaigns render on the storefront. If your campaign shows Draft, click into it and use the Activate action. If it shows Paused, resume it. If it shows Archived, you'll need to duplicate it into a new campaign — archived campaigns are intentionally read-only.
Campaign list showing status pills: Active (green), Draft (default), Paused (yellow), Archived (red).
Screenshot coming soon
A subtle gotcha: when you edit a live campaign and save, Nudgesmart keeps it Active — but if you cloned a campaign from a template, the new copy starts as Draft. Always double-check the status pill on freshly created campaigns.
3 · Targeting rules exclude the visitor
If the embed is enabled and the campaign is Active but nothing shows, the next most common cause is targeting. The rules are matching nobody — or matching everyone except the page you're testing on.
Open the campaign and walk through each rule on the Targeting tab:
- Page URL — does the rule match? A "URL contains
/products/" rule won't fire on your homepage. - Country / region — geo rules are evaluated against the shopper's IP. Targeting "US only" while testing on a VPN won't show.
- Device type — desktop-only won't render on mobile, and tablets are a separate bucket from mobile.
- Custom audience rules — first-time visitor, cart value above $X, and so on. The narrower the rule, the more visitors it excludes.
Sanity check: temporarily widen everything (all pages, all countries, all devices) and reload your storefront. If the popup now shows, the rule was the problem. Narrow it back down one filter at a time until it stops — that pinpoints the filter that was excluding you.
4 · Frequency cap already hit
Nudgesmart enforces a per-shopper cooldown so the same person doesn't see your popup on every page load. If you've already seen the campaign once today, the cooldown can prevent it from showing again — even though everything else is configured correctly.
Open the campaign and check the Frequency setting on the Targeting tab. If it's set to Once per day or Once per week, and you saw the popup earlier in the same browser, you've hit the cap.
The fastest way to test is to open your storefront in a private/incognito window — that bypasses the cooldown because cooldown timestamps are stored per browser. If the popup shows up there, frequency is your answer.
Frequency settings panel showing 'After visitor converts (email signup, spin, etc.)' radio selected.
Screenshot coming soon
There's also a separate stop-showing rule that can suppress the popup forever for a particular shopper — typically after they've subscribed or claimed a spin-wheel prize. If you tested earlier and submitted your email, the campaign is now permanently retired for that browser. Clear browsing data or test in a different browser. The full rules of the road are in How to control how often a popup shows.
5 · Privacy / consent suppression (display vs. tracking)
This one trips up merchants in GDPR regions. There's an important distinction between display and tracking:
- Display is not gated on consent. Visitors who decline analytics consent still see your popup — by design, since you can't capture emails from visitors who never see the form.
- Tracking is gated on consent. If a visitor declines analytics, their view, click, and conversion are not recorded. Your Analytics page may show fewer impressions than the popup actually got.
So if your campaign's Analytics page shows the empty-state — No analytics data yet. This campaign hasn't received any traffic in the selected timeframe. — there are two possibilities: nobody is seeing the popup (work through sections 1-4), or visitors are seeing it but most have declined analytics (impressions exist, just not recorded).
The Nudgesmart Analytics page with the 'No analytics data yet' empty-state message and a hint to switch to Auto or Demo mode.
Screenshot coming soon
To distinguish: test the popup yourself in a private window and accept the analytics consent banner. If you see the popup but Analytics still reads zero, it's a tracking issue. If you don't see the popup at all, it's a display issue and one of sections 1-4 is the cause.
6 · Theme or app conflict
Sometimes the popup is rendering — it's just not visible. The two common culprits are theme CSS and other Shopify apps competing for the same screen real estate.
The most frequent offender is a sticky header or footer with a high z-index. Some themes use z-index values in the thousands for navigation bars, which can layer on top of a banner-style popup and hide it completely. Live-chat widgets, cookie-consent banners, currency-converter bars, and review-prompt modals can also clash. Only one popup is visible at a time on Nudgesmart — if a competing app's popup is already on screen, Nudgesmart's popup waits until it closes.
Two quick checks you can do without code: temporarily switch your published theme to Dawn (Shopify's default) and see if the popup appears — if it does, your live theme's CSS is the issue. Or pause other apps one at a time and reload the storefront. If a partially-hidden popup persists, ask your theme developer to bump Nudgesmart's stacking order in the theme's CSS rather than editing theme code yourself.
7 · Bot or in-app browser
Search-engine crawlers like Googlebot and Bingbot are automatically excluded from Nudgesmart popups — exactly what you want, since serving popups to crawlers can hurt SEO and confuses bot-driven analytics. This rarely affects real shoppers, but it can confuse testing if you're using a developer tool that spoofs a crawler user-agent or running a headless browser. Test in a normal browser.
Social-media in-app browsers are not excluded. Shoppers tapping links from Facebook, Instagram, TikTok, Snapchat, or Pinterest see your popups normally inside those apps' built-in browsers. Some merchants worry that in-app traffic is being blocked — it isn't.
Campaign device visibility settings showing Desktop, Mobile, Tablet checkboxes.
Screenshot coming soon
8 · Mobile vs. desktop render gap
Every campaign has a device visibility setting with three checkboxes: Desktop, Mobile, Tablet. If a checkbox is off, the popup won't render on that device — full stop, no exceptions. This is the easiest setting to misconfigure because some templates default to desktop-only.
Open the campaign, navigate to the Targeting tab, and confirm the device checkboxes match what you want. Save, then reload your storefront on the device you're testing on.
One related gotcha: time-on-page rules count active time only. If a visitor switches to another tab, the timer pauses. So a 30-second rule fires after 30 seconds of active engagement, not 30 seconds of wall-clock time. Set trigger thresholds with this in mind.
9 · Still stuck? Optional advanced diagnostic
If you've worked through all eight checks above and the popup still isn't showing, email support with your store URL, the campaign name, and the device/browser you're testing on — we'll investigate from our side. Advanced merchants comfortable with browser dev tools can append ?nudgesmart_debug=true to a storefront URL and open the browser console for a per-campaign decision log, but that's a last-resort step. More than 95% of "popup not showing" tickets are resolved by sections 1, 2, or 3 above.
Common pitfalls
- "I enabled the embed but the Setup Guide still says it's not enabled." You probably saved a draft theme rather than your live theme. Confirm the published theme in Shopify admin → Online Store → Themes, then re-run the Enable in Theme Editor flow against that one.
- "I just created the campaign and it's not showing." New campaigns from a template clone start as Draft. Open the campaign and click Activate.
- "It worked in incognito but not my normal browser." You hit the frequency cap or the stop-showing rule in your normal browser. Clear browsing data or wait out the cooldown.
- "Analytics shows zero impressions but I can see the popup." Most of your visitors are declining analytics consent. Display works; tracking is consent-gated.
- "It works on desktop but not on my phone." Check the campaign's device-visibility checkboxes — Mobile is probably off.
- "It used to work, now it doesn't." A theme update or a newly installed Shopify app is the usual cause. Roll back the recent change or test on a Shopify default theme to isolate.
Frequently asked questions
Will my popup show in private/incognito windows?
Yes. Nudgesmart treats private windows as fresh visitors with no cooldown history. Testing in incognito is a great way to confirm a frequency cap is the cause when the popup isn't appearing in your normal browser.
Why does Analytics show fewer impressions than the popup actually got?
Display isn't gated on consent, but tracking is. Visitors who decline the analytics consent banner still see your popup, but their impression isn't recorded. In GDPR regions with low consent rates, the gap can be significant.
Does the popup show to logged-in customers and guests differently?
The same targeting rules apply to both, unless you've configured a rule that depends on customer status. Cooldowns are per-browser, not per-customer-account — a logged-in shopper switching devices will see the popup again on the new device.
Will Nudgesmart popups show during a Shopify checkout?
No. The theme extension loads on storefront pages (homepage, collections, products, cart) but not on Shopify checkout — Shopify restricts third-party scripts there for security and performance reasons.
Can two popups show at the same time?
No — only one popup is visible at a time. If a popup is already open, a second one is suppressed until the first closes. Social-proof notifications and persistent teasers are exceptions, since they're ambient and don't block other popups.