Quick answer

First check whether frequency is intentionally set to every refresh. If it is not, identify whether suppression is scoped to a session, a visitor, a close action, a completed offer, or a repeat-after date. Then confirm the same browser context can retain the required preference state.

Closing is not always conversion.

A frequency rule may treat display, close, CTA click, and completed offer differently. Merchants should know which event starts suppression.

Understand what each frequency mode promises

ModeExpected behaviourCommon misunderstanding
Every refreshThe campaign may display on each eligible page load.Closing it is expected to suppress the next refresh.
Once per sessionOne display during the current browser session.Closing and reopening the browser always preserves the same session.
Once per visitorSuppresses repeat display while the allowed visitor preference state remains available.The app can identify a visitor after storage is cleared or blocked.
Repeat after daysAllows a new display after a specific eligibility time.The delay starts from publication rather than the configured display, close, or completion event.

PrimePopup keeps the trigger and frequency controls separate so “show after 20 seconds” does not get confused with “show only once per session.”

Check storage, consent, and browser context

Visitor-level suppression normally requires a permitted way to remember state. Private browsing, manually cleared site data, browser privacy protection, a different domain, or consent rules can change what the storefront is allowed to retain.

  • Confirm you are using the same storefront domain.
  • Check whether you switched between preview and published-theme URLs.
  • Check whether the consent state changed.
  • Check whether the browser cleared site data on exit.
  • Do not use raw Shopify cookies directly; follow Shopify’s Customer Privacy API.

Shopify explains that nonessential processing can be unavailable by default in consent-required regions. See the Customer Privacy API documentation.

Make sure there is only one popup system

A merchant may close PrimePopup while a theme newsletter, Shopify Forms, email platform, discount app, or old theme snippet opens a visually similar popup on the next page.

  1. Temporarily disable PrimePopup on a duplicate theme.
  2. Navigate through several pages.
  3. If a popup still appears, identify the second source.
  4. Check App embeds, theme sections, theme code, and installed marketing apps.
  5. Remove or configure the duplicate system instead of increasing z-index.

Two apps can also store their own independent suppression states, so closing one will not silence the other.

Avoid common testing traps

  • Incognito creates a separate storage context and may show the popup again by design.
  • Clearing cookies or site data removes visitor suppression.
  • Changing the campaign version may intentionally reset campaign-specific state.
  • Using every refresh for testing and forgetting to change it will reproduce the test configuration in production.
  • Opening a different subdomain can create a separate storage scope.
  • Theme-editor preview and published storefront visits are not always equivalent.

Use this correction sequence

  1. Identify which app or theme feature rendered the popup.
  2. Confirm the published campaign’s frequency configuration.
  3. Define whether display, close, click, or completion starts suppression.
  4. Confirm the browser can retain the required state under the current consent.
  5. Test two navigations in one normal session.
  6. Test a new session without clearing site data.
  7. Test the repeat-after threshold only with a controlled test clock or supported preview tool.
  8. Record the diagnostic reason for both displayed and suppressed requests.

If PrimePopup reports a repeat display outside the configured rule, send the campaign name, frequency setting, browser, tested URLs, consent state, and timestamps to support@primepopups.com. Do not include shopper identifiers or access tokens.