A popular belief is that header bidding slows down your site. But if the setup is efficient, you don’t have to worry about it. We understand that the speed of the site has a great impact on user experience and revenue, that’s why we have compiled the tried and tested techniques to keep your website fast while running header bidding. Make these changes to ensure that there is a perfect balance between the user experience and the revenue on your website.
Table of Contents:
- What Causes Page latency While Running Header Bidding?
- Why Should you Ensure there’s Little to No Latency in Header Bidding?
- How to Overcome Page Latency Issue?
- What’s Next?
What Causes Page Latency while Running Header Bidding?
Client-side header bidding (the most common type) runs on the users’ browsers. That is, ad requests are sent from the user’s browser to multiple demand partners. While it isn’t new to send requests to third-parties via browser, sending multiple requests can have an impact on the page load speed — only when done improperly. That’s why you should pay attention to the implementation process.
Why Should you Ensure there’s Little to no Latency in Header Bidding?
There are a couple of reasons.
It increases the page loading time, thus the traffic from Google can reduce. Latency can also cause bidder timeout, resulting in lower ad fill rates. And, more importantly, it affects the user experience and increases the bounce rate.
How to overcome Page latency Issue?
There are certain strategies that are proven to reduce page latency issues and maximize the revenue from header bidding partners. To name a few,
- Analyze the bidders.
- Try Front loading decisions.
- Reduce the HTTP Requests.
- Switch to HTTP/2 Protocol.
Analyze the Bidders
Use the Headerbid Expert plugin by AppNexus and analyze the latency at the bidder level. Here is what you should be looking for:
- Observe if there are any bidders that are frequently failing to bid due to the sequence in which they load. When bidders do not get sufficient time to bid then they will naturally fail. Make sure that all bidders load at the same time. If you are using Prebid.js then there is a high probability that all the bidders are already loading together.
- Find out if any of them are frequently being ignored by the ad server due to late responses. It will lead to a loss in potential revenue. To solve this problem, You can choose to load all such bidders earlier so that they are getting the time they need.
- Check if there is a huge difference between the loading time of the fastest and slowest bidders. Slow bidders make the ad server to wait and delay the process. To avoid it, you can experiment with the ad server timeout. Alternatively, you can choose to remove a bidder if it is causing delays frequently.
Note: Here’s a list of header bidding Chrome extensions you can you to troubleshoot and optimize your setup.
Try Front Loading Decisions
In header bidding, the wrapper normally sends requests in two stages. In the first stage, the request is made for the bids from the wrapper to the demand partners (SSPs). The second stage begins after the bidding is completed and the winning bid has been decided. Now a second request is sent to the bidder that won the auction. The second request is for the creatives that are to be displayed on the page.
If the ad creatives are received along with the bids, then there will be no need to send a request again. Once the bidding is completed, the creative from the winner can be delivered instantaneously. It can save the time that would have been spent in sending a separate request to the winner and then receiving and delivering the creatives.
Caution: Front loading decisions can be faster, but it can create problems too. One, it might lead to discrepancies in your reports (because of how SSPs and your ad server counts the impressions). Two, it might not be efficient for all the setups — imagine Ad Exchange line item winning auctions most of the time, then it doesn’t make sense to get creative and increase the weight of the client-side requests.
Reduce the HTTP Requests
Web browsers can send a limited number of outgoing HTTP requests to the server. For example, Chrome can handle only 10 concurrent connections at max. If there will be a lot of HTTP elements to load then the page will slow down. It can even hinder the header bidding process as well because header bidding also involves HTTP requests. Therefore it is best that your page needs the minimum number of HTTP requests for loading. Here are some suggestions to do so.
- Find out the HTTP requests on your pages with the help of tools like Chrome Developer Tools and Page Insights.
- Combine similar CSS files together so that the browser does not need to send request separately for every file.
- You can also limit the number of files like images, videos, and other media files on your pages.
- Reduce the amount of other external scripts by finding out and eliminating the assets that are not necessary on the page or load less necessary assets later by using the onload logic
- Use browser caching so that the users revisiting your sites do not have to load the entire page from the server.
You can also optimize the speed of processing the HTTP requests by following best practices like:
- Compressing the media files to smaller sizes so that they can load faster.
- Using Content Delivery Network for a faster transfer of data.
- Implementing asynchronous page loading so that the requests are not blocking each other.
- Implementing Lazy Loading
Switch to HTTP/2 Protocol
As we discussed earlier, the browser can make a limited number of requests at a time and reducing the number of requests can improve the speed of your website as well as the speed of the header bidding process. HTTP/2 protocol provides a solution for doing so. It uses a process called multiplexing which combines the different HTTP requests to reduce the server load. Multiplexing enables the browser to send multiple requests in one go with a single connection and receive the requests back in any order.
To start using HTTP/2 Protocol, you need to install an SSL or TLS certificate on your website. You can purchase the certificates from Cloudflare, Let’s Encrypt, or any other similar sites. To use the HTTP/2 protocol, it is necessary for your web servers to support it. There is a very small chance that your server doesn’t support it, but if it doesn’t then you have to update your server manually.
Optimizing the header bidding setup and minimizing the HTTP requests on your site should be your broader aim. Whether you are creating content or revamping your site, you have to keep these broader objectives in mind and avoid taking actions that lead you in the opposing direction. Having a fast website will help you in maintaining the user experience as well as gaining more traffic with improved SERP rankings. Having an optimized header bidding setup will help you with better revenue.
If you are working with a header bidding provider, you can ask how they’re optimizing the header bidding script to maximize page load speed.