Ad Buyers Beware: 4 Factors That Will Crash Your Website
So, we’ve had a ton of fun monitoring Superbowl ad sites for performance and uptime, trying to predict which ones will crash, and analyzing the results. In the end, 13 out of 51 ads (25%) had web site failures. Once the dust settled, I decided to take a look at the ads, and the dozens of variables captured by our site monitoring product – all factors that you can measure for any web site in about 10 seconds. The goal was to see whether there's a way to assess a site's vulnerability, and proactively identify actions that can help prevent crashes from traffic spikes driven by successful marketing campaigns.
And turns out, there are five factors that had important predictive value for whether a site will crash. Let's take a look at each of these, as well as ways to minimize risk of outage.
Time to Interact: Slow Sites More Likely to Crash
Sometimes simply referred to as page load time, this is a timing metric that refers to the time duration from when a web page URL is entered into a browser window to the moment when the page and all the page resources are fully loaded, rendered and ready for user interaction. Turns out that sites that are slower under light load become increasingly sensitive to crashes during heavy load.
Although the particular mechanism varies from site to site, the phenomenon is broadly related to the bottlenecks (whether at the server, the data center, or the rest of the network) and the non-linear relationship between capacity and delays. So the take-away is straight-forward: make sure your site loads fast (e.g., within ~5 seconds).
Number of Domains: 3rd-Party Widgets Can Crash Your Site
The more 3rd-party widgets you use, the more risk there is of "blocking behavior" -- that is, the rest of the page’s execution gets put on hold while the script downloads and is executed. That’s risky for web performance: if a script coming from a third party has a performance issue, the rest of the web page will suffer. You can bypass this blocking behavior by forcing third party scripts to load asynchronously. That way, the rest of the web page can load before or during the execution of the script. (You can do this manually, or have a web acceleration service such as Yottaa's Site Optimizer do this automatically.)
Asset Count: "Mo Assets, Mo Problems"
Every request on the web page represents a single point of failure. By reducing the # of requests, the reliability and availability are improved proportionately.
To reduce the number of requests, you can combine similar scripts and stylesheets. This does not change the size or composition of the assets – they will simply be called by a single request, instead of each requiring its own. Likewise, you can combine some of a page’s images into a “CSS sprite.” This means reproducing the content of multiple images in a single, larger image file and using CSS to position the pieces of content in the required locations of the former images. (You can do this manually, or have a web acceleration service such as Yottaa's Site Optimizer do this on the fly.)
Presence of URL in Ad: Drive Traffic, But Be Ready For It
The factors above help us assess a website's vulnerability under load. But the other important factor, of course, is whether a marketing campaign actually drives traffic to the site. So we looked at this, in a couple ways:
- First, whether the ad even mentioned the URL. Believe it or not, over half the ads DID NOT! (#marketingfail) In other words, those companies spent millions to create and air the ads, but did not lift a finger to drive online engagement. (Seems like an insane oversight to this marketing guy.)
- Second, whether the ad somehow encouraged viewers to visit the site. Some did - Coke's 'Chase' commercial let fans vote on the ending; whereas others had absolutely no online call-to-action.
To be clear, we are not calling this out as a bad practice - driving online engagement is obviously a great marketing goal. But doing this means there will be more traffic, and sites that weren't ready for this paid the price.
Crash-Proof YOUR Site
Now, there are of course other factors that contribute to whether a site will fail. I did not look at their infrastructure, did not consider popularity and typical traffic patterns of the site, and a myriad other factors that influence performance. That said, it’s interesting to note just how much predictive power four simple parameters have. And the cool thing is that every one of these is actionable: you can assess these using a variety of free web performance tools, and take action.