...

How to Speed Up a WordPress Website (Priority Order That Actually Works)

Most “speed up WordPress” guides give you 30 tips in random order: enable GZIP, limit revisions, disable hotlinking. Some of those save milliseconds. Others save seconds. If you do them in the wrong order, you can spend a full weekend tweaking and watch your PageSpeed score barely move.

This guide is ordered by impact. Fix the big things first (hosting, caching, images), then the medium ones (theme, scripts, plugins), then the small housekeeping. Do the five biggest fixes and most WordPress sites pass Core Web Vitals. That bar matters: in Google’s September 2026 Chrome user data, only 55.9% of websites passed all three Core Web Vitals at once. Along the way, you will learn what each fix actually does, so you stop guessing and start measuring.

If you are new to the underlying metrics (LCP, INP, CLS), read our plain-English Core Web Vitals explainer first. It takes five minutes and this guide will make much more sense.

Step 0: Measure Before You Change Anything

You need a baseline, or you will never know what helped. Run these before touching a single setting:

  1. PageSpeed Insights (pagespeed.web.dev): test your homepage and one typical interior page. Look at the mobile result first, and if field data (real user data) is available at the top, those are the numbers that count for Google.
  2. Note four numbers: TTFB (server response time; under 0.8 seconds is good), LCP (under 2.5s), INP (under 200ms), and CLS (under 0.1).
  3. Search Console, Core Web Vitals report: shows which groups of URLs pass or fail for real visitors across your whole site.

Write the numbers down. Every fix below gets measured against this baseline. Change one thing, re-test, then move on. That discipline is what separates a successful speed project from a weekend of random plugin installs.

Priority 1: Fix the Foundation (Hosting and PHP Version)

No plugin compensates for a weak server. Hosting affects every single page request, which is why it sits at the top of every serious priority list.

Check your TTFB first. Time to First Byte measures how long your server takes to start responding. If it is consistently above 800ms (some specialists use 500ms as the warning line for WordPress), your hosting is the bottleneck, and everything you do downstream will underperform until this is fixed. Nothing on your page can even start loading until the server responds.

Check your PHP version. WordPress runs on PHP, and newer versions are dramatically faster. If your host still has you on PHP 7.4 or 8.0, moving to PHP 8.2 or 8.3 (the versions WordPress recommends) removes a common server bottleneck for a few clicks in your hosting control panel. (Check plugin compatibility first; very old plugins can break on new PHP.)

Know when to move hosts. If TTFB stays high after enabling caching (Priority 2), your plan is undersized for your site. Budget shared hosting is the most common root cause of slow WordPress sites we encounter. Moving to quality managed WordPress hosting typically improves response times by several hundred milliseconds in one step. Knowing what web hosting actually is, and when to upgrade, makes that decision much easier.

This is the unglamorous truth of WordPress speed: the biggest lever is the one you cannot install from the plugin directory.

Priority 2: Set Up Page Caching (One Plugin, Configured Properly)

Page caching is the single biggest performance lever inside WordPress itself. Without caching, every visit forces WordPress to run PHP, query the database dozens of times, and assemble the page from scratch. With caching, the server saves a finished copy of each page and serves it instantly to the next visitor. The difference in server load is enormous.

Pick one caching solution and commit to it:

  • If your host runs LiteSpeed servers, LiteSpeed Cache (free) does server-level caching before WordPress even loads, which is structurally faster.
  • On any other server, WP Rocket (paid) is the most beginner-friendly full-featured option.
  • Many managed WordPress hosts include their own server-level caching; if yours does, you may not need a plugin at all.

The critical rule: never run two caching plugins at once. They conflict, break layouts, and can make your site slower than no caching at all. One cache, configured well, beats three fighting each other.

After enabling caching, test in an incognito window and compare cached versus uncached response times to confirm it is working. Also learn where your cache-clear button lives; you will need it every time you update content or design, or visitors will see stale pages.

Priority 3: Fix Your Images (The Biggest Visual Weight)

Images are usually the largest single share of a page’s total weight. On most slow WordPress sites we see, image bloat alone explains the majority of the LCP problem. This is also the fastest win: it rarely takes more than an hour.

  1. Convert to WebP (or AVIF). Modern formats deliver the same visual quality at roughly 25 to 35% smaller file sizes than JPEG and PNG. Plugins like ShortPixel, Smush, or Imagify can convert your entire media library in bulk and handle new uploads automatically.
  2. Resize before uploading. A 4000-pixel-wide photo displayed at 800 pixels is pure waste. Resize images to the largest size they will actually display at.
  3. Compress. Aim for the smallest file size that still looks good. Most business photos survive aggressive compression without any visible difference.
  4. Lazy-load everything except the hero. Lazy loading defers below-the-fold images until the visitor scrolls near them. WordPress does this by default now. But exclude your hero/LCP image from lazy loading: delaying the largest visible element directly hurts LCP.
  5. Preload the hero image. Tell the browser to fetch your LCP image immediately instead of discovering it late. Caching plugins like WP Rocket and Perfmatters offer this as a one-field setting.
  6. Set image dimensions. Width and height attributes (or aspect-ratio CSS) reserve space for images before they load, which prevents layout jumps and fixes a whole class of CLS problems.

One honest warning: a 2MB header image is the most common single act of speed self-sabotage on business websites. Fix that one image and re-test before doing anything else.

Priority 4: Audit Your Theme Weight

Your theme determines how much code loads on every page. Heavy multipurpose themes and page builders load large CSS and JavaScript bundles whether a given page needs them or not, and that weight hits all three Core Web Vitals at once.

Signs your theme is the problem: INP failures across the site, enormous DOM sizes in PageSpeed diagnostics, and page builders loading their full asset stack on simple pages.

What to do: if you are choosing or rebuilding, lightweight block-based themes (GeneratePress, Astra, Kadence, or native block themes) consistently outperform heavy page-builder setups in 2026 benchmarks. If rebuilding is not on the table, audit what your current theme loads: disable unused theme features, widgets, and bundled sliders or animation libraries you never use. Some page builders let you disable their assets on pages that do not use them; turn that on.

Rebuilding a theme is a medium-effort, high-impact move. Do not start here, but do not skip it if Priorities 1 to 3 did not get you where you need to be.

Priority 5: Tame Your JavaScript (The INP Killer)

INP, the responsiveness metric, is where JavaScript heaviness shows up, and it is almost always why interactive WordPress pages feel sluggish. Every chat widget, popup, tracking script, social feed, and animation library competes for the browser’s attention the moment a visitor clicks something.

The audit: open PageSpeed Insights and look at what it flags under “reduce JavaScript execution time” and third-party code. Common offenders: live chat widgets loading on every page, multiple analytics and ad trackers, social media embeds, and popup builders.

The fixes, in order:

  1. Delay non-essential scripts until interaction. Tools like Perfmatters or WP Rocket can delay chat widgets, trackers, and embeds until the visitor actually interacts with the page. This is the highest-impact INP fix available without a developer.
  2. Remove what you do not need. That heatmap tool nobody opened in a year, the third analytics platform, the social feed in the footer. Every script has a cost; audit ruthlessly.
  3. Defer non-critical JavaScript. Deferring lets the page render first and run scripts after, instead of blocking everything while scripts download and execute.

A useful mindset: every third-party script is a small tax on every visitor interaction. Make each one justify its existence.

Priority 6: Audit Your Plugins

Plugins are WordPress’s superpower and its most common speed liability. Each active plugin adds code, and many load their assets on every page whether they are needed there or not.

The process:

  1. List every active plugin and ask what business function each serves. Deactivate anything you cannot justify.
  2. Replace heavy plugins with lighter alternatives where the function matters (for example, a lightweight contact form instead of a bloated one, a simple slider instead of a page-builder-powered one).
  3. Delete deactivated plugins entirely; do not just leave them sitting there.
  4. For the keepers, check whether their assets can be restricted to the pages that use them (Perfmatters and similar tools do this well).

There is no magic number of plugins, but direction matters: a site with 12 well-chosen plugins usually outperforms one with 40 accumulated ones. Plugin bloat builds silently over years; this audit is worth doing annually.

Priority 7: Clean the Database

WordPress databases accumulate cruft: post revisions (every saved draft, forever), spam comments, expired transients, and autoloaded options that load on every single page request. On older sites, this genuinely slows down queries.

Safe cleanup: use WP-Optimize or Advanced Database Cleaner to remove post revisions (cap them going forward by adding a revisions limit in wp-config.php), delete spam and trashed comments, clear expired transients, and optimize tables. Always take a full backup before running database operations.

The autoload check: options set to autoload load on every page. Bloated autoload data from old plugins is a classic hidden slowdown. Database plugins can show you the worst offenders.

Expect modest gains here, typically single-digit percentage improvements, but on old, long-running sites it removes a real drag, and it is nearly free to do.

Priority 8: Add a CDN (If Your Audience Justifies It)

A Content Delivery Network stores copies of your static files (images, CSS, JavaScript) on servers around the world, so visitors download them from nearby instead of from your single origin server. Cloudflare’s free tier covers most small business sites.

When it helps most: your visitors are geographically spread out (for example, a Pakistan or UAE business serving UK or US customers), or your origin server is slow at serving static files. When it matters less: all your visitors are near your server. Do not expect a CDN to fix a slow origin server; it accelerates delivery, it does not fix generation.

Set it up after the earlier priorities are done, so you are accelerating an already-lean site rather than papering over bloat.

What NOT to Do

  • Do not install five optimization plugins. Overlapping caching, minification, and image tools conflict with each other. One well-configured stack beats a pile of overlapping ones.
  • Do not chase a perfect lab score. A 100 on desktop Lighthouse while your field data fails is theater. Optimize for real-visitor field data, which is what Google uses.
  • Do not change everything at once. Change one thing, test, measure, then move on. If something breaks (and something eventually will), you will know exactly what caused it.
  • Do not treat speed as a one-time project. Sites accumulate content, plugins, and scripts. The gradual slowdown that creeps up over two years is the most common speed problem of all. Revisit this checklist annually.

How Long Does This Take, and When to Get Help

For a typical small business site, expect three to five hours of focused work across these priorities. Image compression and plugin cleanup are the fastest wins, often under an hour combined. Caching setup takes 30 to 60 minutes to configure and test properly. A hosting migration is the most time-consuming step if you need it, but it is usually the single biggest jump.

Call in a professional when: you have worked through the list and the numbers will not budge (the problem is likely server-level configuration or custom code), you run WooCommerce with complex caching needs, or the site has years of accumulated technical debt that makes every change risky. Some problems sit beyond what plugins and settings can reach, and continued trial and error costs more than expert diagnosis.

Common Questions

Why is my WordPress site so slow?

In order of likelihood: underpowered shared hosting, no page caching, oversized unoptimized images, a heavy theme or page builder, too many plugins, and excessive third-party JavaScript. Work through this guide’s priority order instead of guessing.

What is the first thing to do to speed up WordPress?

Check your hosting and PHP version first, then install and configure one caching plugin. Those two steps deliver the largest gains for the least effort on most sites.

Do page builders slow down WordPress?

Generally yes, compared to lightweight block themes. Page builders load larger CSS and JavaScript bundles and create bigger page structures (DOMs), which hurts LCP and INP. If you love your builder, mitigate with the asset-cleanup and script-delay techniques above; if you are rebuilding, a lightweight theme is the faster foundation.

Will a caching plugin alone fix my site?

Rarely by itself. Caching addresses repeated server processing, but unoptimized images, plugin bloat, or weak hosting each independently keep a site slow. Speed works in layers; caching is one powerful layer, not the whole building.

How often should I do speed maintenance?

Review quarterly at minimum: update plugins and PHP, re-run PageSpeed Insights on key pages, and check Search Console’s Core Web Vitals report. Do the full plugin and database audit annually.

The Bottom Line

WordPress speed optimization works in layers that compound: hosting and PHP at the foundation, page caching on top of that, images as the biggest visual weight, then theme, scripts, plugins, database, and CDN in descending order of impact. Follow the order, measure each step against your baseline, and stop when your real-visitor field data is green.

If you have worked through the list and your scores still will not move, or if you would rather hand the whole thing to someone who does this daily, our WordPress SEO and technical SEO services include full speed diagnosis and implementation. And if you want speed handled as ongoing maintenance rather than a one-time project, that is exactly what our website maintenance plans cover: updates, monitoring, and performance kept green while you run your business.

About the author: Muhammad Waqas Dilzak is co-founder of SWAF Digital and an SEO specialist with 10+ years of experience across SEO, AI search optimisation, and WordPress.