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.
What privacy filtering blocks
EasyPrivacy is the tracker list, separate from the advertising one. Blocking it is not a niche setting: uBlock Origin uses it by default, Brave blocks equivalent hosts, and Firefox’s strict mode blocks a comparable set.
The effect on your measurement is silent, even though the browser is not. A blocked script can raise an error event and show up in developer tools, but nothing reaches the analytics dashboard, so those visitors are absent from the numbers with no gap to notice. That skews the data most where your audience is most technical, which is often the audience you most want to understand.
What squirrel checks
The rule is site-wide and reads a result the cloud blocklist service produced before the rules ran, matched server-side against the full EasyPrivacy rules. It emits a single check named privacy-blocked:
- Skipped when no result is available. Message:
Privacy filter check skipped, with a readable skip reason. - Pass when nothing matched. Message:
No resources match EasyPrivacy tracking filters. - Warn otherwise. Message:
6 resource(s) would be blocked by privacy filters (EasyPrivacy), listing up tomaxMatchesToReportof them. Severity warning, weight 2.
The three blocking rules share one blocklist check per audit.
How to fix it
Move measurement first-party or server-side, so it is a request to your own domain rather than to a host on the list. That may reduce blocking rather than end it: filters can match a first-party endpoint, and forwarding server-side cannot recover an event whose browser request was blocked. Privacy-focused analytics products are built for this and are usually a smaller change than proxying an existing tool.
Whatever you do, treat the numbers you already have as an undercount rather than as the truth.
| Rule ID | adblock/privacy-blocked |
| Category | Blocking → Privacy blocking |
| Scope | Site-wide |
| Severity | warning |
| Weight | 2/10 |
Options
| Option | Type | Default | Description |
|---|---|---|---|
maxMatchesToReport | number | 10 | Maximum privacy-blocked matches to report in detail |
Configuration example
[rule_options."adblock/privacy-blocked"]
maxMatchesToReport = 25Enable / disable
Disable this rule
[rules]
disable = ["adblock/privacy-blocked"]Disable all blocking rules
[rules]
disable = ["adblock/*"]Enable only this rule
[rules]
enable = ["adblock/privacy-blocked"]
disable = ["*"]Related rules
- analytics/gtm-present: the platforms this rule finds blocked.
- adblock/blocked-links: the advertising half, matched against EasyList.
- security/third-party-cookies: the same hosts seen from the privacy side.
- legal/cookie-consent: the consent gate those trackers also need.
Blocking findings ship in every audit next to the SEO, performance and agent experience rules. See Fix SEO issues with AI for how an agent works through a report.
References
Check your site
Run squirrel audit https://example.com and open the Blocking section of the report. Each blocked tracker is listed, up to the configured maximum. Local audits are free.