Skip to main content
Fix My Website Speed
← Back to blog

How to Speed Up WordPress: A Practical Guide

WordPress powers over 40% of the web. It is also responsible for some of the slowest websites on the internet. Not because WordPress itself is slow, but because of what gets layered on top: bloated themes, too many plugins, unoptimised images, and cheap hosting.

If your WordPress site scores below 50 on Google PageSpeed Insights (mobile), this guide covers the most effective fixes in order of impact. Not sure what your score is? Run our instant speed test to find out. You do not need to be a developer to understand what needs doing, though some steps will require technical access. For background on what the scores mean, see our guide on what makes a good website speed score.

1. Optimise your images

This is almost always the single biggest win. Images typically account for 50 to 80 percent of total page weight on a WordPress site.

What to do:

  • Install an image optimisation plugin like ShortPixel, Imagify, or Smush. These compress existing images and automatically compress new uploads.
  • Enable WebP conversion. Modern browsers support WebP, which is typically 25 to 35 percent smaller than JPEG at equivalent quality.
  • Set your WordPress media settings to generate appropriate thumbnail sizes. Do not upload 4000-pixel-wide images when your content area is 800 pixels wide.
  • Enable lazy loading for images below the fold. WordPress has had native lazy loading since version 5.5, but check that your theme is not overriding it.

On a typical site with 50 to 100 unoptimised images, this step alone can reduce page weight by 40 to 60 percent and cut several seconds off your load time.

2. Set up caching

WordPress generates pages dynamically by default. Every time someone visits a page, WordPress queries the database, processes PHP, and builds the HTML from scratch. Caching stores the finished HTML and serves it directly, skipping all that processing.

What to do:

  • Install a caching plugin. WP Rocket is the best all-round option (paid). LiteSpeed Cache is excellent if your host runs LiteSpeed server. W3 Total Cache and WP Super Cache are free alternatives.
  • Configure browser caching so returning visitors load static assets from their local cache instead of downloading them again.
  • If your host offers server-level caching (many managed WordPress hosts do), make sure it is enabled. Host-level caching is typically faster than plugin-based caching.

The difference between an uncached and a properly cached WordPress site is dramatic. Pages that took 3 to 4 seconds to generate can be served in under 200 milliseconds.

3. Audit and reduce your plugins

Every active plugin adds CSS, JavaScript, and database queries to your site. The performance cost is cumulative. Twenty plugins loading their scripts on every page creates significant overhead.

What to do:

  • List all your active plugins. For each one, ask: do I actually use this? Is it loading scripts on pages where it is not needed? Is there a lighter alternative?
  • Deactivate and delete any plugins you are not using. Deactivating alone is not enough; the files remain on your server.
  • For plugins that are only needed on specific pages (contact form, slider, gallery), check whether they can be conditionally loaded using a plugin like Asset CleanUp or Perfmatters.
  • Replace heavy plugins with lighter alternatives. For example, a simple contact form plugin is far lighter than a full form builder you are only using for one form.

You do not need to reduce to zero plugins. The goal is to remove the ones that are not earning their weight and ensure the rest load efficiently.

4. Review your theme

Your theme is the foundation of your site’s front-end output. A heavy theme means every page starts with a performance penalty before your content even loads.

Common theme issues:

  • Page builders (Elementor, Divi, WPBakery) generate large amounts of code. The full builder framework loads on every page even if only a fraction of its features are used. An Elementor site can add 300 to 500 KB of builder-specific code per page.
  • Multipurpose themes ship with features for every possible use case. Your site uses a fraction of them, but the code for all of them loads.
  • Poorly coded themes may load multiple font families, large icon libraries, or unminified CSS and JavaScript.

What to do:

If your theme is heavily slowing your site, you have two options: optimise around it (defer scripts, remove unused features, conditionally load assets) or consider switching to a lighter theme. Themes like GeneratePress, Kadence, and Astra are significantly lighter than multipurpose alternatives.

Switching themes is a bigger decision and not always necessary. A professional WordPress speed optimisation can often get excellent results without changing the theme.

5. Clean up your database

Over time, your WordPress database accumulates unnecessary data: post revisions, auto-drafts, trashed posts, spam comments, expired transients, and orphaned metadata. This bloat slows down database queries and increases server response time.

What to do:

  • Install WP-Optimize or Advanced Database Cleaner.
  • Delete post revisions (or limit them to 3 to 5 per post by adding define('WP_POST_REVISIONS', 5); to your wp-config.php).
  • Clean up auto-drafts, trashed posts, and spam comments.
  • Optimise database tables.
  • Remove expired transients.

For most sites, this takes a few minutes and can noticeably reduce server response time, particularly on older sites that have never been cleaned.

6. Evaluate your hosting

If your Time to First Byte (TTFB) is consistently above 600 milliseconds, your server is the bottleneck. You can check TTFB using WebPageTest or the network tab in Chrome DevTools.

Common hosting issues:

  • Budget shared hosting (£3 to £5 per month) puts your site on a server with hundreds of other sites and no WordPress-specific optimisation.
  • No PHP opcode caching (OPcache) means PHP code is recompiled on every request.
  • No object caching (Redis or Memcached) means repeated database queries are not cached.
  • Outdated PHP versions. PHP 8.2 is significantly faster than PHP 7.4. Check your PHP version in your hosting panel and upgrade if possible.

Good WordPress hosting options at different price points:

Managed WordPress hosts like Cloudways, Rocket.net, and GridPane provide server environments specifically configured for WordPress performance. They typically cost £10 to £30 per month and deliver dramatically better TTFB than budget shared hosting.

7. Address Core Web Vitals

Google measures three specific metrics that affect your search rankings: Largest Contentful Paint (LCP), Interaction to Next Paint (INP), and Cumulative Layout Shift (CLS). Read our Core Web Vitals guide for a detailed explanation of each metric and its thresholds.

Quick fixes for each:

  • LCP: Optimise your hero image (compress, resize, preload). Fix slow server response. Remove render-blocking CSS and JavaScript from the document head.
  • INP: Defer heavy JavaScript. Reduce third-party script impact. Break up long-running tasks.
  • CLS: Add explicit width and height to all images. Use font-display: swap for web fonts. Avoid injecting content above existing content after load.

8. Reduce third-party scripts

Analytics, chat widgets, social embeds, marketing pixels, cookie consent tools, and pop-up plugins all inject scripts into your pages. Each one adds network requests and processing time.

What to do:

  • List every third-party script loading on your site (Chrome DevTools > Network tab, filter by third-party).
  • For each one, assess whether it provides enough value to justify its performance cost.
  • Consolidate tracking scripts into Google Tag Manager where possible to reduce individual script requests.
  • Load non-essential scripts with defer or async attributes.

When to get professional help

If you have worked through the steps above and your site still scores below 50, or if you are not comfortable making these changes yourself, a professional website speed optimisation service can handle it for you.

We offer a free speed check that gives you a clear report on exactly what is slowing your site down, ranked by impact. Many people use the report to fix things themselves. If you want us to do the work, we quote a fixed price with no surprises.

The most important thing is to take action. A slow WordPress site is not inevitable. It is fixable.

Frequently asked questions

What is the fastest WordPress caching plugin? It depends on your hosting environment. WP Rocket is the best all-round option for most shared hosts. LiteSpeed Cache is the fastest if your server runs LiteSpeed. The plugin matters less than how it is configured and whether your host supports server-level caching.

Is Elementor bad for WordPress speed? Elementor adds significant code overhead, typically 300 to 500 KB per page. It is not inherently bad, but it requires careful optimisation. Disable unused widgets, avoid excessive nesting, and use an asset optimisation plugin to manage what Elementor loads on each page.

Should I switch to a lighter WordPress theme? Not necessarily. Many speed improvements come from optimising your existing theme rather than replacing it. However, if your theme generates excessive code that cannot be cleaned up, switching to a lightweight theme like GeneratePress, Kadence, or Astra can make a significant difference.

How many WordPress plugins are too many? There is no magic number. Five poorly coded plugins can be worse than twenty well-built ones. The issue is not the count but the cumulative performance impact. Audit each plugin for its actual resource cost and remove anything that is not earning its weight.

Does WordPress hosting really make that much difference? Yes. Moving from budget shared hosting to a properly configured managed WordPress host can cut your Time to First Byte (TTFB) by 1 to 3 seconds. Features like PHP opcode caching, Redis object caching, and server-level page caching make a substantial difference that no plugin can fully replicate.

Want us to check your site speed?

Get a free, no-obligation speed report for your website. We will tell you exactly what is slowing it down and what to do about it.