Intrusive interstitials: popups that cover mobile content
A popup covering the content a visitor came for is a ranking problem as well as a usability one. squirrel detects popup markup and libraries.
What an intrusive interstitial is
An intrusive interstitial is an overlay that covers the main content on a mobile page, either immediately on arrival or before the content is reachable. Google announced in 2016 that pages doing this may rank lower, because a visitor arriving from search is shown a dialog instead of the page they chose.
Some overlays are exempt. Cookie consent and age verification are required by law in places, and a login wall on genuinely gated content is not deceptive. The distinction is whether the overlay stands between a search visitor and the content the result promised.
What squirrel checks
The rule runs on every crawled page and looks for two things. Any div whose class or id matches popup, modal, overlay or interstitial. And the raw HTML, lowercased, containing any of popup.js, modal.js, mailchimp, sumo, optinmonster, hello-bar or leadpages. It emits a single check named interstitials:
- Info when either was found. Message:
Popup/modal elements detected, withEnsure popups don't block content on mobile page loadas the value. - Pass when neither was. Message:
No intrusive interstitial patterns detected.
Nothing about timing, size or coverage is measured, and no distinction is made between an exempt consent banner and a full-screen email capture. Only a div whose class or id matches one of those four words, or one of the seven library strings in the HTML, triggers it. A native <dialog> with no matching class is not detected. Severity for the rule is warning, weight 5.
How to fix it
Delay any promotional overlay until the reader has engaged with the page, or replace it with an inline banner that takes a reasonable amount of the screen. On mobile, an in-content form usually converts better than an overlay anyway.
Keep consent and age gates as small as the law allows, and make sure the content behind them is what a search visitor was promised.
| Rule ID | mobile/interstitials |
| Category | Mobile |
| Scope | Per-page |
| Severity | warning |
| Weight | 5/10 |
Enable / disable
Disable this rule
[rules]
disable = ["mobile/interstitials"]Disable all Mobile rules
[rules]
disable = ["mobile/*"]Enable only this rule
[rules]
enable = ["mobile/interstitials"]enable replaces the default ["*"], so this is the only rule selected. Leave disable out: a rule that matches any disable pattern is skipped even when enable names it. Only an enabled setting under a rule’s own [rule_options] table overrides both lists.
Related rules
- legal/cookie-consent: the consent banner that is exempt from this.
- integrity/fake-auth-overlay: overlays that are not yours at all.
- mobile/viewport: the tag that decides how the overlay is sized.
- perf/cls-hints: images and iframes missing the dimensions that prevent shift.
Mobile findings ship in every audit next to the SEO, performance and agent experience rules. See Core Web Vitals for how an agent works through a report.
References
- Helping users easily access content on mobile, Google Search Central
- Page experience, Google Search Central
Check your site
Run squirrel audit https://example.com and open the Mobile section of the report. Each page is reported with whether popup markup or a popup library was detected. Signed-out local audits need no account and cost nothing. Signed-in audits spend credits.