The speed of your website affects every important digital metric – SEO ranking, bounce rate (click & leave), number of pages viewed, time spent on website, return visitors and revenue (if you sell things).
Speeding up a WordPress website is a topic close to my heart because I spent 3 frustrating weeks trying to speed up my own website. Frustrating is an understatement, there is no 1 thing that can do it and it became trial and error. When I say error, twice some of the advice I implemented broke my website. Lucky for me I always make a back-up before I make changes. I haven’t included any advice that broke my website, but proceed with caution as every website is different.
Website speed is a common issue when building a website using a WordPress Theme. As I’m not a web developer and never intend to be, I always rely on themes. I couldn’t tell you the technical reasons a theme is slower than custom built, but from I understand a Theme will include a whole range of functionality (much of which you may not use), lots of styles, colours, interesting fonts, and the cleanliness of the code can all bloat the size.
If like me, you’ve already committed to a theme it’s well worth trying to speed it up before scrapping it and starting with another one. I use Cardinal – WordPress Theme by SwiftIdeas, which I love because it’s completely customisable (I suppose that’s why it’s slow). If you do resort to ditching your theme, you can easily Google ‘fast WordPress themes’ and pick one that’s been tested and recommended by experts.
The 3 most important things I’ve learned:
- Back-up your website first
- Try implementing each piece of advice and then re-test the speed
- It takes multiple solutions to shave off even a few seconds
I use gtmetrix.com and tools.pingdom.com for speed tests (I use 2 because I’m paranoid and want 2 opinions). I have some comments about the official Google Speed Test, but I’ll leave those for the end.
Research tells me we should aim for 5 seconds or less, so that was my goal. Depending on the time of day, my website now varies between 3 to 6 seconds.
Here is my 3-Week Speed Journey
The hosting plan can greatly affect speed, which I knew when I created my website. However, I went for economy hosting because I’m a small freelancer and I didn’t expect many visitors, so I wanted to keep the cost minimal. During the 3-week frustration, I did upgrade to premium hosting because I realised slow websites are annoying. Yes, it made some difference but will cost me triple at each renewal.
Scale Images before Uploading
I have a library of stunning images, and I wanted them to be crisp, so I uploaded them at their original size and quality. I thought if I only used a few, the size wouldn’t matter. Well, it matters a lot. I ended up removing some of the images and the remaining ones I re-scaled to the size required and saved them at 60% quality. I had to give up some of the crispness, but it dramatically reduced the size of my website and therefore had a big impact on speed.
Ironically Google fonts can slow down a page from loading because the page won’t display until the font has loaded. I couldn’t find a solution, so I decided to go with boring Arial for the body text and use Raleway for headings.
WP Fastest Cache
I then read reviews for plugins that help to speed up a website and settled on WP Fastest Cache because it had good reviews and was easy to use. There is a free version and a premium version (I purchased the premium version and ticked all the boxes). A cache creates static HTML copies of your pages and serves them quickly to web visitors. When you make changes, the cache is updated with the new version. It made a big difference for me.
Cloudflare is amazing and made a huge difference to my speed. The entry level subscription is free, and that’s what I’m using. You’ll need to access your Domain settings to set-it up correctly, but the instructions are very easy to follow. Affordable hosting plans tend to be located overseas, which slows down the speed due to distance, but CloudFlare serves your website content in a city close to you so that it’s super-fast.
Smush It is a free plugin, and it’s great, it optimises images as they are uploaded or smushes existing images. It compresses each image to a minimal size while maintaining the look of the image. There is a premium version, but it’s way out of my budget.
WP Images Lazy Loading
WP Images Lazy Loading speeds up the loading time of each page by only loading image that are visible e.g. above the fold. The other image will load as the visitor scrolls down and will be fully loaded once they reach it. It’s free and works automatically.
WP Optimise cleans up junk from your website that can slow it down; a big one is old revisions of pages (some of my pages were above 60 revisions – I suffer from perfectionism) and other bits and pieces that take up space. Like a desktop clean up. It’s free and easy to use.
P3 (Plugin Performance Profiler)
There are thousands of useful plugins that make customising a website so easy, but unfortunately, the more you have, the slower your website can get. P3 is a free plugin that runs a check on all your active plugins and shows you in a graph which ones impact your websites load time. I did end up getting rid of 2 plugins that were cool, but I’d rather have speed than the coolness they brought me. I keep this plugin deactivated until I want to run the diagnostic again, that’s another tip to slightly reduce speed.
Keep Your WordPress Version, Theme and Plugins Up-to-Date
Every release makes improvements on the previous version, such as bugs that have been identified and fixed. This can impact speed in some cases, so it’s best to always action updates as they become available.
I’ve also learned that there are trade-offs between speed and website attractiveness. Firstly, think about the goal of your website, I’m a marketing freelancer so the visual aspect of my website is important to reflect my creative ability. If I was to remove all images, Google fonts and colours, I could probably get the speed down to 1-2 seconds, but then it wouldn’t reflect my personality at all. So, I’ve struck a balance that I’m happy with.
Google Speed Test is an interesting tool. Although I now have an almost perfect score with GT Metrix and Pingdom, I have rubbish scores for the Google Speed Test. I’ve read through several forums to understand why and some of the items it wants you to fix are near impossible. You’ll get a red cross if you use Google fonts (which is ironic…), you’ll get a cross if you use CSS (which is silly because CSS efficiently controls the look and feel of your content), it tells you to use caching for 3rd party URLs which is impossible unless you own the sites you’re linking to (e.g. Google maps).
Although there are obvious flaws in its tool, we know that Google penalises slow websites, so the key takeaway is to strive to get the best score you can and then leave it, because it will drive you crazy. Good luck with your speed journey!