WordPress is not slow. Sites built on it get slow, in a small number of predictable ways: enormous images, no caching, thirty plugins, and hosting that responds in a second and a half.
This is the sequence I work through, ordered by return per hour. Diagnose first, because the most common mistake is spending a weekend on the thing that was already fine.
Quick Info
Step 1: find out what is actually slow
Write the numbers down. Optimisation without a baseline is superstition.
Step 2: fix the images
On most WordPress sites this is between half and eighty per cent of the available improvement, and it costs nothing.
If you do nothing else, resize before uploading. It is the highest-return, lowest-skill fix available on WordPress.
Step 3: caching, done once and properly
Caching serves a pre-built page instead of assembling it per visitor. It is usually worth a second or more on its own.
Two caching plugins is slower than none and produces intermittent errors that take hours to trace. Check you do not already have one before installing.
Step 4: audit the plugins and scripts
From the network tab list you made in step one, work out what each large request belongs to. There is almost always something forgotten.
Third-party scripts are the ones you cannot optimise, only remove or delay. A chat widget can cost a second by itself, and it is worth asking whether it earns that.
Step 5: fonts
Step 6: the database and the housekeeping
Rarely the main cause and worth doing once a year, particularly on older sites.
Take a backup before any database work. Optimisation plugins are usually safe and occasionally are not.
Step 7: the hosting conversation
If Time to First Byte is still over 600ms after the steps above, you have optimised what you control and the server is the remaining constraint.
Moving from bottom-tier shared hosting to decent managed hosting is frequently the largest single improvement available on a neglected site, and it is the step people try last because it costs money every month. The hosting guide covers what to look for.
Step 8: retest, then stop
Retest the same three pages, compare against your baseline, and check Search Console in four weeks once real user data has accumulated.
Then leave it. The difference between 1.8 seconds and 1.2 seconds is invisible to your customers and the hours are better spent on the pages themselves.
Speed is a threshold, not a leaderboard. Get under it and go and do something that earns money.
Frequently Asked Questions
In order of likelihood: oversized images, no caching, too many plugins and scripts, and cheap hosting. Diagnose before fixing; the cause is rarely the one you assume.
WP Rocket if you will pay for sensible defaults, LiteSpeed Cache if your host supports it, W3 Total Cache otherwise. Server-level caching beats all of them.
No, but its defaults are good enough that most people get a better result with it than by configuring a free plugin badly.
If they were loading assets, yes. The larger benefit is fewer things to break and a smaller attack surface.
Sometimes, particularly heavy multipurpose themes with a bundled builder. Test with a default theme temporarily to find out for certain.
Largest Contentful Paint under 2.5 seconds on mobile. Below that, further gains have very little practical effect.
Before You Go
Work down the steps and stop when you are under the threshold. Most sites get there at step three, and almost all of the work is free.
If the site is slow because of how it was built rather than what it contains, the builder question is worth reading, and the plugin list covers what should be there in the first place.
Diagnose. Resize the images. Cache once.
I'm a marketing consultant, entrepreneur and content creator. I help businesses grow through practical marketing, websites, SEO, content and AI.
More About Tariq →