Ad fill rate
Ad fill rate is the percentage of ad requests that were answered with an ad — ads served divided by ad requests. A request that returns no ad ('unfilled') earns nothing, so fill rate directly gates a publisher's revenue: low fill means inventory went to waste. Google Ad Manager reports fill rate from match rate and coverage. It is a documented programmatic metric, though exact request/impression accounting varies by platform.
What this means
Ad fill rate = ads served (impressions) ÷ ad requests × 100. Every time a page asks an ad system for an ad, that is a request; when the system returns an ad that renders, that is a filled request. Requests that return no ad are 'unfilled' and produce zero revenue. Fill rate therefore measures how much of the requested inventory actually got an ad to show.
Why unfilled requests cost revenue
Unfilled inventory is lost revenue: the pageview happened, the slot existed, but nothing monetized it. Low fill rates typically point to insufficient advertiser demand for that audience, price floors set above what buyers will pay, or restrictive targeting. Google Ad Manager decomposes related concepts into coverage and match rate, and platforms differ in exactly how they count requests versus eligible impressions — so fill rate is comparable only within one ad system's accounting. It pairs with RPM and CPM: raising fill lifts RPM only if the filled ads carry meaningful value.
This page is educational and not financial advice.
- Ads served ÷ ad requests × 100
- Unfilled requests earn nothing — wasted inventory
- Request/impression accounting varies by ad platform
How it appears in analytics and logs
A low fill rate means many ad requests returned nothing, so available inventory earned no revenue — usually a demand, floor-price, or targeting issue. A high fill rate means most requests monetized.
Diagnostic use case
Measure how often ad requests actually return an ad, to find wasted inventory and demand gaps that depress publisher revenue.
What WebmasterID can help detect
WebmasterID measures first-party pageview and engagement context for the pages carrying ad units, helping correlate fill gaps with traffic patterns without third-party identifiers.
Common mistakes
- Comparing fill rate across ad systems with different accounting.
- Raising fill with low-value ads and ignoring the effect on RPM.
- Treating unfilled requests as harmless rather than lost revenue.
Privacy and accuracy notes
Ad fill rate aggregates request and impression counts and needs no personal identifiers. This page is educational and not financial advice.
Related pages
- Page RPM (revenue per mille)
Page RPM (revenue per mille) is estimated earnings per thousand pageviews: total revenue divided by pageviews, times 1,000. It is the publisher-side companion to CPM — where CPM is what an advertiser pays per thousand impressions, RPM is what a page earns per thousand views, blending fill, viewability, and multiple ad units. Google AdSense documents the calculation; it is a derived metric, not a guaranteed rate.
- Cost per mille (CPM)
Cost per mille (CPM) is the cost of one thousand impressions — 'mille' is Latin for thousand. It is the standard pricing unit for awareness and display buying, where advertisers pay for exposure rather than clicks. CPM depends entirely on how an impression is defined (served vs viewable), and it says nothing about whether anyone clicked or converted, so it is an exposure-cost metric only.
- Viewability rate
Viewability rate is the percentage of measured ad impressions that qualified as viewable under an industry standard, rather than merely served. The IAB and MRC define a viewable display impression as at least 50% of the ad's pixels in view for at least one continuous second (two seconds for video). The rate exposes the gap between ads delivered and ads actually given a chance to be seen.
- Web analytics
Correlate fill gaps with first-party traffic.
Sources and verification notes
- Google Ad Manager Help — Coverage, fill rate, and match rateDefines fill rate and related coverage/match-rate metrics; request accounting varies by platform.
Last reviewed 2026-06-24. Facts are checked against primary/official sources where available; uncertain specifics are marked “Data not yet verified” rather than guessed.