Is your WordPress website slow? Or perhaps slowing down?
In this article I’ll detail all the different ways to speed up WordPress. Doing so will make your website lightning fast. You’ll provide a better user experience. And you’ll increase your chances of converting visitors into customers.
Table of Contents:
Why Website Speed Matters
Users expect a site to load in less than 2 seconds, and almost half of those will leave a site that takes longer than that to display a page.
Do you find yourself always leaving websites that take too long to load? I know I do. According to Kissmetrics, 47% of users expect a site to load in less than 2s and 40% will abandon a website if it takes more than 3s.
I don’t know about you, but I think 40% is an alarming statistic! Having a slow website essentially means you’ve instantly lost 40% of potential sales.
There are many benefits to increasing your website speed. Some of these include higher Google rankings, more website traffic and improved user experience. All of which increase your conversion rate.
Best Website Speed Test Tools
It’s important to note that each of them will give you different results. This is because they analyse your website in slightly different ways.
The best website speed test tool is the Google Lighthouse audit tool found within your Chrome Developer Tools. You could also use WebPageTest, GTmetrix or Pingdom. Google Lighthouse is by far the best tool for running speed tests though.
If I were to choose the 2nd best speed test tool, I would choose WebPageTest. Lots of options to test from different locations, devices and internet speeds. GTmetrix actually uses the same lighthouse metrics to test your site so best to get your data straight from the source. i.e. Google Lighthouse.
9 Ways To Speed Up WordPress
1. Invest in performance focused hosting
2. Choose a server closest to your target audience
3. Use the latest PHP version.
4. Use a performance focused WordPress theme.
5. Minimise usage of plugins (as much as possible).
6. Integrate a premium caching plugin (if you don’t have server level caching).
7. Compress Images.
8. Optimise WordPress database
9. Run speed tests to see where improvements can be made.
1. Invest in premium hosting
This is arguably the most important step and most effective way to speed up WordPress.
Hosting recommendations for different situations
– Simple Websites: if you have a relatively simple and static website (like this one), go with the entry level plan from Kinsta.
– WooCommerce websites: If you run a WooCommerce store, I recommend using something tailored to Woo stores like WooCart.
– On a budget but wanting performance: if you are on a budget but still want high performance, I recommend using Cloudways. You can pick between Google Cloud, Amazon, VULTR, Linode and Digital Ocean servers. I have a bunch of websites still with Cloudways that use a VULTR High Frequency (HF) server.
– eCommerce websites needing to scale: if you have a highly dynamic website that requires lots of resources then check out Pagely.
– eCommerce websites needing to scale ON A BUDGET: if you truly can’t afford Pagely, then I highly recommend JohnnyVPS. They can likely handle any website regardless of size, traffic and resource requirements. Johnny from JohnnyVPS is the definition of a performance expert. Check out my review of their services.
Just so you know, I use Kinsta and love it! I use them because they are all about performance. Kinsta uses the highest performance C2 machines from Google Cloud. Unlike other hosting providers (e.g. SiteGround) that only use Google’s general purpose machines.
I also recommend Cloudways, which I still use to spin up concept websites and play around. Cloudways is also performance focused with access to cloud hosting providers including: Amazon, VULTR, Linode, Digital Ocean and Google Cloud. Cloudways is cheaper than Kinsta but you need to know or at least feel comfortable with a little sysadmin.
For hosting providers that specialise in WordPress, check out my list of the best WordPress hosting providers in Australia.
Whatever you do though, don’t use poor hosting from the likes of GoDaddy or any of the subsidiaries owned by Endurance International Group (EIG). Some of these include Bluehost, Hostgator and JustHost.
You will most likely experience slow load times, poor support, frequent downtime and overall poor service. Here’s a good article that talks you through hosting providers to avoid.
Hosting providers to avoid
Below is a list of hosting providers I believe you should avoid (based on my own experience).
This list will likely grow over time. And I’m sure there a quite a few I forgot to add.
- any EIG owned hosting company
- 1and1 (now called Ionos)
- Name Cheap
- InMotion Hosting
2. Choose a server closest to your visitors
Once you’ve decided on a premium hosting provider, it’s important to choose a server that is closest to your target audience and potential visitors. You don’t want your server in the US when your visitors are in Australia.
The greater the distance between your server and visitor, the longer the connection time.
To test your connection times, I recommend using a TTFB test tool from KeyCDN. They have a free tool that will show you connection times worldwide for your domain.
See screenshot below testing this website. Notice how the connection time aka Time to First Byte (TTFB) is ~30ms in Australia but almost 1s from Europe? Big difference and this is before your website content is loaded.
If you have visitors worldwide, then you’ll ALSO need to set up a content delivery network aka CDN. I recommend using CloudFlare to get started (it’s free to use).
3. Use the latest PHP version
There are two main reasons to use the latest PHP version…
Firstly, it will improve performance allowing your site to process twice as many requests.
Interestingly ~30% of websites still use PHP version 5, which is ~2 times slower than PHP 7.
The second reason is security. Just like any software, it’s best to run the latest and greatest version to keep up with recent security patches.
If you aren’t using PHP version 8 (this is the latest version), you could be missing out on a signficant performance and security boost.
4. Use a performance focused WordPress theme
Unfortunately most WordPress themes are not performance focused. Most themes are made with a gazillion features that make it easier to design and develop your website BUT slow your site down.
The free versions are fine to start with. They have less design options but this means your site will be faster!
Just for this article I’ve created a new website using Astra, imported one of their free starter layouts and run a speed test. Even without optimising the website, the home page loads in under 1s!
5. Use Less Plugins
A great way to speed up your WordPress site is by simply using less plugins. Each plugin adds load time to your site.
It’s also important to delete any plugins that you aren’t using. Don’t just deactivate and leave them there. Doing this can also be a security risk.
More importantly than using less plugins is to remove resource intensive and slow loading plugins. Check out this detailed list of plugins to avoid.
6. Use a Premium Caching Plugin
Are you using a high performance host like Kinsta? Is your website caching done at the server level? If yes, well done, you don’t need a caching plugin. Your website should already be lightning fast. Faster than if it had a caching plugin installed!
If you haven’t upgraded to a performance focused host for whatever reason, I highly recommend investing in a premium caching plugin. I’ve performed countless miracles, optimising websites on super slow hosting like GoDaddy. Often reducing desktop load times from 10+ seconds down to ~1s, even on websites that use shitty hosting. Imagine how fast those sites might be on half decent hosting.
For more advanced users I recommend using Swift Performance. The premium version is great but they also have a decent free version.
WP Johnny has put together an epic guide to setting up Swift Performance. Make sure you check it out if you decide on using Swift.
For beginner users, I recommend using WP Rocket. Not as many advanced options as Swift but an amazing plugin that is very easy to set up.
Before picking a caching plugin, make sure you understand the differences between Swift Performance vs WP Rocket.
7. Optimise Media
One of the key components to load time is your overall website size. Most of which is made up of images. So optimising your images by compressing and removing unneeded EXIF data is key.
If your website uses video it’s also crucial to optimise the way they are loaded. Make sure you DO NOT upload videos directly to your website. Embed them instead. Most page builders like Divi and Elementor makes this very easy with video modules. Just copy paste your video URL.
Lazy Load Videos
I also recommend lazy loading videos so that they load upon user interaction. This will significantly reduce external requests and loading time. This is crucial. Don’t forget to do this.
Swift Performance comes with an image optimiser that is easy to use. It also optimises images on upload. So you can set and forget. Much better value than paying for a separate image optimisation plugin in my opinion.
8. Optimise WordPress Database
It’s important to optimise your database from time to time. For busy eCommerce websites this might need to be done weekly. For smaller, low traffic websites this might be monthly.
To clean and optimise your database it’s important to delete trashed posts and post revisions. Don’t let them build up.
The premium version of Swift Performance has a database optimiser making this very easy. Another great reason to use Swift. Always make sure to take a backup before optimising though!
I also recommend cleaning your wp_options table and removing autoload data that shouldn’t be there. It’s amazing how much stuff that loads that doesn’t need to. Usually from plugins and software deleted over the years. But also from poorly coded plugins and themes that make huge database queries. e.g. loading a huge list of google fonts, even though you only use one or none.
If your WordPress site has been revamped over the years, even just once, then I highly recommend learning how to do clean your wp_options table and removing autoloaded data.
It’s possible your wp_options table is so full of plugin and theme options that you have no idea what is what. Some plugins have really weird names that make no sense so it can be risky deleting rows that you aren’t sure about.
If this is the case, I recommend doing a fresh install of WordPress with a new database, exporting content from your current site, then importing into your fresh WordPress install. Only install the plugins you need. Note that I do not mean using a migration plugin – this would just copy the same bloated database over.
This could be a lot of work though… Good luck!
9. Run Speed Tests
Tips for running speed tests:
– Run test before and after integrating your caching plugin
– Run at least 3 tests for each configuration. e.g. 3 tests simulating throttling on mobile, 3 tests simulating throttling on desktop, etc. Also, there is often a significant difference between pre and post cached loading times, especially if you are using cheap hosting. If loading times differ significantly, it’s most likely related to poor hosting.
– Simulate desktop and mobile
– Make sure you check the box for simulated throttling.
– Test from your target audience’s location (WebPageTest has ~30 locations to test from). Testing from multiple locations is crucial if you manage an eCommerce website that sells to customers in multiple countries. If this is you, make sure you integrate a Content Delivery Network (CDN). Good hosting providers should have a CDN option built into their platform. e.g. Kinsta uses KeyCDN, Cloudways uses Stackpath.
There you have it. A bunch of ways to speed up WordPress.
The list I’ve provided covers the most important elements of page speed optimisation. I’ll cover more advanced tactics in a future post.
Feel free to reach out if you need help.