Counting impressions and clicks
One of the key strengths of digital advertising is that it can provide detailed metrics on how advertising campaigns are performing. The most fundamental metrics are impressions (the number of times an ad has been served) and clicks. Here are some insights into exactly how DFP counts those metrics.
In general, DFP counts an impression each time a creative is sent to an end user. By that stage in the process, we've already read the user's DoubleClick cookie, if available, and completed the process of choosing which ad and creative to serve. Note that the impression is counted before the creative is fully downloaded and viewed by the end user.
Some ad types use delayed impressions. In these cases, the initial creative code is delivered to the end user in advance, but the impression isn't counted until DFP receives a followup request from the creative asset itself and at least one pixel is visible on screen. For delayed impressions,
Total code served count >= Impressions; for non-delayed impressions
Total code served count = Impressions. Note that DFP must receive a followup request from the creative asset within one hour from the time the creative code is delivered to the end user.
Delayed impressions are used with:
- Native ads
- Prefetched ads
- Out-of-page ads
- Video ads
- Ad Exchange ads
How impressions are counted for Google publisher tags using single request vs. non-single request architecture
If single request architecture (SRA) is being used, all impressions are counted upon the first call of the
display() function, independent of how many ads actually display on the page.
If non-SRA is used, then an impression is counted for each
display() call made on the page.
When a user clicks on an ad, a request is sent to the DFP ad servers. As soon as DFP receives the request, it counts the click. DFP then sends the user the redirect URL, which takes the user to the landing page. Note that DFP counts the click when it's received, not when the user is sent the redirect URL.
DFP discards impressions and clicks that are considered invalid. These are impressions and clicks that are not generated by actual people browsing the web, or that are accidentally generated. Invalid impressions and clicks can come from a variety of sources, including:
- Web crawlers and spiders, which are programs that systematically load webpages and click on links in order to gather data
- Impressions and clicks from sources that we've determined are not legitimate
- Inadvertent double-clicks on ads, which are counted as a single click
There are some special considerations to keep in mind when serving ads to your apps via the Google Mobile Ads SDK.
When serving banner ads
DFP counts an impression each time a creative is sent to the app. There is also the option to control impression counting for banners by using the manual impression counting feature of the Google Mobile Ads SDK, which utilizes delayed impression counting.Manual impression counting (2:50)
Manual impression counting is compatible only with direct-sold and house campaigns (i.e., creatives trafficked directly in DFP). It should not be used when requesting ads to ad units that can serve backfill (Ad Exchange, AdSense or AdMob) or ads from third party networks (including via SDK mediation).
Also, if your DFP-trafficked creative has first- or third-party impression tracking pixels, those will be triggered independently of the manual impression action. This can lead to big discrepancies between DFP impression reports and third-party numbers.
When serving interstitial ads
DFP counts the impression when the interstitial is shown to the user. If an interstitial request is made and DFP sends the creative to the app, but the app never shows the interstitial, an impression isn't counted.