Ecommerce Site Speed
Though site speed was announced by Google as a ranking factor, this has yet to make a significant impact in the search results. From what Google has said about site speed as a ranking factor, a site’s speed only impacts rankings when a site takes a really long time to load. As long as your site’s load time is within the realm of normal, you shouldn’t be worried about this impacting your organic performance. This doesn’t mean that you should ignore site speed though. According to Kiss Metrics, a 1 second delay in page load time can decreases conversions by 7%. How fast your ecommerce site loads has a direct and significant impact on your conversions and your bottom line. Amazon found that slowing their page load time by 1 second would cost them $1.6 Billion in sales. Revenue isn’t the only metric impacted by page load time though. Almost half of users expect a website to load in 2 seconds or less. If your site takes longer than 3 seconds to load, you are losing the opportunity to engage with 40% of your visitors – these are people who don’t buy on their initial visits and are highly unlikely to come back. While improving ecommerce site speed is very nuanced and unique to each individual site, experience has yeilded five common optimizations that yield the most significant wins. These are your server, GZIP compression, caching, optimizing images, and removing extra plugins/add-ons.
Your Server (and CDN)
Having a really fast and reliable server is one of the biggest things you can do to improve your site speed. A quality server will not only reduce your delivery time, but will reduce your response time – which can be one of the biggest culprits in large load times. If you are on a shared host (likely the cheapest hosting you could find) upgrading to a good server for ecommerce should be your first step. While a VPS solution is likely ok for many small ecommerce sites, most sites will want to move to a dedicated server or cloud solution. If you’re already running on a good server, you should look into leveraging a CDN. This will allow browsers to download images and other assets from a different and fast server in order to decrease the page load time. If your site is image heavy, you should definitely be using a CDN to optimize your ecommerce site speed.
GZIP Compression
GZIP simply compresses your files when your server sends them to your users’ browser. The browser then de-compresses the files and renders them. This allows for a faster page load time as the amount of data that has transferred to your users is significantly reduced. Using GZIP on text files (HTML, JS, CSS) provides optimal results, sometimes even in the range of 70% – 90% for larger files. GZIP tends to have a limited effect on images though; here you are better off optimizing your images (below) rather than trying to use GZIP to compress your images. You can test to see if your site is currently leveraging GZIP compression here. If you want to enable GZIP compression, and you’re running on Apache, simply paste the code below into your .htaccess file:
# BEGIN GZIP
AddOutputFilterByType DEFLATE text/text text/html text/plain text/xml text/css application/x-javascript application/javascript
# END GZIP
Official Apache documentation. Documentation for running on NGINX and IIS.
Enable Caching
Another way to speed up your browsing experience for your users is to make sure you have caching enabled. Downloading assets from your server to your users’ browsers takes a lot of time. Caching allows you to save common assets to your users’ computers so when they are requested, they can be loaded directly from the computer rather than requiring bandwidth. To enable caching, you need to configure your headers to have a max-age command. This is simply the amount of time (in seconds) that the browser should keep a saved version of the asset.
Optimizing Images
Images are a common culprit of slow page load times on ecommerce sites. If you’re using a lot of images (which you should to give your customers a good look at your product), you’ll want to make sure that you have optimized your images as this can have a huge impact on your page load time. As a general rule, you should try to avoid using images whenever possible. Removing images in favor of HTML/CSS/JavaScript will often yield some of the most significant gains in site speed. That doesn’t mean that you shouldn’t have any images, but you should make sure that you really need an image. Can you replace an image by using web fonts? Similarly, are there any effects (shadows, gradients, animations, etc) that can be done with CSS rather than using an image? If you do need to use images, you’ll want to make sure that they are compressed in order to avoid requiring the user to download large image files. The simplest way to do this is to reduce the number of colors in an image since this reduces the amount of data that needs to be stored in the image file. When you are exporting an image file, you’ll need to experiment to find the most appropriate setting for the image that you’re working on. You’ll also need to decide on the file type for your image. There are three main contenders: PNG, JPEG, and GIF. If you need animation in your image, GIF is your only option. If you need to preserve crisp details with a high degree of resolution, you should go with a PNG. For many cases though, a JPEG is the best solution – it is somewhat of a value option, providing decent resolution for most cases while providing a significantly reduced file size.
Reduce Plugins and Add-ons
Plugin bloat, especially with WordPress sites, is a common problem that can bring a site to a crawl. When you are running a ton of plugins, frequently, these plugins will all be making calls to the database each time the page loads. This can have a huge impact on how long it takes your page to load. To combat this, start by removing any unused plugins. You should also look for opportunities to combine plugins – for example, the Yoast WordPress SEO plugin has capabilities that often makes several other plugins redundant. If you can remove several plugins by installing another, this can often reduce calls to your database and improve your site speed.
Action Items
- Review your server and CDN setup; make sure you are running your ecommerce site on a fast server
- Enable Gzip compression
- Enable browser caching
- Optimize your images
- Reduce plugin bloat
- Get more prescriptive recommendations from Google’s Page Speed Insights and Page Speed Test