WordPress powers around 43% of all websites, but out of the box it’s not particularly fast. The combination of a database-driven architecture, themes loaded with unused CSS, and a plugin ecosystem that’s easy to over-extend means many WordPress sites are far slower than they need to be.
The good news is that most WordPress speed problems are fixable without touching a line of code. This guide walks through the most impactful changes you can make, in roughly the order you should make them.
Start with Hosting and Caching
No amount of optimisation will fully compensate for poor hosting. Shared hosting plans where hundreds of sites compete for the same server resources will always be slow. If your server’s Time to First Byte (TTFB) is consistently above 600ms, consider moving to a managed WordPress host or a VPS with dedicated resources.
A caching plugin is the single most impactful thing you can add to a WordPress site. Plugins like WP Rocket, W3 Total Cache, or LiteSpeed Cache (if your host supports it) generate static HTML versions of your pages so WordPress doesn’t have to rebuild them from the database on every visit. Enable full-page caching, browser caching, and GZIP compression as a minimum.
A content delivery network (CDN) serves your static assets — images, CSS, JavaScript — from servers geographically close to your visitors. Cloudflare’s free tier is an easy starting point and can meaningfully reduce load times for visitors outside your server’s region.
Optimise Images and Reduce Page Weight
Images are usually the heaviest assets on a WordPress page. Install an image optimisation plugin such as ShortPixel, Imagify, or Smush to automatically compress images on upload and convert them to WebP format. WebP files are typically 25–35% smaller than equivalent JPEGs with no perceptible quality difference.
Enable lazy loading for images below the fold — WordPress has had this built in since version 5.5. Make sure your hero image and any above-the-fold images are not lazy-loaded, as this will delay your Largest Contentful Paint (LCP).
Audit your plugins. Every active plugin adds HTTP requests and potentially JavaScript or CSS to every page. Deactivate and delete plugins you no longer use. For those you do use, check whether they’re loading assets on pages where they’re not needed — a contact form plugin shouldn’t be loading scripts on your blog posts.
Optimise CSS, JavaScript, and Your Theme
Minify and combine your CSS and JavaScript files to reduce the number of HTTP requests. Most caching plugins handle this, but be careful — aggressive combining can break some themes and plugins. Test thoroughly after enabling these features.
Your WordPress theme has a huge impact on performance. Heavyweight page builders like Divi, Elementor, or WPBakery generate bloated HTML and load significant JavaScript on every page. If performance is a priority, consider a lighter theme built on a modern framework, or use a performance-focused page builder. Themes built for the native WordPress block editor (Gutenberg) tend to be significantly leaner.
Finally, reduce your database overhead. Plugins that log everything — form submissions, page view counts, revision histories — can bloat your database over time and slow down database queries. Use a plugin like WP-Optimize to clean up post revisions, spam comments, and transients regularly.
Common questions.
What’s the fastest caching plugin for WordPress?
How many plugins is too many for a WordPress site?
Will speeding up my WordPress site improve my Google rankings?
More on web design & ux.
Want a hand putting this into practice?
Book a free, no-obligation consultation with a Norwich-based specialist.
Let's put your business in a better light.
Book a free, no-pressure consultation. We'll talk through your goals and tell you honestly what we'd do — whether you work with us or not.