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.

Documentation feedback

AdServeKit evolves over time. If you notice information that appears outdated or inconsistent with the current dashboard, please report it so we can update the guide.