Webflow sync, pageviews & more.
NEW

How can I fix the issue where a pop up appears every time I go to the home page after changing the trigger to load in Webflow?

TL;DR
  • Change the popup trigger from basic "Page Load" to a conditionally triggered system using custom code and sessionStorage/localStorage.
  • Use JavaScript to check if the popup has already been shown and only run the interaction if not, since Webflow lacks native session-based triggers.

If a popup appears every time you return to the homepage after changing the trigger to “Page Load,” it likely means the interaction is set to trigger on every visit—not just once per session or user lifecycle. Here's how to fix it.

1. Check Your Page Load Trigger Settings

  • Open your homepage in Webflow Designer.
  • Go to the Interactions Panel (lightning icon).
  • Under Page Trigger, verify if you have a “Page Load” interaction configured (e.g., “Popup In”).
  • If yes, make sure you understand it’s triggered every time the page loads, not just on the first visit.

2. Change the Trigger to Only Fire Once

  • Webflow’s native interactions do not include built-in session or cookie-based logic, so by default, any interaction tied to page load will occur on each visit.
  • To prevent that, you have two primary options: use custom code (to track if the popup has already appeared) or use a manual trigger (like a button or scroll).

3. Prevent the Popup Using Local Storage or Session Storage

  • Add custom code in Page Settings > Before tag to store a flag when the popup has shown.

Example:

  • Set a key in sessionStorage (so it resets when the browser session ends), or localStorage (persists across sessions).
  • Example inline logic (in concept):
    Check if the key exists. If yes, do nothing. If no, run interaction and set the key.

4. Modify the Interaction to Only Trigger with Condition

  • Unfortunately, Webflow doesn’t support conditional interaction logic natively, so to integrate the above storage logic:
  • Wrap your popup element inside a div block (e.g., #popup-wrapper).
  • On page load, use custom code to check the value in sessionStorage.
  • If the key is not set, manually show the element and trigger animation using Webflow’s JavaScript API (Webflow.require('ix2').init()), or by toggling visibility via JavaScript and letting Webflow animate it.

5. Alternative: Use a Click Trigger Instead

  • If your use case allows, consider triggering the popup with:
  • A Timed Delay after Page Load (only once per session using storage logic).
  • A User Interaction (like clicking a button or reaching a section).

Summary

To stop a popup from showing every time on homepage load, switch from a simple “Page Load” trigger to a conditional system using sessionStorage/localStorage and custom code. Webflow does not natively support “run once per session” interactions, so use a code workaround or modify the trigger type.

Rate this answer

Other Webflow Questions