Key takeaways
- One popup per session is the default. A second showing of the same offer is a nag, not a reminder.
- Honour dismiss. If they closed it, wait days, not minutes — and do not reopen it on the next page view.
- Frequency caps must persist across pages in the session. A cap that resets on navigation is not a cap.
- After they add the offered product, never show that popup again. The job is done.
Popups do not fail because the offer is wrong. They fail because the store asked again.
A shopper who closes an overlay has given you an answer. Showing the same overlay on the next collection page is not persistence. It is not listening.
The default cap
One impression per session, per offer. Not per page. Not per trigger. If they saw it after add-to-cart, they have seen it. Exit-intent does not get a second bite in the same visit.
Honour dismiss
Closed means no. Store that for the session immediately, and for a week or two if they are a returning visitor. "Don't show again" checkboxes that do not work are worse than no checkbox.
If your popup has no memory, every page view is a new interruption. Interruptions compound into a brand feeling.
When a second show is allowed
Rare cases:
- They added a different product and you have a different offer that still makes sense.
- They came back days later and the campaign changed.
- They completed a purchase and you are in post-purchase, which is a different surface.
A second show of the same SKU in the same session is not one of the cases.
After a take
If they added the offered product, the popup's job is over. Kill it for the session and for that SKU. Showing "add this" for something already in the cart is how overlays start to look broken.
Frequency capping is not a setting you turn on at the end. It is the product. An offer shown once at the right moment will beat an offer shown four times at whatever moment the script fired.
Frequently asked questions
Won't I miss conversions if I only show the popup once?
You will miss some. You will also miss the conversions you lose when shoppers start treating every overlay as an enemy. Net, one well-timed show beats three.
What about returning visitors?
Cap per session, and add a longer cooldown after dismiss (7–14 days is a reasonable start). Returning visitors who already said no are not a new audience.
Should checkout-initiation popups have a different cap?
They can share the session cap. If they already saw an add-to-cart offer, do not also hit them at checkout start. One offer per visit.
How do I test this?
Track take rate, add-to-cart rate after dismiss, and popup-close rate. If close rate climbs while take rate falls, you are showing it too often.



