WordPress speed optimization works best when you find out what is actually slowing your site down before you change anything. Most slow WordPress sites have one or two main causes: slow hosting, heavy images, too many plugins or scripts, or an old PHP version. Installing random speed plugins without measuring first often changes nothing, and sometimes makes things worse.
This guide shows you how to diagnose a slow WordPress site in plain English, then fix the cause in the right order.
- Measure first. Test the same pages on desktop and mobile with PageSpeed Insights or GTmetrix, and write the results down.
- Work out which of three things is slow: the server (how long before anything arrives), the page weight (images, fonts, video), or the code (scripts and plugins).
- Fix in order: hosting and caching, then images, then plugins and scripts, then the database.
- Use one caching plugin, not several. Stacking speed plugins causes conflicts.
- Re-test after every change so you know what actually helped.
Why WordPress speed matters
A slow site loses visitors before they see your offer, especially on phones. Google also uses page experience signals, including its Core Web Vitals, as part of how it judges pages. Speed alone will not rank a weak page, but a slow, frustrating page makes every other effort harder.
Google’s own “good” thresholds for Core Web Vitals are:
| Metric | What it measures | Good |
|---|---|---|
| Largest Contentful Paint (LCP) | How quickly the main content appears | 2.5 seconds or less |
| Interaction to Next Paint (INP) | How quickly the page responds when someone taps or clicks | 200 milliseconds or less |
| Cumulative Layout Shift (CLS) | How much the page jumps around while loading | 0.1 or less |
Step 1: Measure before you change anything
- Choose three pages to test: your homepage, your most important service or product page, and a blog post.
- Run each through PageSpeed Insights. Look at the mobile results first, because that is where most sites struggle.
- If the page has enough visitors, PageSpeed Insights shows real-user data from Chrome at the top. That is what Google uses. The score below it is a lab test, useful for spotting problems.
- Run the same pages through GTmetrix and open the Waterfall tab. It lists every file the page loads and how long each one takes.
- Write down the results so you can compare after each fix.
Step 2: Find out what kind of slow it is
Almost every slow WordPress site falls into one of three groups. The fix depends on which one you have.
1. The server is slow
Sign: in the waterfall, the very first line (the HTML document) takes a long time before anything starts downloading. This is often called Time to First Byte (TTFB). If it regularly takes well over half a second, the server is a big part of the problem.
Usual causes: cheap or overloaded shared hosting, no page caching, an old PHP version, or a plugin running heavy database queries on every page load.
2. The page is too heavy
Sign: the first response is quick, but the total page size is large and big images or videos take most of the time in the waterfall.
Usual causes: full-size photos uploaded straight from a camera or phone, images in old formats, background videos, sliders, and lots of web fonts.
3. The code is heavy
Sign: PageSpeed Insights warns about “reduce unused JavaScript”, “reduce JavaScript execution time” or “minimize main-thread work”, and the page feels slow to respond to taps.
Usual causes: too many plugins loading scripts on every page, page builder add-on packs, chat widgets, tracking scripts and pop-ups.
Step 3: Fix the server and caching first
- Check your hosting. If the server is slow, plugins can only hide part of the problem. Managed WordPress hosting or a better plan is often the single biggest improvement.
- Update PHP to a currently supported version. Newer PHP versions run WordPress noticeably faster. Follow our guide on how to update PHP in WordPress safely.
- Turn on page caching. Use your host’s built-in caching if it has one, or a single caching plugin such as WP Rocket, LiteSpeed Cache (on LiteSpeed servers) or W3 Total Cache. Use only one.
- Use a CDN such as Cloudflare if your visitors are spread across countries. It serves images and files from a location close to each visitor.
Step 4: Make the page lighter
- Resize images before uploading. A photo rarely needs to be wider than about 2,000 pixels, and smaller images in cards and thumbnails can be much smaller.
- Use modern formats such as WebP. An image optimization plugin can convert existing images automatically.
- Lazy-load images below the fold. WordPress does this by default for most images. Make sure your main hero image is not lazy-loaded, because that slows down LCP.
- Replace background videos and heavy sliders with a single well-optimised image where you can.
- Limit fonts to one or two families and only the weights you actually use. Hosting fonts locally can also help.
Step 5: Cut unnecessary plugins and scripts
- List every plugin and ask what it does for the business. Deactivate and delete what you do not need.
- Look for duplicates: two SEO plugins, two form plugins, two sliders or several speed plugins doing the same job.
- Load scripts only where needed. A contact form plugin does not need to load its files on every blog post. Many caching and optimization plugins can delay or remove scripts per page.
- Be careful with third-party scripts such as chat widgets, heatmaps and multiple tracking tags. Each one adds work for the visitor’s phone.
- Test changes on a staging site if your host offers one, so a broken plugin does not take your live site down.
Step 6: Clean up the database
Over time WordPress stores old post revisions, spam comments, expired temporary data and leftovers from deleted plugins. Cleaning these is unlikely to transform a site on its own, but it helps on older, busy sites. Take a backup first, then use a database cleanup feature in your caching or optimization plugin.
Codixity builds and fixes WordPress websites for clients in the USA, UK and worldwide. We measure first, find the real cause and fix it, without stacking extra plugins. Send us your website address for a fixed quote.
Step 7: Re-test and keep it fast
After each change, run the same three pages through the same tools and compare with your notes. Keep what helped and undo what did not. Real-user data in PageSpeed Insights updates over about four weeks, so give it time before judging.
To keep the site fast, check speed after adding new plugins or features, keep WordPress, plugins and PHP updated, and compress every new image before uploading.
Common speed mistakes to avoid
- Installing several caching or “speed booster” plugins at once.
- Chasing a 100/100 score instead of fixing what real visitors experience.
- Lazy-loading the main hero image.
- Uploading full-size photos straight from a phone.
- Paying for a faster theme when the real problem is slow hosting.
Frequently Asked Questions
Why is my WordPress site so slow?
The most common causes are slow or overloaded hosting, no page caching, large unoptimised images, too many plugins and scripts, and an old PHP version. Test your pages with PageSpeed Insights or GTmetrix to see which one applies to your site before you change anything.
What is the best plugin for WordPress speed optimization?
There is no single best plugin for every site. Use your host’s built-in caching or one caching plugin, such as WP Rocket, LiteSpeed Cache on LiteSpeed servers, or W3 Total Cache, plus an image optimization plugin. Running several speed plugins together usually causes conflicts.
Does WordPress speed affect SEO?
Yes, to a degree. Google uses page experience signals, including Core Web Vitals, as part of how it evaluates pages. Speed will not make up for weak content, but a slow page loses visitors and makes it harder to compete.
Is hosting or plugins more important for speed?
Start with hosting. If the server takes a long time to respond, plugins can only hide part of the problem. Once the server is quick, images, plugins and scripts make the biggest difference.
Need a faster WordPress site?
Codixity builds and fixes WordPress websites for clients in the USA, UK and worldwide, with 350+ projects over 6+ years. We can diagnose your site, fix the real cause of the slowdown and keep it fast with a care plan from $49/month. Contact Codixity for a fixed quote.


