Pop-up Frequency Capping: How Often Is Too Often?
Cookie rules for repeat visitors, what to do after a dismissal, and the cap that stops a pop-up eroding return traffic.
On this page
The short version
- The default in most tools is a session cookie, which means a dismissal expires when the browser closes. That is not a frequency cap.
- A dismissal and a conversion need different suppression. Someone who subscribed should never see it again; someone who said no should not see it for weeks.
- Cookies get cleared, and increasingly get expired by the browser within days. Anything you actually rely on has to survive that.
Frequency capping is the difference between a pop-up that is tolerated and one that is resented, and it is almost always left at whatever the tool shipped with.
The default is a session cookie. That means a reader who dismissed it this morning meets it again this afternoon, and again tomorrow, indefinitely.
Four states, four different rules
| Reader state | Suppress for | Why |
|---|---|---|
| Subscribed via the pop-up | Permanently | They said yes; asking again is absurd |
| Subscribed elsewhere on the site | Permanently | Requires a shared record between tools |
| Dismissed once | 2-4 weeks | A no that expires in an hour is not a no |
| Dismissed twice or more | Several months, or never | They have answered clearly |
| Never seen it | n/a | The only state where it should fire |
The second row is the one that fails on real sites: the pop-up tool and the email platform are usually separate systems with no shared record, so a subscriber who joined via an inline form keeps being asked to subscribe.
Counting dismissals, not just recording them
A single boolean — seen or not seen — cannot distinguish someone who dismissed once from someone who has dismissed five times. Those deserve different treatment, and the second group is the one generating whatever ill will your pop-up produces.
Storing a count and a last-shown date is barely more work and lets the window escalate: two weeks after the first dismissal, three months after the second, never after the third. That escalation is the single most respectful thing you can do with this feature.
Capping across pop-ups, not per pop-up
Tools cap per campaign, so a site running three pop-ups can show a visitor three interruptions while every individual cap is being honoured.
The cap that matters is per visitor, across everything. One interruption per visit, one per period, whichever pop-up it happens to be — and if two are eligible, the more relevant one wins rather than both firing.
Known readers deserve better than a cookie
Anyone who arrives from one of your own emails is identifiable — the link can carry a parameter that says this person is already a subscriber. That is a far more reliable signal than a cookie, and it is usually not wired up.
The result is the most avoidable version of this failure: a subscriber clicks a link in your newsletter, lands on the article, and is asked to subscribe to your newsletter. Every reader who has experienced that has drawn the obvious conclusion about how much attention is being paid.
Suppressing on a parameter in your own email links takes minutes and removes the single most embarrassing case. Store the result so it survives the session, and the same reader stays suppressed when they return directly.
Frequency cap check
- Suppression is measured in weeks, not sessions
- Subscribers are excluded regardless of where they subscribed
- The dismissal count is stored, not just a flag
- The window escalates with repeated dismissals
- The cap applies across all pop-ups, per visitor
- State survives a cookie being expired early
- Someone has tested it by dismissing and returning the next day
Frequently asked questions
How long should the first suppression be?
Two to four weeks for most sites. Long enough that a returning reader is not immediately re-asked, short enough that someone who dismissed in a hurry gets another chance eventually.
Should a conversion on one pop-up suppress the others?
Yes. A subscriber is a subscriber, and being asked to subscribe by a different pop-up on the same site is the clearest possible signal that nobody is coordinating.
What if we genuinely have two unrelated offers?
Then pick per visitor, not per page — show whichever fits the page they are on, and count it against the same single cap. Two offers is not a reason for two interruptions.