Lab
Cosmetic, network, and script
Three different questions: does a filter hide bait nodes, does it cut a request to Google’s ad host, and does adsbygoogle.js actually run. There is no AdSense publisher id and this page does not show ads.
Cosmetic
EasyList-style class names on dummy slots. A working cosmetic filter hides the slot; the label stays so you can still tell what was here.
Network
A no-cors request to pagead2.googlesyndication.com. Completing the request means the host is reachable; a block or timeout means it is not.
Script
The same ad script, loaded without a publisher id. If it executes, window.adsbygoogle appears. No ads are requested beyond that file.
Control
This box must stay visible. It is not an ad. If a blocker hides it, the page itself is being over-matched and the scores are junk.
Cosmetic baits
These class names appear on EasyList. The dashed slot is the bait; the caption above it is ordinary page chrome.
.ad-banner
div.adsbygoogle
ins.adsbygoogle
Bait: AdSense ins.adsbox
Results
Running probes…
A blocked network or script probe can also come from a privacy browser or DNS filter, not only an extension. This is a lab page, not a product claim about any vendor.