When speaking with various website owners on the topic of how they manage their Web Performance, we occasionally hear statements along the lines of: “We have a CDN to manage performance of our site.”
It is often misunderstood that using a CDN is not a Web Performance Management silver bullet.
Akamai, and other CDNs, provide a service where you can offload your site’s images and other static content to data centers which are close to your customers. The idea is that if there is less distance for your content to travel, it will get there faster.
This is true, however, image download time is typically not the major bottleneck in page load time. When dealing with clients in the eCommerce and SaaS world, here are the two most common causes to poor Web Performance:
- 3rd Party Content
- Server-Side Processing
Neither of these bottlenecks are addressed by loading static content from a closer location. Let’s examine an example of each case.
3rd Party Content Delays
This first example shows the load time breakdown of a single page that took over 1m to load. This particular site makes use of a number of Web Performance Management best practices. However, when we investigate the page to see what is causing the delay, we find that it’s caused by an intermittent issue with an asynchronously loading 3rd party plugin.
Regardless of the robustness of the content delivery methods, this page, as designed, will always be subject to delays from the 3rd party plugin. Spending thousands of dollars on CDNs will not solve this problem. By delaying the load of this plugin until the page is completed, you will enable the page to load independently of 3rd party delays.
Server-Side Processing Delays
This example is from an eCommerce site that currently utilizes a CDN to deliver their static content. By monitoring their checkout process (Go to Site -> Select Item -> Add Item to Cart -> Checkout) we go through 4 pages in just over 18s. Most of the pages load quickly, with images and other static content loading in under 50ms.
Even with the content downloading quickly, we still see a glaring bottleneck in the conversion path. The “Add Item to Cart” function takes over 7s to process on the server! That gives the customer 7s to watch the loading spinner and abandon the site. This function needs to be optimized on the web server itself.
What is the Silver Bullet?
The point of these examples is to illustrate that there are no silver bullets when it comes to optimizing your Web Performance.
If you want to make meaningful improvements on your site, you must:
- Take a top-down approach – Analyze your site’s critical functions the way your users access them.
- Find your bottleneck – What are the top 1 or 2 contributors to page load time?
- Optimize the bottleneck – Focus your improvements where you will receive the performance maximum gains.
Otherwise, you are likely to spend significant time and money spinning your wheels and getting insignificant results.
What other causes have you seen that slow down your sites?