Pixtru guides

DV360 impression discrepancies

Display & Video 360 counts impressions at one point in the chain; your ad server or verification vendor counts at another. Google publishes what it considers normal, and it is wider than most people assume.

Pixtru guides · updated

What Google calls normal

Google's own reporting discrepancies help page for Display & Video 360 says:

  • campaign variances of up to 20% between DV360 and a third party are common;
  • reports need more than 1,000 impressions before a comparison means anything;
  • figures in the interface can take 48 to 72 hours to settle, so compare generated reports, not live statistics;
  • for a larger gap, contact support while the campaign is still live.

Twenty percent is a support threshold, not a statement that the impressions were fine. On a campaign of ten million impressions it is two million that one system counted and the other did not.

Why DV360 and a third party disagree

The causes Google lists are the general ones, applied to DV360:

  • They count at different points. DV360 records the impression when it delivers the ad; a verification or ad-server tag records it only when its own code runs in the browser. Every impression lost in between is in one count only.
  • Latency. The reader navigates away after DV360 has counted but before a third-party creative arrives.
  • Ad blockers and network failures that stop the third-party request.
  • Different invalid-traffic filtering, applied at different times.
  • Mismatched settings: time zones, date ranges, attribution, filters.
  • Creative setup: third-party trackers that are wrapped, duplicated or placed where they count something other than the ad.

Checks to run first

  1. Align the reports. The same dates, the same time zone, the same filters, generated reports on both sides.
  2. Split by creative and by exchange. A gap concentrated in one creative is a trafficking problem; one concentrated in one exchange or site is a delivery problem.
  3. Inspect the third-party tag as DV360 serves it. Confirm it is inside the creative and that every macro was replaced. For the page, DV360's ${SOURCE_URL} is a reasonable value: it is a full address, and verification tools generally keep only the host.
  4. Fire it yourself. Load the creative, watch the network panel, confirm the third-party request leaves and is answered.
  5. Only then open a case, with the split that shows where the gap lives.

A worked example

A display campaign runs for a week. The three systems report:

SourceImpressionsAgainst DV360
Display & Video 360 (billed)2,000,000—
Campaign Manager 360 (rendered by its tag)1,780,000−11.0%
Verification tag (rendered and measured)1,720,000−14.0%

Every figure is inside Google's 20%, and the total alone would end the conversation there. Split by creative, it does not: four creatives sit at a 6–8% gap, and the fifth, a rich-media unit re-uploaded mid-flight, at 61%. Its re-upload dropped the verification tag. That one creative is most of the gap, and it is a trafficking fix, not a cost of doing business. The remaining 6–8% is the structural floor: pages closed before the ad arrived, and content blockers.

Built-in verification settings are not a tag

DV360 integrates with some verification vendors directly: a line item can be set to avoid inventory a vendor has flagged, before the bid. That is pre-bid filtering. It decides what DV360 buys; it does not measure what happened to what it bought. To count rendered, measurable and viewable impressions, a measurement tag still has to travel inside the creative, and every impression that tag never sees is part of the gap above.

What to send support

If the gap is still over 20% once the checks are done, Google's help asks for a case while the campaign is live. It is resolved faster with the evidence in it:

  • the campaign, insertion order and line item IDs, and the exact date range and time zone compared;
  • both generated reports, not screenshots of the interface;
  • the split that shows where the gap lives — the creative, exchange or site;
  • the creative's tag as served, with the third-party request from the browser's network panel.

The impression-ID problem

The most precise way to reconcile two counts is to join them impression by impression on an ID both sides recorded. Most ad servers can put their own impression or auction ID into a third-party tag with a macro. DV360 does not offer one for this purpose, so a third-party tag in a DV360 creative cannot carry DV360's impression ID, and an impression-level join against DV360's own records is not possible.

What remains possible is to compare by campaign, creative, site and hour — and to measure each impression the tag sees in full. With Pixtru, a DV360 creative leaves the impression-ID attribute out; the tag makes its own ID for each impression, and the Measured report covers impressions, measurability, viewability and invalid traffic from the first impression, without a billing log. The integration guide has the macro for each ad server.