What Are Heavy Ads?

by Eric Trouton, on Dec 21, 2020 9:00:00 AM

Heavy ads are digital advertisements that consume an inordinate amount of system resources and can significantly slow down website page load times.

Heavy ads are a big concern for digital media companies that live and die by user engagement metrics like page views per session and total number of page views. 

Not only do they create poor user experiences (which can lead to high bounce rates or subscriber churn), they may also be flagged by browsers such as Chrome, which has begun intervening to unload heavy ads if they meet certain criteria.

Improving page load speed is on the mind of nearly every AdOps team, and allowing heavy ads to load in your on-page ad units can be one of the biggest issues you face in the battle to reduce page load times and improve the user experience.

-- Article Continues Below --

New call-to-action

What Constitutes a Heavy Ad?

Heavy ads degrade performance and may eat up the resources on a user's device by using up a disproportionate amount of bandwidth or draining the device battery. 

In order to understand heavy ads, it's important to first start by defining what a browser’s "main thread" is.

The main thread is where browsers process the majority of page load activities and user events. Browsers usually rely on a single thread to do all of the following:

  • Run all JavaScript on page
  • Perform the rendering of the layout of the page
  • Re-calculate the positions of elements of the page when needed
  • Garbage collection

Because of the way main threads function, JavaScript in particular can block the rendering of page layout if it takes up too many of the main thread resources. Because digital ads rely on JavaScript for their execution, it's important that they be designed in a way that minimizes the load on the main thread.

The less processing time that is required of the main thread, the faster it can respond to user events and layout shift requirements.

Keeping the main thread free essentially creates faster page load times and better responsiveness.

According to Google Developers, a heavy ad is defined as an ad that hasn’t been interacted with by the user and does one of the following:

  • Uses more than 4 MB of bandwidth on a network
  • Occupies a main thread for more than 15 seconds in a 30 second window
  • Uses the main thread for up to a minute in total 

In total, Google estimates that only about 0.3% of ads meet or exceed the established criteria for heavy ads. That said, this small category of ads eats up to 27% of network data requirements and 28% of total ad CPU usage.

In short, stopping these 0.3% of ads can potentially solve up to almost 30% of your page load speed issues.

Because of the problems that heavy ads cause, Chrome is experimenting with setting limits on them and even unloading heavy ads if those limits are exceeded in order to protect individual device resources. 

Looking for the most effective ad redirect prevention solutions?

clean.io identifies malicious JavaScript in real-time, before the page is hijacked, and disables it. Ultimately the creative is served, you get paid, and the malicious portion of the ad is disabled.

Try it Free for 14 Days

Negative Impact of Heavy Ads

Heavy ads are more than just annoying for users. Because they create a poor user experience, they also erode user engagement and publisher revenue.

Here's how it usually plays out:

  1. Heavy ads slow page load speeds: These behemoths can slow down your initial load times significantly.
  2. Users get frustrated: Nobody likes a website with slow load time. Statistics show that even a single second delay causes big frustrations.
  3. Engagement metrics tank: Frustrated users result in lower engagement metrics including page views per session and total page views.
  4. You have fewer ad impressions to sell: Fewer total page views means fewer ad impressions, which means a hit to revenue.

Heavy ads are also a drain on users' device resources, including network data and battery power.

Some heavy ads may also mine cryptocurrency or aren’t optimized for network usage. All of them downgrade user experience and make it harder to browse online.

website loading cartoon


What Can You Do About Heavy Ads?

Based on the criteria Google has set for heavy ads, most anticipate that the majority of ads that are unloaded under Google's Heavy Ad Intervention will be video content. 

Last year, in Github posts about heavy ads, developers were describing the following situations in which ads might be unloaded by Chrome:

  • Ads that are loading large video files before user action
  • Ads that are performing expensive operations in javascript, such as CPU timing attacks or decoding video files
  • Ads that are trying to load poorly compressed image files
  • Ads that are mining cryptocurrency

Unloaded frames will be part of ongoing feedback to Chrome, which can be flagged using their AdTagging service.

The thresholds and criteria have led to the creation of a specific platform to block heavy ads on Chrome.

Chrome 85: Heavy Ad Blocker

Released in August 2020, Chrome 85 now comes with a heavy ad blocker that allows individual users to enable a Heavy Ad Intervention flag on their devices.

From a user-perspective, Chrome’s heavy ad blocker should effectively limit ad displays, including disruptive heavy ads.

Non-Chrome Browsers

If users are visiting your website through browsers other than Chrome, additional tools may be required to prevent heavy ads from causing user frustration.

The Bottom Line

Most heavy ads are the result of poorly built creative rather than intentional malicious attacks, but recognizing them is key to keeping your page load times intact and your users happy.


Topics:AdOps StrategyHeavy Ads

Our blog

Where businesses come to learn more about protecting the points of digital engagement with their customers, audiences and users.

Subscribe to Updates