As a website owner, the impact of your website speed on traffic, conversions and revenue should not be underestimated. A report by Akaimi found that 46% of people on the internet expect a wesbite’s pages to load in less than 2 seconds and 40% of people will abandon a web page if it takes more than 3 seconds to load.
Many other studies have been published on the impact of website speed, another study found that a 1 second delay in site loading time resulted in a 6% conversion decrease, and 12% decrease in page views and a 15% decrease in customer satisfaction. As you might already know Google uses website speed as a ranking factor.
So, having a slow loading website will negatively impact the following:
- Brand image and perception in the mind of your visitors
- Traffic & page views
Before you start optimizing your website to load faster, there are two things you should consider:
Here are the tweaks, in no particular order. Just pick ones that you think can be easily performed first.
1) Remove Unnecessary Plugins & Add-ons
Unnecessary plugins and add-ons can reduce your website speed by A LOT, and it’s especially important to pay attention to them if you use blogging CMSs like WordPress or Drupal.
For reference, you might be able to increase your page load times for 4 second to 1.5 seconds.
It’s very important to note that it’s not just about the number of plugins you have installed on your website but about the quality as well. A website with 50 plugins can load much faster than a website with 10 plugins if the website with fewer plugins have crappy plugins. Generally, you want to avoid plugins that load a lot of scripts and styles, plugins that perform lots of remote requests and plugins that add extra database queries to every page on your website.
Indeed, plugins help enhance your website’s functionality but it is also important to only use a plugin if you’re convinced that it is absolutely necessary.
If you’re a WordPress user, you might want to install the P3 (Plugin Performance Profiler);
This plugin will scan all of your WordPress plugins to find the bottlenecks, and give you a report so that you can see how each plugin affects your website performance.
2) Significantly Limit (or Remove) Social Sharing Buttons on Your Website
If you believe that you need to have 100 social sharing buttons on your website, think again. It’s hard to pinpoint research that establishes a massive boost in website traffic due to having social sharing buttons (if anything, too many social sharing buttons will confuse your readers), but research shows that a slow website does reduce traffic.
The solution is to either limit/remove social sharing buttons, or to configure them to load asynchronously so that an outage of a particular social media site won’t slow down your website.
3) Enable “Expires” Headers
There are several factors that influence how fast a website is, but the server response time contributes a great deal to site speed; the more requests are being made to your server, the slower it’ll take your website to load.
Expires Headers tell your visitor’s browser when to request certain files from your server vs. from their browser cache; if an Expires Headers is configured so that your visitor’s browser only request a file once in a month, and that file has been stored in their cache from a recent visit, then their browser won’t request that file again until a month is over. This is like a double-edged sword for boosting site speed because it limits the number of HTTP requests on your server and at the same time reduces load on your server since the same file won’t be requested repeatedly.
If you want to implement Expires Headers on your website, this GTmetrix tutorial shows you how.
4) Enable HTTP Keep-Alive
Usually, when a visitor’s web browser tries to request a file from your web server, it will grab each file individually; in other words, a connection closes when a file has been grabbed, and then reopens to request a new file. This uses more processor, network and memory and eventually leads to a slower website if there’s a lot of load on your server. Enabling HTTP keep-alive ensures that all file requests to your server will be made via a single open connection, leading to a much faster website for your users by limiting the number of connections to your server.
You can enable keep-alive by copying and pasting the code below into your .htaccess file:
Header set Connection keep-alive
5) Enable Caching
Caching ensures a much faster experience for your website users by storing a version of your website on their browser and serving them that version until your website is updated or until you instruct it to refresh the version of your website they are served.
Enabling caching for your website can boost its speed significantly, and research shows that enabling a full cache for a website can reduce the website loading time from 2.4 seconds to 0.9 seconds; now, that’s massive!
There are different ways to enable website caching depending on what platform you are using; for WordPress, you can install the following plugins:
Here are more tutorials on how to enable caching for your website:
6) Optimize and Reduce Image Size
Un-optimized images can be very heavy, and as a result use a lot of server resources and take longer to load; if the average image size on your website is 1mb or 2mb+, you’ve got serious work to do.
7) Regularly Optimize Your Database
This is an often ignored but very powerful way to boost your website speed; it is especially effective if you use WordPress or any CMS that rely heavily on database usage.
Some CMSs, and the plugins you install, rely a lot on your database to save data; this increases data stored in your database as you use the CMS/plugin, making your website gradually slower. This especially applies to plugins that save logs, statistics and user data. It also applies if you use WordPress and enable post revisions, pingbacks and trackbacks.
You can make your website much faster by regularly cleaning up your database, a process that can be automated with the WP-Optimize plugin if you use WordPress, or manually (for other platforms) by following this tutorial.
9) Combine Your Background Images into Image Sprites
The more requests a user’s browser has to make to your server, the slower your website will be for that user; most website templates are made up of multiple background images, and this ends up creating several different requests whenever visitor’s try to load the website. The solution to this is to combine those images into one, so that a visitor’s browser only has to request one image when trying to load your website; this can be achieved with image Sprites.
By combining background images into image sprites, you’ll be able to reduce request overhead, the number of bytes your visitor’s browser downloads and delay caused by roundtrips made when your server is downloading other resources. This will lead to a much faster website.
10) Avoid Image Hotlinking and External Requests
Image hotlinking, also known as “inline linking” is the act of linking to an image on another person’s website, instead of loading the image on your own server. On the surface, this seems like an act that will save you a lot of bandwidth, especially if you have a high-traffic site, but it can actually make your website really slow if the website that hosts the image you hotlinked is experiencing a downtime or is slow.
Whether it is images inside your content, or banner images for your ads, be sure to first host your images on your website before linking to them.
To ensure a fully functional website, you have to rely on files and resources from other websites; as a result, you have to embed videos, presentations and other multimedia files. While this isn’t necessarily bad, if it’s too much or if you’re requesting external files from slow websites, it can have an impact on your site load time.
Try to limit the number of external requests your website will make; if possible, host as many files as you can on your server. For other files, only let your website request them from very reliable websites.
11) Prevent Others from Hotlinking Your Images
Just as it is important to avoid hotlinking other people’s images, you should also prevent others from hotlinking your own images.
When people hotlink your images, they are basically stealing your bandwidth since a request will be made to your server every time their readers tries to view the images on their website. You can prevent this by disabling hotlinking of images hosted on your server.
Your Turn To Test Your Website Speed
After implementing the above suggestions, you should go ahead and test your website speed to see if there’s a difference (leave a comment below if you see difference :). Here are my top recommendations for testing your website speed:
Pingdom Website Speed Test: With this tool, you should aim to get a reduced site load time as well as a reduced number server requests. This tool also compares your website speed to other websites online.
GTMetrix: This tool analyzes your website speed using Google Page speed Insights and and gives you a rating from A to F. It also offers suggestions for improvement.
Webpage Analyzer: This tool gives you information on your page size and website download time, and it offers suggestions on how to improve your site load time.
Google Pagespeed Insights: You should aim towards a score closer to 100. It also has a mobile speed test tool that you can use.
Yslow: This tool analyzes your website speed based on Yahoo!’s rules for website performance.
WebPage Test: The closer your score is to 100, the faster your website is.