Advertising Metrics
Author: Alise Zaiceva 10 minute read
#Ad Monetization
All Categories >Advertising Metrics > What is Ad Discrepancy and How to Reduce It

What is Ad Discrepancy and How to Reduce It

You’ve probably heard about ad discrepancy or ad impression discrepancy before. If you ever look at your ad server report, you would notice that there is a mismatch (discrepancy) between your and your partner’s ad impression count. 

If it’s a small difference of, say, 1-5%– there’s probably no need to worry. However, when it comes to 10% or more, it’s worth getting to the root of this problem.

Ad discrepancy can affect both ad impression and ad request count. In this article, we will mainly focus on ad impression discrepancy.  

What is Ad Discrepancy?

Ad discrepancy is the inconsistency in data between two sources. It occurs because of different technology, tools, and techniques used to measure analytical data. 

Most commonly, ad discrepancy refers to the mismatch in the number of ad impressions between the publisher’s ad server and the demand partner’s or ad exchange’s ad server. However, sometimes it refers to the difference in ad requests between the publisher’s and the partner’s ad servers. 

There are many reasons ad impression discrepancy occurs, but it’s often because the sell-side and the buy-side use different counting methodologies to measure ad impression data.

Ad request discrepancy happens when some ad requests are lost in an exchange between the publisher’s and the partner’s ad servers. Numerous redirects between the landing page and the ads, server timeouts, and network connection failures are the most common reasons for ad request discrepancy.

How to Calculate Discrepancy? 

The formula to calculate ad discrepancy, regardless of the metric, is:

Ad Discrepancy = | Ad Server Impressions – Third-Party Impressions | / Ad Server Impressions x 100%

To calculate ad discrepancy, you need to subtract the number of impressions reported by the third-party ad server from the number of impressions reported by the ad server, take the absolute value of the result, divide it by the number of impressions reported by the ad server, and then multiply the result by 100% to express it as a percentage.

Ad discrepancy is a measure of the difference in impressions or other metrics reported by different ad servers and can help identify potential issues with ad delivery or tracking.

Ad discrepancy calculation doesn’t show how your partner’s results are wrong, but it represents both–your and your partners’ discrepancies. It’s not the difference between each other but more the % of how much your number and your partner’s number differ from the true value.


There are various online calculators available on the Internet which can help you come to the same results. 

Why Should Publishers Care About Ad Discrepancy? 

In terms and conditions set out by Interactive Advertising Bureau (IAB), ad discrepancy below 10% is considered the norm. That’s because ad discrepancy, for the most part, cannot be totally eliminated. The reason is a complex tech infrastructure and various parties involved in tracking and reporting ad impressions.

Sometimes, ad discrepancy may occur because of inconsistencies in how different ad exchanges manage programmatic auctions. For example, the way how header bidding auction or the waterfall is implemented–through the ad server or directly added code into the publisher’s site.

In this case, ad discrepancy can be impacted by the website’s loading speed which affects the results of the programmatic auction. If the website loading speed is slow there might be a bigger ad discrepancy.

Also, a big ad discrepancy is an alert to improve your website’s loading speed and ad stack.

Related article: What is Video Header Bidding

7 Causes of Ad Discrepancy

As mentioned, there are many causes why ad discrepancy occurs. Let’s now look at some of them. 

1. Latency

Latency is essentially the total time a page takes to load. Low latency is critical in the programmatic auction (aka Real-Time Bidding), however, it is impossible to eliminate it fully. Moreover, other factors also influence how fast a page loads. For example, the latency of an ad server or the distance between the user and hosting server. 

However, high page latency might result in unfilled impressions. If the ads load after the page content, the user might leave before ads are served. As a result, the ad request will be recorded, but no impressions will be delivered.

Moreover, if the page takes too long to load, the user might simply abandon it, resulting in high bounce rates and hurt SEO

Related Article: 5 Proven Tips to Reduce Page Latency with Header Bidding

2. Ad blockers

It is estimated that 27% of users will be using ad blockers in 2021. Ad blocker technology uses filters to block ad requests, which results in users not seeing ads. This results in ad request discrepancy between your and your partner’s ad servers.

Usually, ad blockers block both–ad delivery and measurement. However, sometimes domains or advertisers can slip through the blocking system, creating ad discrepancy.

Ad blockers can seriously interfere with your report figures because they also block tracking codes which cause your analytics report and partner’s analytics report to show different values. 


Source: eMarketer

We at Setupad offer an in-house solution to recover part of ad revenue lost to ad blockers. We run non-intrusive ad formats in several placements per page in a fully transparent and user-consented way. Contact us at [email protected] or reach out to your Account Manager to find out more. 

3. Impression counting differences

There are many different ways to count ad impressions. Oftentimes it comes down to technological infrastructure, i.e., how the impression-counting platform is built.

Occasionally, the issue can be that parties count a slightly different point in the delivery of an ad, so you might want to find out what impression reporting methodology your partners are using. 

For example, Google’s Campaign Manager 360 (ad server) counts impressions when the creative (ad shown to the user) begins to download, while Xandr (SSP) counts an impression when it is delivered to the page and begins to render. There are also different methodologies to determine invalid impressions.

It becomes even more tricky when demand partners pull tags from third-party vendors/ad servers for the same ad placement, which results in even more discrepancies. 

4. Time zone difference 

Most analytics reports don’t provide real-time data but instead data for a 24h gap. So, imagine your time zone is set for UTC+02:00, whereas the demand partner’s time zone is UTC+0. That means whenever the report is generated, there will always be a two-hour gap that isn’t accounted for.  

Even though the two-hour gap seems small, there could be a significant traffic decrease or increase that can create quite a big difference between your and your partner’s reports.

5. Heavy creatives

Heavy creatives can be a major reason for ad discrepancy. Unfortunately, some creatives are just heavier than others. For example, video ads are generally heavier than display ads and require extra time to load. 

Imagine that you’re serving outstream video ads on your website. Now, a user comes to your site but leaves before the ad was still loading. As a result, there will be a discrepancy in the final number of impressions (video plays) served. The publisher’s ad server counted the impressions, but the ad did not have a chance to be displayed. 

6. Bot traffic

Bots are essentially a special software that inflates traffic to earn money from advertisers. However, most ad servers use bot filtering tools to check for suspicious traffic. So, if your site has been a target of bots, there’s a big chance your website will be blocked and will not be able to display ads. This is why it’s important to keep an eye on your traffic in analytics reports and use security checks such as reCAPTCHA and robots.txt files. 

Sometimes, the discrepancy grows during certain hours of the day, for example, during night hours. This also may be a sign of traffic quality issues. 

Our team put together an ultimate guide on how to detect and avoid bot traffic, so make sure to check it out too. 

Malvertising attacks can also cause ad discrepancy. For example, when the anti-malvertising software blocks the low-quality ad, it can take some time for the new ad to load, thus creating discrepancy.

7. Human errors

This may be obvious, but a lot of the time, issues occur because of simple human mistakes. For example, there could be a missing ad tag or incorrect setup in your ad server (e.g. GAM). All these mistakes can mess up the results.

Make sure you carefully check all pages that contain ad tags and ensure that your ad server and partner’s ad server have the same tags and campaign settings. Usually, when you partner with a monetization platform, dedicated AdOps will take care of this process. With Setupad, you can be sure that no human errors will cost your ad revenue! 

Related article: SSP vs Monetization Platform | Difference Explained

3 Tips on How to Reduce Ad Discrepancy  

1. Use cache buster

Browser caching is necessary to speed up your page, so when the user who previously visited your page opens it again, it already has HTML, CSS, and JS stored on his side. However, caching can cause the user to see ads from the old version of the web browser, not the ad server. As a result, a publisher will display the ad several times, while the demand partner will only count one impression. 

Cache buster informs the browser that a new version of the file is available using a unique file version identifier. As a result, instead of retrieving the old file from the cache, the browser sends a request to the origin server for the new file. 

Just like for browser caching, cache buster plugins are widely available for most CMS. 

2. Choose longer time intervals for different time zones

Time zone differences can cause serious inconsistencies in reports, therefore, it is important to choose longer time intervals between time zones so the difference is not that big.

If possible, you should agree on the time zone for which you and the partner will be pulling reports. You should also assess the data for the same period to get accurate results, for example, for a 30-day period. 

3. Create daily reports

Consistency is key when it comes to the discrepancy. Once you know what an average discrepancy for each demand partner is, it’s much easier to notice any sudden spikes. Creating daily reports can help with that. 

For example, if the discrepancy for one demand partner was usually around 7-8% and then suddenly rose to 13%, this is a signal of abnormal behavior. It is, therefore, essential to check all third-party reports (like Google Analytics) and see if anything was changed in the campaign.  


As you can see, many different factors influence ad discrepancy. In many cases, ad discrepancy cannot be realistically mitigated, as it comes down to a complex tech infrastructure. 

However, we always advise publishers to ensure which counting methodology is used by their partners. It should be the same third-party analytics vendors to decrease the chances of higher ad discrepancy. 

About Alise Zaiceva
Alise is a content marketing manager at Setupad. She’s passionate about content and helping publishers scale their businesses through powerful digital marketing strategies. In her free time, she expands her knowledge of tech.

message icon message icon big