Ad viewability, telemetry, and impression reconciliation
Understand the 5-stage delivery funnel, IAB/MRC viewability standards, and why pageviews differ from impressions.
1. The 5-stage ad delivery funnel
Every ad interaction passes through five distinct measurement stages from server request to conversion:
1. Ad Request: The publisher page requests an eligible advertisement for a placement.
2. Filled Request: The ad server selects a matching campaign and returns the creative payload.
3. Rendered Impression: The creative successfully draws inside the sandboxed iframe and transmits a render confirmation beacon.
4. Viewable Impression: At least 50% of the creative pixels enter the visible screen viewport for at least one continuous second.
5. Click & Conversion: The visitor clicks the ad and completes a subsequent conversion action on the destination site.
2. The IAB/MRC viewability standard
A rendered ad is not always seen. An ad rendered in a footer before the user scrolls away is rendered, but non-viewable.
AdServeKit uses the industry-standard Media Rating Council (MRC) threshold: an ad is recorded as viewable when 50% or more of its surface area remains continuously visible in the viewport for at least 1.0 second.
3. Diagnosing reporting discrepancies
Publishers comparing website pageviews with ad impressions should account for:
- Ad Blockers: Extensions stop ad.js before ad requests fire.
- Lazy Loading: Slots below the fold request ads only when approached.
- No-Fill: Slots without active campaigns generate requests but no renders.
- Fast Bounces: Visitors who exit immediately prevent render confirmation beacons from completing.