Optimising a website for page speed is one of the most important and most neglected features in website development. Often, performance is ignored by development companies in order to complete a project as quickly as possible and the steps required to reach acceptable performance levels are a bit too technical for most website owners.
According to a StrangeLoop case study that involved Amazon, Google, and other larger sites, a 1 second delay in page load time can lead to 7% loss in conversions, 11% fewer page views, and 16% decrease in customer satisfaction.
Search engines use page speed to rank your site, so slow page load times can hugely affect your SEO rankings.
Slow page load times can also increase the load being placed on your server, which at scale can result in your site becoming inaccessible to users for long periods of time when traffic is high.
In this post, I will be touching on 5 optimisation strategies we used for Galway Daily to drastically improve their website performance.
Website Speed Improvement Guide (5 Sections)
1. Image Optimisation
1.1 – Compress Images
Compressing images is one of the easiest and most effective optimisations that can be made on your site. Large images can slow websites down massively for users. There are various plugins that will compress images for you as you upload them to your site.
One of the most important aspects of image compression is finding the right level of compression that provides the optimal user experience without reducing the quality of your images too much. It is best to use an image compression plugin that uses their own server to compress your images.
1.2 – Offload Media
Offloading your media involves copying the media files from your server to an external data storage provider (Amazon S3/Google Cloud Storage/DigitalOcean). This allows you to free up space on your server and serve media from the external storage provider directly. It also reduces the number of requests your server has to fulfil. This is especially effective when coupled with a Content Delivery Network (CDN). Choose an offloading plugin that works with your preferred storage provider.
1.3 – Serve Images through a CDN
Content Delivery Networks are designed to deliver content as fast as possible. Copies of your images are stored on multiple servers around the world, meaning users will be served by the storage location closest to their physical location. CDNs can be configured to serve images from your own domain name (media.domain.com), which helps build SEO rankings and trust levels with users.
1.4 – Lazy Load Images
Lazy loading allows your site to load images as they appear to the user on screen. This means that images outside of what a user sees on a page initially are not loaded until the user has scrolled that content into view. This is particularly useful for image heavy sites, like a news website with many images on the homepage. Many themes come with an offloading plugin built in, alternatively there are various plugins that can help with this.
2.1 – Minify code
This is particularly effective for websites using themes that are CSS heavy. There are plenty of plugins that will minify bulky code for you.
Fig. 1 – Compressed Computer Code
2.2 – Defer script execution
Deferring script execution means waiting until the page is fully loaded for the user before downloading certain scripts. Some scripts are large and increase page load times even though they are not required by the user straight away. Speeding up the time until a user can interact with the page is also great for SEO. We have found this plugin to be the most reliable for managing script execution.
3. Server Optimisation
3.1 – Enable GZIP Compression
This is a server side optimisation that can have a huge affect on page load times for your users. When this is enabled your server will compress your website files so that users can download them faster and unzip them in the browser. This also reduces bandwidth usage considerably, which will have a direct affect on your hosting costs with some providers.
3.2 – Add expires headers to resources
Adding expires headers to static assets on your website will greatly speed up your site for returning users. Adding these headers to static files, like CSS and images, will allow users to store them in their browser resulting in considerably faster load times.
Fig. 2 – Website Server Hosting
3.3 – Ensure PHP is up to date
PHP is the primary programming language used to build the core WordPress platform, themes, and plugins. Each new release of PHP comes with significant performance improvements, so keeping this up to date is essential.
3.4 – Ensure server configuration matches theme requirements
Each WordPress theme has its own server requirements for optimal performance. These can usually be found in the theme options and consist of things like PHP memory limit, max script execution time, and max input variables. Many hosting providers have these set far below the recommended levels, in which case you will have to ask them to increase them to whatever is required by your theme.
4. Database Optimisation
Cleaning & optimising your WordPress database is one of the most effective techniques for minimising the stress on your server and reducing page load times for users. Optimising your database clears out all the unnecessary and inefficient data that builds up over time, including post revisions, pending comments, trashed items and stale data. This plugin allows you to configure scheduled cleans and set which aspects of your database you would like to optimise.
5. WordPress Optimisation
5.1 – Remove Unnecessary Plugins Entirely
Keeping unused plugins active will take up space in your database and increase the amount of data each user has to download to access your site. It is important to delete unused plugins entirely rather than just deactivating them, as they will still take up space and retain settings when deactivated. Deleting bulky plugins like Jetpack can have a significant impact on performance.
5.2 – Keep WordPress, Themes and Plugins up to date
Keeping your WordPress core, themes, and plugins up to date is absolutely essential. Aside from the security improvements that come with updating these, there are often performance improvements that come with having the latest versions. Letting plugins become outdated can result in bugs, increased load on your server, and huge security issues. Updating plugins is easier than fixing a hacked or downed website.
5.3 – Use a Firewall Plugin
Activating a firewall plugin that will automatically block IP addresses that are spamming your site can have a very positive impact on your page load speeds, especially for a well ranked site or one with a large volume of traffic. These sites are often spammed with login attempts, which can exhaust server resources and make the site slow for real users. We usually go for this one.
The Results Speak For Themselves
Fig. 3 – Major Page Speed Improvements
Fig. 4 – Server Resource Usage Improvement
If your site is still not performing after these optimisations you may not have sufficient resources to handle your current level of traffic, and probably need to scale up the server you are hosted on. This involves contacting whoever manages your website and asking them what options are available for increasing server CPU, RAM, and storage space depending on your specific requirements.
Page speed is essential for user experience, search engine rankings, and the overall health of your website.
Above, we can see the impact these optimisations had on a client’s high traffic site (1,000,000+ monthly pageviews). Slow page load times were causing massive load on the server at peak times (Friday to Monday), this was causing the site to be slow and inaccessible for many users (this can be seen where the burst capacity is at 0 and the site becomes unresponsive). After optimisation there were no issues during peak times, meaning thousands of more people could access the site at the same time without any issue.
Interested in having a chat?
Speak with Declan, the author of this article and the hosting, security and page speed guru here at BeQuick Media
Request a callback at a time that suits your schedule