Audio Version [click the globe to change language]
In this tutorial, I’m going to show you how to make WordPress faster with cheap hosting, free plugins and with zero coding involved.
You won’t find any fluff here: just actionable information that you can put to use right away to make your pages load faster with just a few tweaks.
Best of all..
You’ll find a bit of myth-busting here that will save you time and stress in the future whenever you come across must-haves to improve the performance of your website.
You can also check out the tools I like to use on my WordPress sites.
By the time you’re done with this guide, you’ll be super clear on how to speed up your blog or website on a tiny budget.
So let’s dive into…
- 1 Making your WordPress website load fast
- 1.1 3 facts of WordPress optimisation
- 1.2 The 5 things that make WordPress faster
- 1.3 How to do a website speed test and test the performance of your website
- 1.4 Step 1: what is the best web host for WordPress and how do I choose a web hosting provider?
- 1.5 How to choose a hosting provider
- 1.6 Step 2: what is a the best SEO friendly and fast loading WordPress theme?
- 1.7 So, what WordPress theme should you choose for great performance?
- 1.8 Step 3: what are the best plugins to reduce page load time?
- 1.9 My recommended optimisation plugins for WordPress
- 1.10 Step 4 – your images: how to optimize your images to make them load faster
- 1.11 Step 5 – optimise your database for faster page speeds
- 1.12 Housekeeping items that can boost your speed
- 1.13 What about CloudFlare? Why doesn’t Hoz use CloudFlare?
- 1.14 How fast should your WordPress site load?
- 1.15 Conclusion
- 1.16 Final thoughts…
- 1.17 WordPress optimization in 5 steps infographic
Making your WordPress website load fast
Ok, let’s start with the 3 hard facts of WordPress speed optimisation:
3 facts of WordPress optimisation
- there isn’t a magically fast cache plugin for WordPress that will instantly speed up your website beyond your wildest dreams (but you secretly suspected this, didn’t you?).
- there’s also no magic plugin to speed up WordPress that will knock your socks off.
- there is no free super fast WordPress hosting (but again, you already knew that nobody is going to pay to maintain an expensive world-class hosting server with a billion Gb of RAM and a boatload of processors to then give it all away to nice WordPress bloggers like us. Heh).
I will, of course, explain each of the above points in a little more detail, except the last point. Dreamy-eyed seekers of the very best at no cost can continue to search for free super fast WordPress hosting. You’ll find that on the third shelf, next to the free Ferarris…)
On that note, here are my recommended WordPress hosts.
Anyway, back to the myth-busting. The fact is that when it comes to WordPress speed optimisation, there are a lot of myths.
I often see advice online, such as:
- too many plugins will slow your website down
- a good cache plugin will fix everything
Those things are half-truths. I’ve tested websites with over 30 active plugins that ran like a dream, as well as sites without cache plugins that flew like the wind on cheap shared hosting.
Yes, of course a website will load faster without plugins, but the fact is that plugins extend the functionality of WordPress, and if we want a functional website, we often have to use plugins.
That said, it’s badly-coded plugins or plugins with a lot of code that tend to slow WordPress significantly.
Ok let’s address those 2 points on site performance:
- the number of active plugins will not significantly slow down your WordPress website if those plugins are well coded and light. It’s the quality and size of the plugins and how they work that affects your page speed.
- cache plugins can help with speed, and they usually implement Gzip compression. Ahem… that is the main reason for the significant speed improvement. And you can implement Gzip compression with a line of code in your .htaccess file (but this tutorial is about no coding, so I’ll show you how to implement Gzip compression for faster page loading without coding and I will add a link for you to see the .htaccess hack if you decide you want to have a go at the manual way).
So, as I say, cache plugins do have a place in your stack. I sometimes use them, and I sometimes don’t. I just wanted to make a small but important point because cache plugins are often presented as the solution to speeding up WordPress – especially by vendors of caching plugins – and there’s an ongoing debate about which ultra-fast cache plugin is best to make WordPress fly like a rocket, which really adds fuel to this confusing topic.
The truth is that page speed is not just about caching.A great cache plugin can't re-code your WordPress theme and it can't improve the hardware on your hosting server... it can only improve the caching side of things.Click To Tweet
So that’s the bad news: there isn’t a plugin that will fix all speed woes. Otherwise, this post would have been titled:
How to Make WordPress Faster = use This Plugin
On that note, let’s establish the 5 things that really make an impact on the performance of your website, and then we’ll go through the process, step by step, so you can implement everything as you go (you can even bookmark this page and tackle each section as you go).
Let’s get to it!
The 5 things that make WordPress faster
Let’s be clear on one thing: many things can help speed up your blog. I could list a dozen things and more, but what we’re interested in is the things that are going to have the biggest impact and are going to be the easiest and fastest to implement.
And those things boil down to these 5 facts:
- good WordPress hosting
- a well optimised, SEO friendly fast WordPress theme
- the right plugins
- optimising and serving your images the right way
- optimising your database to get rid of clutter
Those 5 points are going to have the biggest impact when it comes to making your website faster. I’m going to dive deeper into each of those points and I’m going to show you how you can significantly improve your site speed on a tiny budget.
The first thing to do is to assess where we’re at. And we do that by conducting a website speed test. Do this with me as we go along:
How to do a website speed test and test the performance of your website
We need a benchmark – something we can work on to make sure the things we do improve the speed of your WordPress website.
So let’s start here:
What tools to use to do a website speed test
There are a good few performance speed testing tools, but if you spend some time using them you’ll soon discover that they often report different results. This can get confusing, and in the spirit of keeping this tutorial easy and actionable, I’m going to simply recommend the best tools to use for checking your page load speeds and other useful metrics:
- GTmetrix – this is my go-to free WordPress checker tool. Not only is it free (yay!) but you can keep testing your website over and over (each time you make a change, obviously) without a limit. The report gives you page speed and Yslow scores, page load details like load time, page size and the number of requests, as well as a cool waterfall report so you can see what loads when and – more importantly – spot any bottlenecks.
- Pingdom – this is another great tool. I love the interface and I could use this tool all day long. The report is pretty similar to GTmetrix and it lets you test your website from different locations (major cities such as London, Dallas and Stockholm).
- Google’s Page Speed Checker – this is arguably the best tool to use for checking the speed of your website. It’s free, and it’s made by some Google devs, so you can expect it to be solid. I do suffer from shiny object syndrome when it comes to these speed checkers because Pingdom has done such a fabulous job of their interface… but if we have to be honest, then the Google speed tool is the one you should be paying most attention to.
Let’s take a look at some over-the-shoulder quick video training on using those tools, shall we?
How to use the Pingdom website speed tool
How to check your website speed with GTMetrix
How to use the google website speed check tool
Ok, now that we have our benchmark, let’s dive right into the process!
Step 1: what is the best web host for WordPress and how do I choose a web hosting provider?
Like it or not, hosting is a big part of having a fast loading website. Laugh at the fools who search for free super fast WordPress hosting and sign up to $1 a month hosts, because you and I won’t be doing any of that.
Let’s get one thing clear when it comes to hosting:If you want super fast WordPress hosting, then you're going to have to pay more. It's that simple.Click To Tweet
That’s the dirty word (cost) out the way. The dirty secret, if you like. And hey, this applies to me too, so don’t shoot the messenger. I’m saving you time here.
If you don’t have the budget for the fastest VPS (virtual server) or the snazziest managed enterprise-level dedicated server, then there’s going to be a compromise. But that’s OK. You can still have a fast-loading blog on a shared server, and you can enjoy some nice perks like free SSL and a well-configured setup using good SSD drives and close to unlimited bandwidth at an affordable price point.
I’m getting to that, so hang in there.
Now, there seem to be a gazillion WordPress hosts and while I obviously can’t know about them all, I have had the immense pleasure of having to migrate from one crap host to another during the past decade. You may or may not know that I ran a digital marketing agency and I provided websites as well as web hosting, so hosting was something I had to deal with on a daily basis.
I have experienced brilliant hosts who were then bought out (because they were brilliant) by a certain company that has been written about extensively in Wikipedia, who then proceeded to (in my opinion) destroy the web hosts’ reputation by switching to cheaper hosting hardware and forcing everybody to migrate from one screwed up server to another.
As a result, I approach hosting extremely carefully these days, and with a very suspicious eye.
The good news for you is that now you know that my recommended hosts come from someone who has had to dig seriously deep to find decent hosting providers.
So take these seriously:
My most affordable best WordPress hosting recommendations
- SiteGround – I host several websites with this host, and my blog started out there. This host is one of the best web hosts at this price point. They have fast servers and great 24×7 support.
Some extra features and bonuses that this host offers:
- this hosts offers free migration, helping you migrate your website from your current host.
- you can host a single or multiple domains depending on what hosting plan you choose.
- this host has yearly plans that come with a discount
- you get free SSL – https (yay!)
- you get FTP access to your account
If you have a bigger budget, then read on:
My more expensive best WordPress hosting recommendation
- Note: in case you’re wondering why Bluehost isn’t on my list: I’m not a fan of the company that bought Bluehost, and it seems that a few other people online aren’t that keen on them either. I haven’t tried their hosting so I can’t comment on it… but I won’t be trying it.
- All my hosting recommendations are here
How to choose a hosting provider
- Check that the host you’re considering has live chat and/r 24×7 support. There’s nothing more frustrating than hitting an issue on a Friday night and having to wait until Monday morning to hear from your server support.
- Check that the hosting you’re considering has great reviews.
All my recommended hosts offer live chat support. They all do a great job of presenting their offer and make it super easy to sign up, but if you have any questions whatsoever you can ‘test the support’ by jumping onto live chat and asking them a question.Choose web hosts that have, at worst, live chat and at best live chat + tel support. Run away from anything less.Click To Tweet
The hosts I use and recommended are quality web hosts that offer different deals and options, as well as different types of servers at different price levels. Monthly billing, SSL, great bandwidth, solid performance and different plans that meet the requirements of beginners as well as high traffic websites.
You’ll be hard-pushed to find providers that packs this much value and service at such a cheap price.
Step 2: what is a the best SEO friendly and fast loading WordPress theme?
Now that we’re clear on Step 1 (the host) we can move on to the next key piece in our WordPress optimisation: the theme.One key factor of a fast loading website is to choose an SEO friendly fast loading WordPress theme.Click To Tweet
There are thousands of WordPress themes in the WordPress repository, and I’ve no doubt that many of them are good; even great. But let’s get real again. Somebody who takes the time and the effort to build a small development company and a good team of WordPress developers and churns out well-coded themes, optimized for speed, is arguably going to be offering a higher quality product than, let’s say, somebody coding from their bedroom.
Kudos and respect to the bedroom coder (hey, I used to code on my own too…) and knowing full well that the small development company is made up of people who were once lone coders themselves, we nonetheless have to accept that there’s usually a difference in quality and support when it comes to the themes they produce, because they have experience, a team and more resources.
And here’s the thing: the company owner has bills to pay, and those excellent developers like to get paid too… so their awesome WordPress themes are not going to be free!
And on that note, even the super talented bedroom coders who can churn out premium quality themes ain’t usually going to be doing so for free either!
The one caveat here is that the WordPress themes I use are also available for free, without the premium features. This means you still get access to world-class themes for free. More on this in a moment.
The bottom line is that your blog is important and it deserves the best WordPress theme. As I said, you can get access to the same themes I use and recommend at no cost, but for a few dollars you get the premium features and you help support the developers.
So, what WordPress theme should you choose for great performance?
Let me save you the search and tell you what I use for all my stuff. Over the years working as a website designer, I have invested in all types of WordPress frameworks, from Genesis to Catalyst to Frugal to Revolution and more, as well as lots of stand-alone themes, page builders and funnel builders.
I have over a dozen active pro and agency licenses for almost everything that’s crossed my path. I buy, I test, and I use what works. It’s part of my job.
I’ve also invested in various cloud-hosted options, from lead pages to click funnels and more.
And I can tell you that, today, my choice of theme for all my WordPress sites, whether I’m building landing pages, sales pages, one-page sites, blogs or business websites, is this:
- Generate Press – this my current theme. It’s just awesome.
- Astra Theme – this was my previous theme – I still use it on other sites. Both these themes are extremely lightweight, fast and superbly coded. And you can get them for free or go crazy and spend the few dollars to go Premium and access the extra awesome features.
- Elementor page builder (this is a plugin). This is my current page builder. It’s awesome. On some sites, I use it with this.
That’s my setup right now. I’m not even going to attempt to bore you or waste your time by listing a sexy list of the top 10 fastest loading themes because there really is no point: this setup works.
If you’re curious, here are most of the tools I use for my WordPress sites.
Let me add that there are plenty of other fast and well-coded themes out there. But I’ve found the tools that work for me after years of testing (and heartache) and I’m happy with those.
That said, it’s a really close call between Astra and GeneratePress. Watch the video below to see the best of both themes:
Some great features of the Astra theme:
- the theme comes with some ready-to-use templates that you can deploy with 1 click and edit very easily.
- it comes with superb support.
- the quality of the designs will drag you to the next level, whether you like it or not! Use this and you’ll have a polished, professional looking website. Period.
Some great features of Elementor page builder:
- they offer different plans, from individual to agency (great for designers and agencies too)
- their support is astonishingly good. These are seriously smart cookies. I love them!
- you can create your own themes and export them (and even sell them) yay!
- the page builder comes bundled with a load of components, including a contact form, a gallery, a slider, icons etc, which means you can ditch your contact form plugin and your gallery plugin and your slider plugin and a few other things, leaving you with fewer things to go wrong on your blog.
Ok, now we get to the next layer of this process:
Step 3: what are the best plugins to reduce page load time?
Now that we have the right hosting for your budget in place and a superb, lightweight and Google friendly WordPress theme, we can move onto plugins.
Now, as I mentioned earlier, the key is to use lightweight, well-coded plugins.The old adage that having too many plugins slows down your website is only partly true in as much as that the more plugins you install the bigger the chance of poorly coded plugins finding their way into your blog.Click To Tweet
OK, so let me give you a nice list of free plugins that do the job, but let me preface this with a thought:There is no magic combination of plugins to speed up your WordPress website because plugins are not the only factor. It's that simple. Your theme and your hosting are huge factors.Click To Tweet
It’s that simple. Your theme and your hosting are huge factors. Moreover, how your theme and other plugins you use are coded, as well as your hosting environment, affects how all plugins perform. In some cases, there can be incompatibilities.
This means that, ultimately, there is an element of unpredictability when it comes to plugins. You need to take the best optimisation plugins and test them, one by one, and see how they affect the performance of your website.
In other words, if we were all using the same WordPress theme and the same hosting environment, then we would be able to test which are the best plugins to speed up a WordPress blog and come up with a definite list.
But because everybody has a different setup, then the next best thing we can do is take the best performing plugins and try them on our own websites, and hope that they work and give us a speed improvement.
The next thing I’d like to add is that I have no control over how a plugin is coded. In a perfect world, they would all be coded perfectly and beautiful and they would be fast and light and make our websites super fast. But they’re not. So what I’m labelling the ‘best’ plugins are the best plugins I have found that work for me after testing.
That’s not to say that there aren’t other great plugins out there. With the thousands of plugins available you can turn this into your life’s quest, or you can take the list of tried and tested plugins and work from there.
So let’s go!
My recommended optimisation plugins for WordPress
- Far Future Expiration Headers – this is something that you will see in the reports from the speed optimisation tools. This plugin can fix this issue.
- Remove Query Strings From Static Resources – this is another pesky issue that you’ll often see crop up when you test your website. This plugin works well for me on many sites. Test it and see if it works for you.
That’s it. Nice and simple. Try these plugins one by one and use the GTmetrix website to see the result.
Tip: make sure you backup your website fully before you install those plugins as some people have reported the expiries header plugin to have ‘broken’ their sites.
One thing worth remembering is that, generally, optimisation plugins are replicating a bunch of manual tasks. If you’re hands-on, you can add some code to your .htaccess to create caching, set header expiry dates, set gzip compression and more.
If you really want to do this the manual way then here are a couple of hacks to take care of the first 2 items. The first hack is to set up gzip in the htaccess file.
And – if that goes well for you – then set expires headers htaccess code so you can do the same. Like this:
And this brings me to the much-talked-about WordPress fast cache plugin.
Again, I’m going to keep it simple:
I don’t currently use a caching plugin on my blog. Instead, I use server-side caching. This is something budget hosts don’t usually offer, though.
I have used Litespeed and also Siteground’s caching plugin and I once tried WP Rocket, which is a paid plugin. I have no preference in caching plugins because I don’t tend to use one, but the one I use most on other sites is Litespeed.
Step 4 – your images: how to optimize your images to make them load faster
Images play a major role in how fast your website loads. This cannot be understated. In fact, let me add an eye-catching quotation statement here to really make a point:If you want a fast loading website, you need to serve optimized images. Period. Optimization plugins and lightweight wp themes can't compensate for slow loading images.Click To Tweet
I have many clients who take photos with their smartphones and then upload them to their websites, seriously slowing them down. The reason is that smartphones and digital cameras take high-resolution images (measured in millions of pixels). Those images are print-ready, meaning that if you were to print them in their true size, you’d end up with a decent size poster.
A computer screen, on the other hand, is much smaller than a poster, so those images cannot be displayed in their true size. A few things happen when you upload a very large image to your site, but to keep it simple let’s just say that the browser ultimately has to shrink the image so that it displays how it was meant to display: i.e. relative to the size of the screen.
Here’s what this means, in practical terms:
- I visit your website.
- my browser has to load the page I’m visiting, bit by bit (or byte by byte).
- an image is made up of bits (zeros and ones) so if there’s a huge image on your web page, my browser has to download all those zeros and ones that make up that image before it can reassemble them and make sense of what it is it needs to display on the screen.
- my browser knows how your page should look thanks to the code on your page (code + styling) and it attempts to recreate the page as the code directs.
- now the browser redraws the screen and displays your page, and I see your beautiful web page, as it was meant to be seen. The problem is that I had to shave twice in the meantime because it took that long to download your page.
How to fix your images so they load faster
Essentially, if you have an image that’s 3,000 pixels x 3,000 pixels, then I’m not going to be able to see the full image on my laptop screen. What I’m going to see instead, is the full image relative to the size of my screen, which is to say, a smaller version of the image, but I won’t be seeing it until my browser downloads all the data that makes up the image and then resizes it.
Let’s say that’s there are 10,000 bits of information that make up your image. My Internet connection speed, as well as your hosting and your choice of theme and plugins, are already playing a big part on how fast or slow your page will load for me. Add 10,000 bits of information for your image to all that and… well… nothing good will come of it.
Now, if instead of uploading that high res image to your site you first optimise it and reduce it to – let’s say – 800 pixels by 800 pixels… that may amount to 4,000 bits of data that make up that image. By the way, the bits of data I’m using here are for the purpose of the example – how much data an image carries depends on the format, the number of colours used, the complexity etc…
So, as I was saying 4,000 bits of data is a lot less for my browser to download and recreate on my screen than what we had before we optimised the image.A single well-optimized image can shave off 2 or 3 seconds in loading speed, and that makes for a much faster-loading website!Click To Tweet
So let’s get this sorted.
The good news is that this part of your website optimisation is the easiest and also one of the most significant. Images are speed hogs: they add extra weight to your page, so reducing and serving the right size images is a good investment of your time.
Here’s what you can do:
The Free option:
- optimise your images before you upload them to your website. This means that if the image is going to display at 400×400 pixels on your page, resize the image down to 400×400 pixels and save as a .jpg or as a .png (whichever gives you the smallest file size).
- install the Short Pixel plugin or the EWWW Image Optimizer and run a bulk optimisation to shave off some extra data from all the images in your WordPress library. Run a bulk smush every week or so if you post content regularly to keep on top of your image optimisation.
The paid option:
- Use a CDN solution like MaxCDN if you’re happy with the monthly fee (it’s a few dollars). A CDN can fix your images issue. If it works for you, you won’t have to worry about how optimised your images are because they won’t be served from your website, but do optimise them anyway so the CDN is able to deliver them even faster.
Is there a free CDN?
I tested JetPack and discovered that their free plan enables you to use their CDN. I have no stats and no performance comparisons against other CNDs, but hey, it’s free and it seems to work. It shaved 1 second off my page loading speed.
Cloudflare’s free plan also offers a CDN. Although I don’t use CloudFlare in my setup. I’ll talk about why I don’t in a moment.
Ok, let’s hit the last piece!
Step 5 – optimise your database for faster page speeds
One of the reasons for slower loading times when it comes to WordPress websites is the fact that WordPress is a CMS (a content management system). The ability to be able to edit your content means the content needs to be stored in a database, where it can be accessed and edited by you. This is what takes place when you edit a post of a page: you’re overwriting that piece of content, which is stored in the database.
This means that the words you see on a WordPress page are not really on that page at all (wacky, I know). Instead, those words are stored in a database in the back-end. The page has code that fetches the content that belongs on that page from the database when it’s required (i.e. when somebody visits that page).
So, when you visit a page on your site, the page loads and fetches content from the database. This requires what is known as ‘database calls’, which is basically a way to explain the fact that as the code on your page executes, line by line, it connects to the database and pulls out the data it needs after searching the relevant tables where data is stored.
And that takes time. Not the kind of time that you and I care about, but the kind of time that we agonise over when it comes to page loading speeds.
Put another way, if you want a truly blisteringly fast website, use HTLM pages and host them in a decent server. HTML pages have the text on the page, so the page loads and there are no database calls to be made, so it takes less time to load.
The downside is that you can’t edit the content on a HTML page. You have to use a HTML editor to edit the page on your computer, then upload the page to the server.
So having a dynamic page (or a data-driven website) like WordPress is a compromise on speed. You get the ability to edit your content, but it will take a little longer to download than a plain HTML page, due to the need to fetch data dynamically.
Another database-related issue is that when you create a post or a page and save it as a draft, you’re storing that content in the database. This, over time, can start to add a lot of data to the database and slow things down in the same way that a computer loaded with programs and data gets slower over time because the data has to be fetched from the hard disk, and the more data, the more the software has to search through to find the right bits. This is known as database bloat.
If you edit a post on your blog a few times, you’ll see on your right sidebar during edit mode a number of posts revisions. These are revisions (versions) or your post or page that were saved as you were editing. All those revisions are ‘bloat’ and should be removed once you’re done editing the post or page.
The good news is that you can reduce this bloat and optimise your WordPress database pretty easily, and as we know, this can shave some milliseconds off your page loading time. It may not sound like much but keep in mind that everything from images to plugins to your theme is adding a few milliseconds here and there, so trimming down can make a significant difference.
It’s also worth doing because it’s relatively simple to optimise your database, so not optimising it is lazy.
My go to plugin for wp database optimisation is:
Here’s what that looks like:
Install the plugin, then find it in your dashboard’s sidebar: look for and click the navigation item named Database and then click Optimize DB (see below):
In the Optimize Database screen, you’ll see all the tables in your WordPress database. By default, they will all be set to ‘Yes’. If for some reason you don’t want to optimise a particular table, you can unselect it.
Optimising your database is as simple as scrolling to the bottom of the page and clicking the Optimize button (see below):
BONUS TIP: I also use WP Sweep to clean up my page revisions. This really helps keep your database trim and can provide a nice boost to your site’s performance.
Note: as with all plugins, make sure you backup your blog before you do anything.
In my free WordPress SEO Speed Optimisation course I cover all the above in detail, and a few more super tips.
Here’s the course (enjoy):
Now you know the key things to do in order to speed up your WordPress website. There are lots more things you can do of course, but the things I covered represent the best ROI on your time, because they have the biggest impact.
Now, there are a few more items to address yet, so stick with me and let’s plough on to really get it when it comes to WordPress optimisation.
Housekeeping items that can boost your speed
There are other smaller-impact things you can do to boost your website speed, and I will list a few of them here for you. Think of this as ‘everything you add takes up bandwidth’. That’s the rule of thumb, so to speak. So every feature your blog has is taking up speed. So the question is:
If you want to trim a few milliseconds off your page loading speeds then consider what features you’re carrying that you don’t actually need.
The list below will help you get started:
- disable any plugin that you don’t need to be running and delete the ones you only need occasionally (you can simply install them when you need them)
- remove or disable Google fonts (Google’s API call is a speed hog)
- disable emojis
- disable comments
- disable pingbacks and trackbacks
- delete all post revisions
- delete the themes you’re not using (there are at least 3 old WordPress themes bundled into most 1 click installers)
From that list, I would say deactivating and deleting the plugins you don’t need to run all the time is going to have the biggest impact.
What about CloudFlare? Why doesn’t Hoz use CloudFlare?
CloudFlare is a great idea. It’s a proxy, which means it sits between your visitors and your website. The main idea is that the proxy can screen the visitors and filter out the bad apples. To you and me, that means bots and spammers.
CloudFlare has a blacklist of ‘bad’ IPs to check against and if the visitor is ‘suspect’, CloudFlare will present a page with some sort of captcha or puzzle that a human must solve in order to continue on to your website. The big idea behind this is to protect your website from DoS attacks.
CloudFlare offers both free and paid plans. The paid plans are pricey for most solopreneurs as they’re mostly tailored to corporates, but luckily the free plan offers lots of good stuff.
Using the CloudFlare service is very easy. You sign up for a free account, you click a button and CloudFlare fetches your domain’s DNS settings. When done, you set the name servers of your domain to point at CloudFlare and that’s it.
Here’s a link to their website: CloudFlare. They have a short cool video on their page showing you how to do set up your domain name with their server.
Many WordPress optimisation guides tout CloudFlare as a key factor in making your site load faster, but in my tests CoudFlare slows down my website – at least on the free plan.
I suspect that if my blog was hosted on a slow shared server, CloudFlare may well help. But that’s not the case. My setup is pretty fast to start with, and each time I’ve tested CloudFlare with various sites, things got significantly slower.
Using the page speed test tools we looked at earlier on in this training, I was able to determine that the main culprit was the TTFB or Time to First Byte.
Here’s what that is, according to Wikipedia:
(TTFB) is a measurement used as an indication of the responsiveness of a webserver or other network resource. TTFB measures the durationref: WikiPedia
Interestingly, CloudFlare states that TTFB doesn’t matter that much in this blog post here.
Whether it matters as a ranking factor or as anything else is less important to me than whether I am adding an extra second and a half to my page load time when I have the option not to.
So I do a simple test by clearing my cache and then visiting my own blog. No fancy test tools and no metrics. Just me, experiencing my own blog’s load time.
The only question is: is this speed acceptable for a web page?
A 1.5 second extra wait for me didn’t justify having that layer of security, especially when I can use a couple of good security plugins and a few tricks to add some decent protection to my blog.
So no CloudFlare for me. At least not for now. I will get around to testing CloudFlare again with a different setup.
I suggest that if you follow my advice and get yourself the same setup for a fast loading and well-optimised site (hosting + theme + plugins) you test whether CloudFlare works for you rather than just taking it for granted that it will. Test your website speed before and after the CloudFlare setup and go from there.
How fast should your WordPress site load?
Speed for the sake of speed is missing the point. There will always be a compromise depending on what you want to achieve.
Let me give you a clear picture:
If you want a site that loads in 1 second or less, hosted on a relatively cheap server, then be prepared to have a site that looks like Wikipedia.
If on the other hand, you want to have a page that presents information in a more pleasing way, then design of some sort is nearly always going to be involved. Using images makes things ‘nicer’. But using images will add to the load time of your page. It’s inevitable.
This is what I mean by compromise. But that’s not a bad thing. In almost every case, the images on your page will help engage your visitors more than just text, so the compromise is not only necessary but a no-brainer.
So where does this leave us?
The other side of the argument is this: design for the sake of design is – in most cases – also pointless. Unless the design is a part of the message (for example, if it’s a blog about design) then having eye-candy everywhere can be overkill. And naturally, that will seriously impact your page load time.
So, where do we draw the line? What’s the middle ground? A balance between text and design so we have a fast enough website that still looks good?
I personally wouldn’t approach this dilemma in this way. Instead, I suggest that you think about the goal of the page. What is the purpose of the page?
Let’s walk through an example:
- Why do I want my page to load super fast?
- So that my visitors have a better experience.
- Why do I want my visitors to have a better experience?
- So that they subscribe to my blog.
So the actual purpose of the page in this example is to gain subscribers. Page speed is not the real objective. Instead, page speed is a mechanism that we estimate will help get more subscribers.
Now let’s delve deeper into this example and let’s find out why my blog doesn’t load in 1 second (it will all make sense in a moment):
Let’s say our page loads in 1 second. Yay!
Well, not really yay. We may be pleased with the new site speed, but that wasn’t the goal of the page and we don’t actually know whether the improved site speed will help us reach the actual goal.
So we run a test and we send 1,000 visitors to the page.
Let’s say that 10 of those visitors subscribe.
Here’s what that looks like:
- page load speed: 1 second
- visits: 1,000
- subscribers: 10
- conversion rate: 1%
This gives us a baseline. Our benchmark, if you like. Something we can work from.
So we’ll call this The Control.
Next, we run a test against The Control. The aim of the test is to beat The Control, and what we’re testing is a change. In this case, the change will be a nice graphic that invites people to subscribe. The graphic itself adds 1 second to the page load time.
We send 1,000 new visitors to the page, and this time 15 people sign up.
Here’s what the test looks like:
- page load speed: 2 seconds
- visits: 1,000
- subscribers: 15
- conversion rate: 1.5%
Do you see what happened there? We no longer have a page speed that we can boast about all day long, but we have more subscribers, which is what we actually wanted.
The only losers in this game are those who miss the point and optimise for speed for the sake of speed without actually thinking about purpose and testing to improve conversion rate. Because ultimately, the conversion rate is what really matters.
This way of looking at things gives you a big picture perspective that enables you to step back and realise that speed is a tool that you can tweak and test and use in order to increase conversion.
Speed is part of your toolkit, but so is design, and with design comes heavier pages and slower loading times. But that in itself is neither good nor bad: it just is. Until we test, we know nothing.
In a perfect world, we’d have a super fast WordPress website with a ton of sexy high-resolution images and all kinds of good stuff jumping out of the page. But Internet speed is a limiting factor in that dream. How fast our visitors’ Internet connection (as well as all the good stuff we just went through) is, determines largely how fast their browsers are able to download our pages.
That’s just how it is.
The good news, is that Internet speeds will (should) get faster, which means that even your slow loading pages will one day load faster because they are loading relative to – amongst other things – the speed of the visitor’s Internet connection. What I don’t know, of course, is if when that time comes, we’ll all be pointing at laughing at web pages that load in a second, because only pages that load in half a second will be worthy of our attention 🙂
But there you have it. A fast loading website is awesome, but a website that converts well for you is usually what motivates you to keep at it and what – eventually – has the potential to pay the bills.
In summary, a fast loading website is the result of a combination of different things and compromises, which include:
- cheaper hosting = slower website speed
- free theme = less efficient coding causing slower loading times
- most free plugins = less efficient coding causing slower loading times
- plugins (free or premium) that add needed functionality = higher probability of poor coding and slower page times
- hosting your own images (free) and not using a CDN = slower page times
- using a CMS as opposed to static HTML pages = slower loading time due to database calls
- nice design elements and images = slower loading times
Now you understand why I stated at the beginning of this post that there is no magic plugin that will make your website blisteringly fast. I wasn’t being a spoil-sport. Plugins can help optimise what you have, but they can’t re-code your theme or boost your server RAM.
If you get the foundation right – implementing the easiest but most significant 5 things that make WordPress faster, then you have a great baseline to work from. It gives you a bit of room to manoeuvre.
To so sum up my recommended setup:
- A good host
- a fast wp theme: Astra Pro or Generate Press
- a lightweight page builder: Elementor
- test the 3 plugins (Autoptimize, Far Future Expiry Header and Remove Query Strings From Static Resources)
- for image optimisation use JetPack’s CDN if you have zero budget or invest in a CDN if you have the budget and your host doesn’t offer one. If you want a free alternative, try the Short Pixel plugin
- database cleanup using the WP Database Backup plugin and post revisions cleanup using the WP Sweep plugin.
The above stack gets you a fast WordPress setup. From there, you work on your pages and test and find the sweet spot: the point where you’re happy to compromise, which should be a point where your pages look great and load fast enough to provide an all-round good experience to your visitors.
If you have a small budget, then you can replicate this setup to get a decent website speed. And if you can afford the low monthly fee and you implement a CDN (content delivery network) to deliver your images, you’ll really see a difference. Even an image-heavy website will load faster using a CDN – because your images are not being served from your hosting server. That CDN alone will seriously speed up things for you since one of the biggest causes of slow websites is images served from the website and a CDN enables you to bypass that issue by hosting your images.
If you really want that boost from serving images externally but you don’t want to pay the monthly fee, you can use a free image hosting service like flickr. Personally, I can’t be bothered jumping through hoops to get that done. If you feel the same way, you can always wait until the website starts to grow and invest in a good CDN.
Hey, I hope you enjoyed this guide. It took me a long time to figure this stuff out, and it took longer than you imagine to organise it into a nice usable guide. Play around with it, test stuff, have fun and make your WordPress website as fast as possible whilst accomplishing the goal of the site.
And if you’re feeling nice, subscribe to my blog so you can catch the next guide and all the good stuff I throw out there.
WordPress optimization in 5 steps infographic
How to use this infographic on your own site or blog:
- visit Slideshare by clicking here
- in Slideshare, click on the Share button at the bottom of the infographic to get the embed code, like this: