AntiAdBlock.Core

Revenue

7 min readBy the AntiAdBlock Core team

What adblock costs publishers: how to measure the real number

Most publishers know that ad blockers cost them money, but very few have measured the actual figure. This guide explains how to calculate what adblock is costing your site with precision.

Why do publishers underestimate what ad blocking costs?

The cost of ad blocking is structurally invisible in most publisher reporting stacks. Your analytics platform counts pageviews and sessions regardless of whether ads served. Your ad server counts impressions that were delivered, not impressions that were silently blocked. The gap between the two numbers, sessions with an engaged visitor and sessions where an impression fired, represents your adblock cost, but it never appears as a line item anywhere. It simply manifests as lower total revenue than your traffic volume might predict.

Attribution models compound the problem. When revenue falls short of forecast, the shortfall is typically attributed to lower CPMs, reduced fill rate, seasonal advertiser budget cycles, or audience quality changes. These are all plausible explanations that require no action beyond waiting. Adblock growth, which is real and ongoing, gets absorbed into the same explanatory bucket without ever being quantified separately. Publishers who have deployed detection scripts are often surprised to discover that adblock accounts for a larger share of their revenue gap than any of the other factors they had been investigating.

The invisibility also affects investment decisions. A product or engineering team that cannot see a specific revenue line associated with adblock recovery has no data on which to justify building or buying a recovery solution. Measuring what adblock costs publishers is not just an accounting exercise: it is the precondition for making a rational decision about whether to invest in recovery.

What does ad blocking actually cost a publisher?

The most direct component is lost impressions: ad slots that would have fired an auction and generated a CPM but did not because the request was blocked. To estimate this, you need both a session count and an impression count for the same period, segmented to isolate blocker-positive sessions. If your average non-blocked session generates a known number of ad impressions, and your blocked sessions generate zero, the gap in impressions multiplied by your average CPM is a first-order estimate of lost impression revenue.

The second component is lost data. Ad blocking distorts the audience signals that feed into programmatic targeting. When a significant share of your audience is invisible to your ad server, the audience segments you sell to programmatic buyers are systematically underpopulated. Buyers who would bid highly for your full audience see a smaller, potentially skewed sample of it, which can depress the CPMs you achieve even for the non-blocked sessions. This second-order effect is harder to measure but real.

The third component is analytical distortion. If your content optimisation decisions are based on metrics like revenue per article or revenue per session, and those metrics are systematically understated for content that attracts a high-blocker demographic, you may be systematically underinvesting in your most technically savvy audience. The decisions you make based on incomplete data carry an opportunity cost that is invisible until you start segmenting by blocker status.

How do you measure your ad block rate?

The most accurate measurement method is to deploy a lightweight detection script that fires a custom event to your analytics platform on every positive detection. Comparing the count of those events against your total session count for the same period gives you a blocked-session rate. This rate, applied to your average revenue per session, gives you a monthly revenue gap. The measurement requires no changes to your ad stack and, because the detection script is small and loads asynchronously, adds negligible latency to your pages.

A rougher but useful proxy is to compare your ad server's reported impression count against the number of sessions that had any ad opportunity. Your ad server knows how many auctions ran and how many impressions delivered. Your analytics platform knows how many sessions had a page load that should have triggered an ad call. The ratio of delivered impressions to expected impressions, assuming a consistent ad load per session, gives you an approximate picture of how much inventory never entered the auction.

Segmenting your detection data by traffic source, device type, browser, and content category will reveal where your adblock exposure is concentrated. Technical content, security topics, developer tools, and privacy-focused editorial tend to attract higher blocker rates than general entertainment or news content. Knowing where the exposure is highest lets you prioritise recovery efforts on the content and audience segments where the per-session revenue gap is largest.

How do you turn an ad block rate into a revenue figure?

Once you have a blocked-session rate and an average revenue per session, the monthly cost of adblock is a simple multiplication. Multiply blocked sessions by revenue per session and you have a ceiling: the maximum amount you could recover if every blocked session converted to a fully monetised session. The actual recoverable amount is this ceiling multiplied by a realistic recovery rate. AntiAdBlock Core customers achieve a recovery rate around 65% of detected blocked sessions, which gives you a conservative estimate to model against.

The return-on-investment calculation is straightforward. Compare the estimated recoverable revenue against the cost of implementing and running a recovery solution. For most publishers, the payback period on a detection and overlay deployment is short because the implementation cost is low and the revenue opportunity scales directly with traffic volume. This calculation is also the right framework for deciding how much engineering time to invest in overlay copy testing, format optimisation, or audience segmentation of the recovery funnel.

Building the business case also requires understanding what adblock costs publishers beyond the direct revenue gap. If your ad revenue funds a newsroom, a development team, or a content production budget, the cost of adblock is not just a line in an ad revenue report: it is a constraint on the investment you can make in the quality of your product. Framing the recovery opportunity in those terms is often more persuasive for internal stakeholders than a CPM calculation alone.

How often should you measure ad blocking?

Measuring adblock cost once is valuable; measuring it continuously is essential. The blocked-session rate is not static. Blocker adoption grows over time, filter lists evolve to catch new delivery patterns, and major browser releases can shift the distribution of blocker types active in your audience. A measurement that was accurate six months ago may significantly understate your current exposure if you have not kept the detection layer current and reviewed the data regularly.

Setting up a monthly review of your blocked-session rate, your recovery rate, and the resulting net revenue contribution of your recovery programme creates the feedback loop needed to catch changes early. A rising blocked-session rate with a flat recovery rate means your overlay is converting a smaller share of detected visitors than before, which warrants investigation of overlay performance. A falling blocked-session rate may indicate a detection gap rather than a genuine reduction in blocker adoption.

The publishers who manage adblock cost most effectively are the ones who treat it as a standing agenda item in their ad operations review, with the same status as fill rate and viewability. What adblock costs publishers is not a fixed number: it changes with the audience, the blocker landscape, and the effectiveness of the recovery programme. Keeping the measurement current is what allows you to act on it rather than simply observe it.

Once you have a clear picture of the cost, the recover ad revenue lost to adblock guide covers the strategies for closing the gap, matching each recovery tactic to the publisher situation where it works best. For publishers who want to put the recovery effort in the broader context of a revenue programme, how to increase ad revenue for publishers covers the full stack.

Once you have the number, the auction is where the rest is decided: header bidding vs waterfall covers how your inventory actually gets sold.

Frequently asked questions

How do I get a quick estimate of what adblock is costing my site without deploying a detection script?

A rough estimate is possible by comparing your ad server's reported impression count against your analytics session count for the same period, assuming a known average ad load per session. The gap between expected and delivered impressions is a proxy for blocked traffic. This method is imprecise because it conflates adblock with other impression gaps like low fill rate, but it gives you an order-of-magnitude figure to decide whether fuller measurement is warranted.

Is the cost of adblock the same for all types of publisher content?

No. Blocker adoption varies significantly by audience demographic and content type. Technical, privacy-focused, and developer audiences tend to have higher blocker rates than general news or entertainment audiences. Segmenting your detection data by content category reveals where the concentration is highest, which is where recovery investment has the most impact.

Once I know what adblock is costing me, how do I decide what recovery solution to use?

Evaluate solutions on three criteria: detection precision across the full blocker landscape including Manifest V3 extensions, the quality and customisability of the visitor overlay, and the clarity of the recovery analytics. A free tier, like the one AntiAdBlock Core offers up to 10,000 detections per month, lets you validate detection precision and recovery rate before committing to a paid plan.

Put the best adblock killer script to the test.

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

Keep reading

Explore more