Ad blocker audit rules: filter lists and blocked content
Audit rules for what ad blockers and privacy filters remove: requests on EasyList, elements hidden by cosmetic filters and trackers on EasyPrivacy.
The Blocking category covers content, links, and trackers that ad blockers and privacy filters would block. It reports in its own report section with two sub-groups - Ad blocking and Privacy blocking - and every check is a warning (it’s signal worth knowing, not a hard failure). Enabled by default for logged-in users.
The three rules answer one question from three angles: what does a visitor running a blocker not get? A resource on an EasyList domain is never requested, a tracker on EasyPrivacy is blocked in several browsers by default, and an element whose class matches a cosmetic filter is hidden whatever is in it. All three share a single blocklist check per audit. In the report, blocked requests and cosmetic filters sit under Ad blocking, and EasyPrivacy matches under Privacy blocking.
Run only these rules
squirrel audit https://example.com --rule-include blockingadblock works too, since the rule IDs keep that prefix. These are cloud rules, so they run only when you are signed in.
Where to start
These carry the highest severity and weight in the category.
- Adblock cosmetic filters: classes that get hidden: A block named .ad-container is hidden for anyone running an ad blocker, whatever is in it. squirrel matches your selectors against EasyList.
- EasyPrivacy matches: analytics that silently does not run: Privacy filters block trackers by default in several browsers, so your analytics quietly under-counts. squirrel reports which resources they block.
- Requests ad blockers stop: links and resources on EasyList: A resource on an EasyList domain never loads for a visitor running a blocker. squirrel reports each one with what it is.
Rules
| Rule | What it flags | Severity | Scope |
|---|---|---|---|
| Adblock cosmetic filters: classes that get hidden | A block named .ad-container is hidden for anyone running an ad blocker, whatever is in it. squirrel matches your selectors against EasyList. | warning | Site-wide |
| EasyPrivacy matches: analytics that silently does not run | Privacy filters block trackers by default in several browsers, so your analytics quietly under-counts. squirrel reports which resources they block. | warning | Site-wide |
| Requests ad blockers stop: links and resources on EasyList | A resource on an EasyList domain never loads for a visitor running a blocker. squirrel reports each one with what it is. | warning | Site-wide |
Key terms
- Ad blocker filter lists: Community-maintained rule lists (EasyList, EasyPrivacy) that ad and tracker blockers use to hide elements and block requests.
Related categories
Security lists the third-party scripts, iframes and pixels a page loads. Analytics lists the measurement tools a page loads, the ones EasyPrivacy matches may report as blocked, and Legal Compliance checks for cookie consent.
Learn more
- Fix SEO issues with AI, the coding agent workflow for working through a report
- Cloud rules, what they check and what they cost
- Sample report, with the Blocking section on a real site
Disable all blocking rules
[rules]
disable = ["adblock/*"]