What is a Widget?
The Problem with Widgets
Even popular widgets can have negative effects on website performance. Google Analytics is widely used to track statistics about websites (formerly Urchin). On Thanksgiving weekend of 2012, a popular website for computers and laptops suffered because Google was slow that day (Sunday, November 24, 2012, see Figure 2). When configuring a popular Lenovo laptop (Thinkpad X230) Lenovo.com served up a page that hung for more than a minute, waiting for Google to deliver its payload to Lenovo.com.
Another Cyber Monday Example of Slow External Resources
Another example is PC Magazine. Searching for the top 100 websites, the page was delayed while waiting for an external server to deliver a programming API (see Figure 3).
To be fair this behavior tends to happen on busy online shopping days like Cyber-monday, Black Friday, and the week before Christmas, but this third-party slowdown can happen at any time.
How to Combat Widgetitus
Many of these external resource delays are preventable. The solution is to periodically cache the resource locally on your server and serve it locally. You can use a CRON script to periodically copy the external resource over to your server. Here are some techniques you can use to minimize widget overhead.
- Cache the remote resource locally (CRON to copy periodically)
- Load the resource in an iFrame to decouple the script from your page loads
External widgets can cause indeterminate delays of your webpages, which can reduce response time consistency. If your users cannot rely on consistent performance of your site, they are more likely to go elsewhere. To improve attunability, localize external resources to reduce reliance on third-party servers.
- Designing for Delay in Interactive Information Retrieval
- Chris Roast, Interacting with Computers 10 (1998): 87-104. Introduced the notion of attunability. Consistency in response rates is important for user satisfaction.
- Diagnosing Slow Web Servers with Time to First Byte
- Slow web servers can be caused by a number of factors. You can test for slow server response times with the time time to first byte metric.
- Google Analytics Is Installed On More Than 10 Million Websites
- Google’s own conservative estimate of the number of sites using Google analytics is over 10 million sites as of April 2012. Marketing Land, Nov. 25, 2012 accessed.
- Speed Optimizing Google Analytics
- Learn how to speed up web pages that use Google Analytics with a few simple changes, while maintaining its advantages for faster-loading sites.