Skip to content
PlacementGraph™
Delivery measurement

Why do impression counts differ between platforms, and how big is too big?

Part of Curated deals and PMPs

A viewer watching a video on a phone.
Photo: cottonbro studio, Pexels

The short answer

Impression counts differ because each system records a different event at a different moment: the exchange books a billable event under its own policy, the buying platform counts a win or billing notice, and the ad server counts when its tag fires. The standard terms treat a gap above 10 percent per invoice period as a reconciliation trigger.

Key takeaways

  • OpenRTB separates the win notice, which is not necessarily a billable ad, from the billing notice, which marks when spend should be applied.
  • The 4A's and IAB standard terms name one controlling measurement for invoices and require reconciliation when it is more than 10 percent lower than the other count.
  • The MRC and IAB Tech Lab desktop display guidelines set no acceptable gap; the 10 percent figure is a contract trigger, not a measurement standard.

Why do impression counts differ between platforms?

One ad passes through several systems, each with its own log. The publisher's ad server fills the slot, the exchange runs the auction and bills the buyer, the buying platform bids and books spend, and the agency's ad server records when its tag loads. A verification tag may record a further event. None of them shares a counter.

The OpenRTB 2.6 specification (opens in a new tab) builds the split into the protocol. It defines the win notice URL as called by the exchange if the bid wins, adding that it is not necessarily indicative of a delivered, viewed or billable ad. It defines a separate billing notice URL, called when a winning bid becomes billable based on exchange specific business policy. The specification says the win notice informs the bidder's pricing algorithms of a success, whereas the billing notice indicates that spend should actually be applied.

Where each system counts an impression
SystemCounting pointWhat can make it higher or lower
Publisher ad serverThe ad server's own impression event for the line itemIts filtering rules and whether it counts before or after rendering starts
Exchange or SSPThe event its business policy treats as billable, signaled to the buyer by a billing noticePolicy choices such as delivery or viewability as the billing basis
Buying platform (DSP)A billing notice, a pixel in its markup or the win, depending on the integrationWin counts run ahead of delivered ads; pixels can miss loads
Agency or third party ad serverIts tag loading in the browser or appNetwork loss, slow pages and redirects between servers
Video playerThe VAST Impression eventPlayer errors or ads that start buffering but never play

What causes impression discrepancies?

Section 7.8 of the OpenRTB implementation guide (opens in a new tab) compares the counting methods in use and is candid about their weaknesses. It lists a pixel in markup as widely supported but prone to discrepancies, and the billing notice as the best alignment between buying platforms and exchanges with minimal discrepancy. For video and audio it says the VAST Impression event is the official billable signal and discourages billing notices for those formats.

One impression, five counting points
One impression, five counting pointsEach system can count at a different step. A gap is the sum of events lost or added between two of these points. 1. Ad request: Page or app asks for an ad. 2. Auction win: Win notice, not yet billable. 3. Markup loads: Pixels and tags start to fire. 4. Render begins: Ad starts to appear on screen. 5. Billable event: Billing notice books the spend01Ad requestPage or app asksfor an ad02Auction winWin notice, notyet billable03Markup loadsPixels and tagsstart to fire04Render beginsAd starts toappear on screen05BillableeventBilling noticebooks the spend
One impression, five counting pointsEach system can count at a different step. A gap is the sum of events lost or added between two of these points. 1. Ad request: Page or app asks for an ad. 2. Auction win: Win notice, not yet billable. 3. Markup loads: Pixels and tags start to fire. 4. Render begins: Ad starts to appear on screen. 5. Billable event: Billing notice books the spend01Ad requestPage or app asks for an ad02Auction winWin notice, not yet billable03Markup loadsPixels and tags start to fire04Render beginsAd starts to appear on screen05Billable eventBilling notice books the spend
Each system can count at a different step. A gap is the sum of events lost or added between two of these points.
Documented causes of impression discrepancies and where each is described
CauseWhat happensSource
Pixel timing and network lossThe exchange's and buyer's pixels load at different times, and a noisy connection can fire one but not the otherOpenRTB implementation guide, section 7.8
Mobile app prefetchMarkup is fetched in advance and may never display if the user leaves the appOpenRTB implementation guide, section 7.8
Creative auditingMarkup loaded to scan for malware can create spurious events, even for unwon auctionsOpenRTB implementation guide, section 7.8
Delayed billing noticesCaching or prefetched video can delay the billable event by minutesOpenRTB implementation guide, section 7.2
CachingAn ad rendered from a device cache may go unrecorded unless cache busting is usedMRC and IAB Tech Lab desktop display guidelines, caching guidelines
Invalid traffic filteringEach system removes the invalid activity it detects, under its own methodsMRC and IAB Tech Lab desktop display guidelines, filtration guidelines
Redirect latencyMore redirects between servers in rich media reduce counting accuracyMRC and IAB Tech Lab desktop display guidelines, rich media scope

Two more causes are operational: reports cut in different time zones, and reports pulled before one side has finished its filtering adjustments. Neither is a measurement error, but either can widen a daily gap.

What discrepancy is considered normal?

The measurement guidelines set no single tolerance. The MRC and IAB Tech Lab desktop display impression measurement guidelines (opens in a new tab) set how an impression is counted, including client initiated counting, cache busting and filtration, and ask for counting methods to be disclosed. They set no acceptable percentage gap between two compliant systems.

The 10 percent figure comes from contracts. Section XIII(d) of the 4A's and IAB Standard Terms and Conditions, Version 3.0 (opens in a new tab) says that if the difference between the controlling measurement and the other measurement exceeds 10 percent over the invoice period and the controlling measurement is lower, the parties will facilitate a reconciliation. If the gap cannot be resolved after a good faith effort, the agency may treat it as under delivery and seek a makegood, or pay on the controlling count plus a 10 percent upward adjustment to delivery.

Which count is used for billing?

Whichever count the agreement names. In direct buys under the standard terms, section XIII(b) sets an order of preference for the controlling measurement when both sides track delivery. In programmatic buying, the exchange's billable event under its own policy drives what the buyer is charged, and the buying platform books spend when the billing notice or its equivalent arrives.

How the controlling measurement is chosen under section XIII(b) of the standard terms
SituationControlling measurement
Only one ad server is compliant with the IAB and AAAA guidelinesThe compliant ad server
Both are compliant, and the agency's ad server offers an automated, daily reporting interface the publisher approved and can access in timeThe agency's third party ad server
Neither is compliant, or the automated interface condition is not metThe publisher's ad server, unless both agree otherwise in writing

Section XIII(c) adds that the party holding the controlling measurement gives the other side online or automated access to its statistics within one day of launch, or the other party may invoice from its own numbers. Write the controlling count into the order or deal terms before launch.

How do you investigate a large impression discrepancy?

The shape of a gap points to its cause. A steady gap of the same size every day suggests a counting method difference; a gap on one format, environment or day suggests something changed.

Reading the pattern of a gap
PatternLikely causeWhat to ask for
Buyer's tag count lower by a steady margin on web displayPixel timing and network loss between counting pointsEach side's counting point, in writing
Gap concentrated in mobile app inventoryPrefetched markup that never displayed, counted by one sideWhether the exchange bills on markup load or on display
Gap concentrated in videoOne side counts a request or player load, the other the VAST Impression eventThe event each side uses for video
Gap appears on one day and staysA tag, creative or setup changeThe change log for that date on both sides
Gap disappears when the same time zone is usedReport cut, not measurementReports in one agreed time zone
Gap shrinks over several daysDelayed filtering or late billing eventsFinal, not provisional, figures for the period

Before raising a discrepancy with a seller

  • Both reports cover the same deal ID or line item, creative, dates and time zone.
  • The gap is calculated over the invoice period, not only on the worst day.
  • You know which side holds the controlling measurement under the agreement.
  • Each side's counting point for each format is written down.
  • Invalid traffic adjustments are final on both sides for the period.
  • Any tag, creative or setup changes during the flight are listed with dates.

How do discrepancies affect deal reporting?

On a private marketplace or guaranteed deal, the seller reports delivery against the deal ID and the buyer reports against its line item, so a gap between them becomes a question about the deal. For a guaranteed deal it decides whether the volume was met and whether a makegood is owed. The standard terms say a makegood that follows an unresolved discrepancy is measured by the agency's ad server.

Counting delays also change how a deal paces. The OpenRTB implementation guide says buyers use the billing notice to book progress toward spend goals and frequency caps and to drive pacing, and that significant delays can seriously impair those functions. Agree with the seller which count the deal's delivery targets use, and treat daily figures as provisional.

What does a discrepancy review look like on a real deal?

Fictional example

A live music venue's guaranteed deal in Tennessee and Kentucky

An unnamed live music venue promotes its fall concert calendar with display and online video beside music, nightlife and local events coverage in Tennessee and Kentucky, focused on Nashville, Louisville and Knoxville, in English. Its agency runs a guaranteed deal with a regional entertainment publisher, and the order names the agency's ad server as the controlling measurement.

At the end of the first invoice period the agency's count is more than 10 percent below the publisher's. The agency splits the gap by format first. Display is close on both sides; nearly all of the gap sits in video served inside the publisher's mobile app.

The publisher confirms that its app reports count the ad when the player loads it, while the agency's ad server counts the VAST Impression event. The two sides agree to report video on the VAST Impression event, reconcile the period on that basis, and add the counting point for each format to the deal sheet for the next flight.

How does PlacementGraph help keep deal records consistent?

Frequently asked questions

Does an impression discrepancy mean someone is committing fraud?

Not on its own. Gaps can come from different counting points, timing and filtering, as the OpenRTB implementation guide and the MRC guidelines describe. Invalid traffic is one possible contributor, because each system filters what it detects. A gap is a reason to compare methods, and fraud needs its own evidence.

Can the buyer's count be higher than the publisher's?

Yes. A buying platform that counts wins, or a tag that fires on markup loaded for creative scanning or prefetching, can record more events than the publisher bills. The current standard terms require reconciliation when the controlling count is more than 10 percent lower than the other, whichever side that is.

Why can video counts differ more than display counts?

Video adds steps between the request and the ad playing: the player, the VAST response, buffering and playback. OpenRTB names the VAST Impression event as the official billable signal for video and discourages billing notices there, so any system counting at another step of the player sequence will drift from the others.

Should a discrepancy be checked daily or only at invoice time?

Both. A daily view in the first days of a flight catches setup errors while they can still be fixed. Whether reconciliation is needed is judged on the invoice period total, the basis the standard terms use for the 10 percent trigger.

Sources

  1. OpenRTB 2.6 specification (opens in a new tab)IAB Tech Lab, OpenRTB repository
  2. OpenRTB 2.x implementation guide (opens in a new tab)IAB Tech Lab, OpenRTB repository
  3. Desktop Display Impression Measurement Guidelines (opens in a new tab)MRC and IAB Tech Lab
  4. Standard Terms and Conditions for Internet Advertising for Media Buys One Year or Less, Version 3.0 (opens in a new tab)4A's and IAB
  5. Education Guide to the Standard Terms and Conditions, Version 3.0 (opens in a new tab)4A's and IAB

Researched and written by PlacementGraph Research. Read how we research, source and update these pages. Corrections: diana@placementgraph.com.

HOW AGENCIES WORK WITH US

From your first brief.
To your next campaign.

Share a brief in plain language. Get contextual websites and YouTube channels that fit it, with the evidence behind every pick and a deal ready for your usual buying platform.

  1. 01

    Share your brief

    The campaign in plain language.

  2. 02

    Get your shortlist

    The strongest contextual sites and channels, with the evidence behind each.

  3. 03

    We build the deal

    Your shortlist becomes a curated deal through our exchange partners.

  4. 04

    Activate and grow

    Buy in your usual platform. Agencies earn benefits as their investment grows.

LET’S WORK TOGETHER

Your next campaign starts here.

Your details will only be used to respond to your enquiry.

Prefer email? diana@placementgraph.com

YOUR PRIVACY

You choose whether to allow optional analytics. You can use the whole website either way.

Change or withdraw consent at any time using “Cookie preferences” in the footer. Turning analytics off stops future collection and removes this site’s analytics cookies; it does not erase information already sent. The page may refresh to apply withdrawal.