AntiAdBlock.Core

Platforms

8 min readBy the AntiAdBlock Core team

Ad blocking on Safari: what publishers need to know

Safari blocks ads differently from Chrome and Firefox, mixing declarative content blockers, Reader Mode and tracking prevention. Here is how each one affects publisher revenue and detection.

How Safari actually blocks ads

Safari does not ship a built-in ad blocker the way some browsers do. Instead it provides a platform for Content Blocker app extensions, and the ad blocking your audience experiences comes from apps they install, AdGuard for Safari, Wipr and 1Blocker are among the most common. For a publisher, the practical point is that Safari ad blocking is opt-in and app-driven, but where it is present it is enforced by the browser itself.

The mechanism is the WKContentRuleList API, and it is declarative rather than dynamic. A content blocker supplies WebKit with a list of rules, patterns to block, hide or upgrade, and WebKit compiles those rules and enforces them natively as the page loads. The extension never sees individual network requests and cannot run JavaScript to decide, request by request, what to block. This is conceptually very close to Chrome's Manifest V3 declarativeNetRequest model, where the browser, not the extension, does the matching.

That architecture has direct consequences for detection. Because the blocking happens inside WebKit and not in page JavaScript, a Safari content blocker leaves few of the runtime side effects that classic anti-adblock scripts were built to catch. What it does leave are network-level traces: requests that fail, ad assets that never load, and the timing curves those failures produce. A publisher who understands that distinction is already ahead of most off-the-shelf detection.

Reader Mode is a separate mechanism

Safari's Reader Mode is often confused with ad blocking, but it is a different thing entirely. Reader Mode is a user-invoked feature that strips an article page down to its core text and images, removing navigation, sidebars and, as a side effect, ads. It is not a content blocker, it does not use filter lists, and it only applies to pages Safari recognises as articles, and only when the reader chooses to switch it on.

The revenue impact is real but narrow. When a visitor reads your article in Reader Mode, your ad slots are not rendered, so no impressions fire for that view. Unlike a content blocker, however, Reader Mode is per-page and per-visit: the reader actively triggers it, and it does not persist as an always-on blocking layer across your whole site.

For detection purposes it is worth keeping Reader Mode mentally separate from content blockers. A page rendered in Reader Mode is a stripped DOM rather than a blocked network request, so the signals differ. The largest, most consistent share of lost Safari revenue comes from installed content blockers, not from Reader Mode, and a publisher should size the two problems independently rather than lumping them together.

Intelligent Tracking Prevention is not an ad blocker

Intelligent Tracking Prevention, or ITP, is the part of Safari that confuses publishers most. ITP is on by default and it restricts third-party cookies and cross-site tracking using on-device heuristics. It is a privacy feature aimed at how visitors are followed across sites, and it is genuinely powerful, but it is important to be precise about what it does and does not do.

ITP does not block the ad slot. An ad served to a Safari user with ITP active still renders and still counts as an impression. What ITP degrades is everything around targeting and measurement: third-party cookies are partitioned or expired, cross-site identifiers break, and attribution windows shrink. The result is that the same impression is worth less, because it is harder to target and harder to measure, not that the impression disappears.

Keeping this distinction clear matters for diagnosis. If your Safari CPMs are soft but your impression counts look healthy, that pattern points at ITP eroding targeting, not at ad blocking removing inventory. If impressions themselves are missing on Safari, that points at content blockers or Reader Mode. Treating ITP as if it were an ad blocker leads publishers to chase the wrong fix.

Why mobile Safari matters most

On iPhone and iPad, content blockers are the primary way ads get blocked, and that makes mobile Safari a category of its own. iOS does not allow the full desktop-style extension model, so the Content Blocker API is effectively the sanctioned route to ad blocking on the platform. A reader who wants to block ads on their iPhone installs a content blocker app, and from then on Safari enforces its rules on every page.

For many publishers this is a large and valuable slice of traffic. Mobile Safari carries a substantial mobile audience, and it skews toward a privacy-conscious, technical readership in the niches, tech, news, gaming, where ad blocking is most common to begin with. Underestimating mobile Safari means underestimating a meaningful part of your blocked inventory.

The detection takeaway is that you cannot treat Safari as a desktop afterthought. The same declarative WKContentRuleList mechanism runs on iOS, so the network-level signals that work on desktop Safari work on mobile too, but the volume of blocking is concentrated there. Measuring your Safari ad-block rate without separating mobile from desktop will usually understate where the loss actually sits.

Detecting Safari ad blocking reliably

Because Safari content blockers are declarative, the detection strategy mirrors the one that works for Chrome's Manifest V3. The blocking happens below the page, so cosmetic DOM bait, creating an element with an ad-like class and checking whether it was hidden, is unreliable on its own. What survives is the network layer: a request to a known ad path that fails, an ad asset that never resolves, and the distinctive timing of a natively blocked request versus a slow or genuinely broken one.

This is why a single-vector script is a poor fit for Safari. Cosmetic-only bait produces false negatives against a WKContentRuleList blocker, which is the worst outcome for a publisher: the blocker is present, the revenue is gone, and the script reports nothing. Redirect and network-bait signals, by contrast, still fire because they observe the result of the block rather than relying on the blocker to do something visible in JavaScript.

AntiAdBlock Core's multi-signal ensemble is built for exactly this. It weights the network-level and timing signals that Safari's declarative model leaves behind, votes across vectors so no single failed probe decides the verdict, and is kept current against the major filter lists so coverage tracks the lists that Safari content blockers ship. The result is detection that holds up across Safari, including mobile, without depending on the cosmetic tricks that this browser specifically defeats, and the free tier covers the first 10,000 detections a month, so you can measure your real Safari exposure before deciding what to do about it.

Safari's network extension model makes it uniquely resistant to some detection approaches, for a cross-browser comparison of what the full detection stack needs to cover, the adblock killer guide explains how multi-vector detection handles the differences between Safari, Brave and Chrome. For JavaScript-level techniques that apply across all browsers including Safari, detect adblock with JavaScript 2026 covers the building blocks.

Frequently asked questions

Does Safari block ads by default?

No. Safari has no built-in ad blocker. Ads are blocked only when the visitor installs a Content Blocker app such as AdGuard for Safari, Wipr or 1Blocker, which supplies rules that WebKit then enforces. Safari does, however, enable Intelligent Tracking Prevention by default, but that limits tracking and targeting rather than blocking the ad itself.

Is Intelligent Tracking Prevention the same as ad blocking?

No. ITP restricts third-party cookies and cross-site tracking, which degrades ad targeting, attribution and measurement. The ad slot still renders and still counts as an impression. So ITP lowers what a Safari impression is worth, while content blockers remove the impression entirely, two separate problems that need separate responses.

Can Safari content blockers be detected like Chrome MV3 blockers?

Yes. Safari content blockers use the declarative WKContentRuleList API, conceptually similar to Chrome's declarativeNetRequest, so they leave network-level traces rather than JavaScript side effects. Timing, redirect and network-bait signals detect them; cosmetic-only DOM bait is unreliable. An ensemble like AntiAdBlock Core's multi-signal engine catches this network-level blocking across desktop and mobile Safari.

Put the best adblock killer script to the test.

Free up to 10,000 detections per month. 60-second install.

Keep reading

Explore more