A slow WordPress site costs you sales, search rankings, and patience. The fixes are well known, but most articles list them in the wrong order: font preloads before caching, lazy loading before image compression. If you only have an afternoon, you want the fixes with the biggest return first.
This guide lists 12 ways to improve WordPress website speed, ordered by how much each one typically moves the needle. Work top to bottom and stop when you hit diminishing returns.
First, get a baseline

Before changing anything, record your starting numbers. Run your homepage and one typical content page through Google PageSpeed Insights. Note the Largest Contentful Paint (LCP), Total Blocking Time, and Cumulative Layout Shift figures. These are the three Core Web Vitals that Google uses in its ranking signals, and they reflect what real visitors feel.
Save those numbers. After you work through the list below, run the same tests again. If a fix does not move any of those three numbers, it was not the bottleneck for your site.
1. Start with a fast host
Hosting sets the ceiling for everything else. Time to First Byte (TTFB) is the delay before your server even begins responding, and no plugin fixes a slow server. If your TTFB is above 600ms on a simple page, the fastest caching plugin in the world will only paper over the problem.
Budget shared hosting usually packs hundreds of sites onto one machine. When your neighbour gets a traffic spike, your site slows down. Managed WordPress hosting runs on infrastructure tuned for WordPress, with server-level caching and isolated resources. HostPoco’s WordPress hosting plans are built on WP Cloud by Automattic, the same platform behind WordPress.com, so TTFB is already in a good place before you do anything else.
2. Pick a lightweight theme
A heavy multi-purpose theme can load a dozen CSS and JavaScript files before your content starts rendering. Fresh installs of themes like Astra, GeneratePress, Kadence, or the default Twenty Twenty-Five typically load under 100KB of assets, while some page-builder themes push past 1MB.
You do not need to rebuild your site from scratch today, but if you are starting a new WordPress project, a lightweight theme is one of the few decisions that is hard to fix later. Go lean from day one.
3. Compress and serve images in the right format
On most WordPress sites, images are the single biggest chunk of page weight. Three fixes handle 90% of the problem:
- Resize images to the actual display size before upload. A 4000-pixel-wide photo rendered in a 600-pixel column is wasted bytes.
- Compress them. TinyPNG or a plugin like ShortPixel or Imagify will drop file sizes by 40% or more without visible loss.
- Serve modern formats. WebP is roughly 30% smaller than JPEG at the same quality, and AVIF is smaller still. Most good image plugins convert and serve the right format automatically.
4. Turn on caching
Every time someone visits a WordPress page without caching, the server runs PHP, queries the database, and assembles the HTML from scratch. Caching saves that finished HTML and serves it instantly for the next visitor.
Your host may already handle this at server level. If not, WP Rocket is the paid option most WordPress professionals reach for, and W3 Total Cache or LiteSpeed Cache are solid free choices. On WP Cloud managed hosting you usually do not need a plugin at all, which keeps one more moving part out of your site.
5. Put a CDN in front of your site
A Content Delivery Network caches your images, CSS, and JavaScript on servers around the world, so a visitor in Sydney is not waiting for files to travel from London. Cloudflare has a generous free tier that handles this for most small sites.
Managed WordPress hosts usually include a global CDN by default. Check your host’s dashboard before you pay for another one.
6. Keep PHP current
Each new version of PHP is measurably faster than the last. Moving a site from PHP 7.4 to PHP 8.3 can deliver a 20-30% performance improvement on WordPress workloads with zero other changes. If your host is still on PHP 7.x, that alone is a reason to switch.
Check your current version under Tools, Site Health in the WordPress admin. WordPress officially recommends PHP 8.1 or newer.
7. Audit your plugins ruthlessly
Every active plugin is code that runs on every page load. The plugin count itself is not what matters. A single badly built plugin can slow a site more than 30 well-built ones. Two rules of thumb:
- Deactivate and delete anything you do not actively use. “I might need it later” is not a reason to keep code on a production site.
- Use a profiling plugin like Query Monitor to see which plugins are spending time on which queries. The slow ones are rarely the obvious ones.
8. Minify and combine CSS and JavaScript
Minifying strips whitespace and comments from asset files. Combining merges many small files into one larger one, so the browser opens fewer connections. Most caching plugins do both with one checkbox.
Be careful: combining files sometimes breaks sliders, form validation, or chat widgets. Always test the frontend after turning it on.
9. Clean out the database
After a year of real use, a WordPress database builds up thousands of post revisions, expired transients, spam comments, and orphaned meta rows. A bigger database means slower queries.
WP-Optimize and Advanced Database Cleaner both handle the routine tidying safely. Take a backup first. While you are there, set a cap on post revisions in wp-config.php so WordPress does not keep 50 copies of every page.
10. Cut third-party scripts
Google Analytics, Facebook Pixel, heatmaps, chat widgets, A/B testing tools, and marketing tag managers all load external JavaScript. Each one is a dependency on a server you do not control.
Open the Network tab in your browser’s developer tools and sort by size. Remove or delay anything you are not actually using. Load what remains asynchronously so it does not block page rendering.
11. Lazy-load images and iframes
Lazy loading delays images and iframes below the fold until the visitor scrolls near them. WordPress has done this natively for images since version 5.5, and for iframes since 5.7, so you do not need a plugin for the basics.
One small caveat: do not lazy-load the hero image at the top of the page. Lazy-loading an image that is immediately visible hurts LCP instead of helping it. Most good image plugins handle this automatically.
12. Keep WordPress, themes, and plugins updated
Updates are not just about security. Theme and plugin authors regularly ship performance improvements, and WordPress core itself gets faster with most major releases. Running a site on a two-year-old plugin set means leaving measurable speed on the table.
On managed hosting this is usually done for you, with a staging site to catch anything that breaks. On shared hosting you need to handle updates yourself and test afterwards.
What real speed work looks like
Josh was abundantly patient in answering sooo many questions. He increased our page speed so much that we didn’t have any time to go get coffee any more! (We used to make coffee while we waited for the site to load!) I especially loved that he provided a walk through video of what he did with explanations.
WordPress speed optimization
We had some issues early on with some video communication, but Josh did as promised and improved by site speed by at least a factor of 2 according to online speed test tools.
Google PageSpeed and Core Web Vitals
Great website speed optimisation work. Thank you Josh
Database clean up and optimisation
Frequently asked questions
How fast should a WordPress site load?
Aim for a Largest Contentful Paint under 2.5 seconds on mobile and desktop. That is the threshold Google classes as “Good” in the Core Web Vitals report. Anything over 4 seconds will visibly hurt both user experience and rankings.
Do I need a caching plugin if my host has caching?
Usually no. Server-level caching runs earlier in the request cycle than a plugin can, and stacking two caching layers often creates bugs. Check your host’s documentation first, and only add a plugin if they recommend it.
Which is the best WordPress speed plugin?
There is no single best plugin, only the right one for your stack. WP Rocket is the most user-friendly paid option. LiteSpeed Cache is the top free choice if your host runs LiteSpeed servers. W3 Total Cache is a solid free alternative on any host. If you are on managed WordPress hosting, you likely need none of them.
Does switching to a faster host actually help SEO?
Yes, but indirectly. Google uses page experience as a ranking factor, and faster sites keep more visitors engaged. A fast host removes a whole category of bottlenecks, so other on-page work (content, internal links, images) has a bigger effect.
How long does a full speed overhaul take?
For a typical five-to-twenty page small business site, most of the wins in this list can be done in half a day by someone who knows WordPress. A full audit on an older site with years of plugin build-up takes one to three days.
