Do you want to improve your website’s speed? You are right to — online businesses tend to neglect this crucial element. If you are here, you have probably already done the hardest part!
Why improve your site’s loading time?
A slow site quickly translates into financial losses and a poor brand identity for web businesses.
Indeed, site performance is critical to business success: sites that take more than three seconds to load lose on average 40% of their traffic, and three in four people will abandon a mobile site if loading takes more than five seconds.
Moreover, 79% of visitors never return to slow e-commerce sites! Maximise your performance, because reducing load time by just 0.1 seconds could lead to an 8% increase in conversion rates (figures provided by Google).
As you can imagine, the user experience becomes catastrophic and businesses do not always understand why their sites are not converting. Moreover, site speed and Core Web Vitals could optimise your natural SEO, through Google’s criteria and its crawl budgets.
Do not forget to always optimise your performance with “Mobile-First” in mind.
You should reduce your site’s loading time to a minimum of three seconds on desktop and less than five on mobile (ideally on 3G). If you have not already done so, you can now install Google Analytics 4 and Google Search Console to check your website’s speed performance.
Content may naturally contain affiliate links for certain products I use and love. If you take action (i.e. subscribe, make a purchase) after clicking on one of these links, I will earn some coffee money ☕️ which I promise to drink while creating more useful content like this.
Improving loading time:
- The right tools for loading time analysis
- Choosing the right hosting
- Many essential parameters to improve speed
- Optimise image weight
- Sort and delete your plugins
- Disable specific plugins for certain pages
- Optimise fonts
- Optimise performance to the maximum
0. Tools to test your site’s performance
There is no single best tool — rather, several tools that should all be used to analyse speed performance:
- Pingdom (the test server location matters — if your site is aimed only at a French audience, use the Frankfurt and/or London test servers).
- Google PageSpeed Insights
- Web Page Test (essential for understanding which resources consume the most).
- Google Mobile PageSpeed
Just because Google PageSpeed gives you catastrophic scores does not mean you need to worry in terms of speed — use Pingdom’s analysis to determine the actual overall loading time of your page.
Scores are not always indicative, and sometimes applying optimisations that increase scores might not be detected by performance optimisation tools.
And what is this Google PageSpeed score? It has very little to do with your speed — it is a Core Web Vitals score. If you want to know more, you can consult our dedicated article Google PageSpeed, improve and understand your Core Web Vitals score.
Note: if your site is already optimised through caching, you should test several times because of it and take an average to get the most concrete results possible.
1. Choose the right hosting
Choosing your hosting is the most important factor for your WordPress site speed!
All your requests depend on your hosting provider’s speed. I am not sure it makes sense to want to refine a car’s aerodynamics and add a turbo if the engine does not exceed ten horsepower. It is the same with web performance.
If you use WordPress, forget hosting providers like OVH, Hostinger, LWS, o2switch etc. They are not designed or optimised for WordPress, even if they have “WordPress hosting” plans. These plans only provide tools, not performance.
To greatly increase your site speed, move towards a managed WordPress hosting like Pressable, Flywheel, WP Engine, WordPress.com, or .
You can find many articles online from bloggers who moved for example from WP Engine to Flywheel and then to Kinsta. Everyone tends to recognise Kinsta’s performance as the best WordPress hosting on the market.
According to Review Signal:
“It is almost boring to write about Kinsta. 100% uptime. 0 load impact errors. There were also 0 errors on both load tests and the lowest peak response time on the Load Storm test.”
Kinsta includes all the server-side optimisations you should use to optimise your site speed:
- Cloud server
- Cache directly on the server side
- NGINX & Expires headers
- GZIP
- CDN
- Premium DNS
- […]
Whether or not you choose to move to Kinsta, these optimisations will have the most impact on your website’s speed.
It is also the only hosting provider I know of that offers a tool in their interface to analyse and fix your site speed: Kinsta APM. They also have New Relic, a PHP monitoring tool that provides detailed performance statistics about your website. You can read real-world use cases of their tools: WooCommerce performance using Kinsta APM (real examples) or Improve the speed of your membership site with the Kinsta APM tool.
Also note that the PHP version is also very important for your site’s performance. For example on Pressable, their currently available PHP version is 7.4 (as of May 2021), whereas Kinsta has offered PHP 8.0 for several months. Do not hesitate to check your version right now and update it if possible.
2. Best plugins to optimise speed
A great strength of WordPress is its plugins. Fortunately, the WordPress community has developed very powerful speed optimisation plugins.
WP Rocket
Here are criteria that will greatly increase your site’s speed:
- Caching
- Preloading cache, links, DNS requests and fonts
- Minify CSS, JavaScript and HTML files
- LazyLoad: use deferred loading for images, videos and iFrames
- Combine CSS and JavaScript files
- Optimise CSS loading → Eliminates render-blocking resources (CSS)
- Load JavaScript deferred → Eliminates render-blocking resources (JavaScript)
- Image dimensions – Add missing image dimensions (CLS Core Web Vitals)
- Clean content, comments, transients and database
- Heartbeat
- Optimise Google Analytics and Facebook Pixel loading
- Defer JavaScript execution
These are actually improvement suggestions you will most likely find after a Google PageSpeed Insights analysis.
How convenient! The WP Rocket extension has already thought of everything, and it only takes a few clicks to optimise all these settings. Magical, isn’t it?
You should avoid free caching plugins — they tend to be much more vulnerable, more likely to cause display bugs, and sometimes slow things down more than anything else. Using a plugin like WP Rocket could earn you much more money than you will pay for it.
Perfmatters
There is also the Perfmatters plugin which can be used alongside WP Rocket. Some of its settings are also offered by WP Rocket, but it is undoubtedly complementary for all these other very interesting settings. Here is an example of what you can and should add to your site using the plugin:
- Disable emojis
- Disable embeds
- Disable XML-RPC
- Remove jQuery Migrate
- Hide WordPress version
- Remove WLWManifest link
- Remove RSD link
- Remove Shortlink
- Disable RSS feeds
- Remove RSS feed links
- Disable Self Pingbacks
- Disable REST API
- Remove REST API links
- Disable Dashicons
- Disable Google Maps
- Exclude Post IDs
- Disable Google Fonts
- Disable comments
- Disable Heartbeat and/or Heartbeat Frequency
- Limit revisions (WP Rocket only allows these deletions)
- Autosave interval
- Change login URL
- Disable scripts
- Disable cart fragmentation
- Disable status meta box
- Disable widgets
It is very unlikely that all of this will be useful to you. So do not worry and simply optimise your site. You also have a “?” within the plugin describing each setting to tell you what it is for, and complete documentation.
Just like WP Rocket, I invite you to go through the extension and add all possible settings (if a setting is already optimised with WP Rocket, do not duplicate it).
It is relatively simple! Just click buttons.
Do not forget to check after your modifications whether your site is showing errors or display bugs by using a private browsing window. If an optimisation setting causes a problem, disable it if you do not have the skills to understand the problem. You can always call on a developer if you feel the need.
3. Optimise image weight
Images are extremely resource-intensive — you could greatly reduce your site’s loading speed by optimising them.
Upload your images in .jpg format then download Imagify, a complete image optimisation plugin for WordPress.
1. Optimise image weight: find the perfect balance between file size and image quality. Test both “aggressive” and “ultra” optimisation levels, then compare the differences. If the quality is acceptable for ultra, optimise your images in ultra.
2. Do not use images that are too large if it adds no value. If you upload an image at 3000×3000 but display it at 800×800 in CSS, upload it directly at 800×800 — you will save enormous resources. You can also give Imagify a maximum value for your images to resize them automatically. But prioritise resizing your image specifically based on its layout.
3. Serve your images in .webp format — a web-adapted image format that saves even more resources. In the settings, select the following options (if you have no CDN, leave the field empty):
You can also check the following elements:
- You might be able to use the SVG format — be careful though, as it depends on the complexity of your image: SVG VS Flat Images. You can also consult this article if you want to use the SVG format correctly on WordPress: SVG on WordPress.
- Use a CDN to serve your images (→ Kinsta)
- Defer image loading: LazyLoad (→ WP Rocket & Perfmatters)
4. Sort and delete plugins
Use as few extensions as possible and avoid extensions that offer little value relative to their speed impact. You may also be able to do without an extension by simply adding a few lines of code, as is the case with social media sharing extensions which are unnecessary. Also remember to delete disabled extensions: if you no longer use it, delete it. You can download the Performance Profiler plugin to identify which plugin is the most resource-intensive for your website. Obviously, after using the plugin, delete it.
5. Disable specific plugins for certain pages
Using plugins considerably reduces your pages’ speed, but you may need your plugins. You can still optimise their loading to increase performance. Yes, it is entirely possible that several of your plugins are being used and loaded on every page, even when you do not need them.
Take the example of Contact Form 7, one of the most popular plugins for creating a complete contact form on WordPress. Unfortunately, the plugin loads its scripts and styles even when you have no form on your page (same for Slider Revolution and many others). But do not worry! You can disable your plugins for specific pages. If you are somewhat resourceful, you can disable your plugins specifically and manually with this Git code.
Otherwise, there are plugins designed to disable these plugins specifically. It may seem absurd to use another plugin for this, but if you prefer this approach, it remains very beneficial!
For this you can use:
• Plugin Load Filter → Free
• Plugin Organizer → Free
• Plugin Perfmatters → Paid (≈ €20)
I have an undeniable preference for Perfmatters because management is simplified, the plugin is lightweight and it offers the ability to remove only certain scripts within a plugin, certain CSS and JS rather than disabling the entire plugin. Perfmatters also lets you avoid using certain scripts from a theme, and with Regex and MU modes, you can disable virtually any combination of scripts. You can also remove a script only for mobile.
This could prove incredibly powerful if you still use a plugin on your page but not all its scripts. Which is more common than you might think, since the majority of plugin developers as well as WordPress themes do not optimise their creations for performance at all. Moreover, Perfmatters has many other optimisation settings that could greatly interest you, as seen previously.
Note: Google PageSpeed generally only shows the portion of unused code inside a script you are using, but does not tell you about scripts you are not using at all.
To specifically load your plugins with Perfmatters, follow this procedure: go to your WordPress admin console then Settings > Extras > Assets.
Then click to enable the Script Manager:
You just need to choose your page and access the script manager using the admin shortcut bar:
You can see in the red area that I disable certain scripts for one specific plugin while still using it. Finally, as shown in the blue box below, you can completely disable a plugin for that specific page:
You can also see that Perfmatters gives you your file weights, which is very practical. Also, the advantage of the Script Manager is that it makes no permanent changes. If something goes wrong, you can simply reactivate the script. There is even a test mode so you can verify before making changes.
Personally, I saved on average 25% of total loading time just with this tool. And sometimes halved the speed during client work…
6. Optimise fonts
Fonts consume on average 6.2% of a website’s total weight — it is still possible that your fonts consume much more, which is why it is important to use WebPageTest to determine your most resource-intensive assets. Major brands such as GitHub, Bootstrap, Medium, Ghost, and your WordPress admin dashboard all use what they call a system font stack to address this problem. This means they use the fonts on your computer. When you use a system font stack, there is no need to load fonts on the page! That is quite significant!
To do this, you can add this CSS:
body {font-family: -apple-system, system-ui, BlinkMacSystemFont, “Segoe UI”, Helvetica, Arial, sans-serif, “Apple Color Emoji”, “Segoe UI Emoji”, “Segoe UI Symbol”;}
If that does not work with your theme, you can try:
body, p {font-family: -apple-system, system-ui, BlinkMacSystemFont, “Segoe UI”, Helvetica, Arial, sans-serif, “Apple Color Emoji”, “Segoe UI Emoji”, “Segoe UI Symbol”;}
And finally for your heading tags:
h1,h2,h3,h4,h5,h6 {font-family:-apple-system, system-ui, BlinkMacSystemFont, “Segoe UI”, Helvetica, Arial, sans-serif, “Apple Color Emoji”, “Segoe UI Emoji”, “Segoe UI Symbol”;}
If that still does not work, you can add “!important” before the “;”.
Otherwise, if you use GeneratePress (the best lightweight theme), simply go to Appearance > Customise > Typography and select “System stack”.
Otherwise you can:
- Host your fonts locally
- Limit the number of fonts used — two fonts are sufficient for your site (UX).
- Do not load one of your fonts in normal, then bold, then italic. Use CSS to serve your fonts differently: font-weight: bold; | font-style: italic; […]
- Include additional formats: woff2, woff, ttf, and eot. Browsers will select the version they can use and load your fonts as quickly as possible.
- You can also preload your fonts, use a CDN, cache and minify your fonts. But normally you have already done these things if you followed the beginning of the article!
There you go! You have got a super fast site! You will not necessarily need to optimise your website any further. If for various reasons this is not sufficient, or if you are a performance fanatic, you can also check and use this complementary list:
7. Optimise performance to the maximum
Kinsta APM & New Relic: analyse your site’s speed issues and get the necessary resolutions with these tools. Kinsta also has a “premium” support service, so you can contact them if you need help with complex resolutions.
Re-analyse your site with the tools mentioned at the beginning of the article — they may indicate additional improvement paths. And above all use WebPageTest, WebPageTest and also WebPageTest. It is essential now that you have made all the improvements to see which resources consume the most if the speed still does not satisfy you. If you see that 90% is dedicated to images, remove images, etc. Moreover, you can select a multitude of parameters such as 2G/3G/4G speed, screen size and many other things.
You may decide to choose a lightweight WordPress theme such as GeneratePress. I put this optimisation here because you will have to completely rework your site and you will probably not do it. Except that the majority of sites are not very technical in design and yet use heavy themes like Elementor when GeneratePress would be more than sufficient. It is a non-negligible optimisation criterion.
Use the right video formats: Lottie and/or WebM are ideal for serving your videos.
Remove and/or avoid large JavaScript loads.
Limit or remove external services like adverts: if your site uses advertising, you might consider showing fewer ads.
Use a lighter cookie consent request: you can also use Perfmatters and add “Anonymise IPs”. This means you do not need to display your GDPR compliance third-party service. You can learn more about cookies here: Are Google Analytics cookies subject to consent?
Limit the number of redirects as much as possible: you can find the number of redirects on a dedicated page using Pingdom. You can also check their count in your redirect plugin. If you need to add a redirect, do it at the server level for load optimisation. Hosting providers like Kinsta make this easy with their redirect tool in the dashboard.
Use icon fonts correctly: WordPress themes or plugins generate all icons even if you only use one or two. Kinsta has written a complete article on this: using WP icons the right way (performance).
Summary: optimising WordPress site speed
If you apply absolutely all of these recommendations, it is impossible for your site not to be super fast. You can also read our dedicated article on Core Web Vitals.
If you still need help, or if you prefer to delegate this task, you can contact us.
Feel free to tell us in the comments how much you have optimised your website!
Subscribe to the newsletter so you never miss any of our future articles.