WordPress repair · Speed
Slow WordPress Site? What Speed Optimization Actually Involves
WordPress builds every page from scratch unless something tells it not to. PHP starts, the database answers dozens of queries, every active plugin takes a turn. Speed work is finding which of those layers is spending your visitor's patience, and fixing that one first.
When WordPress speed is costing you, not just your score
- Every screen in the admin takes several seconds to open
- Mobile scores in PageSpeed Insights sit firmly in the red
- Pages stay blank for a beat before anything appears
- A caching plugin is installed and nothing got faster
- The site crawls whenever a sale or newsletter goes out
- Search Console lists pages as poor for Core Web Vitals
Where a WordPress page loses its seconds
Most common first, each with a way to check it yourself.
- 1
No page cache, or one that is not really working
Without a page cache, WordPress runs PHP and queries the database for every visitor, even for a page nobody has edited since spring. Caching plugins are often installed and quietly ineffective: cleared every few minutes by another plugin, or fighting the host's own cache.
Check it: Load a page twice in a private window and open the Network tab in your browser's developer tools. Most caches report a hit in the response headers; if yours never does, it is not serving.
- 2
Plugins loading everything, everywhere
A form plugin loads its scripts on every page though the form lives on one. A slider, a popup and a social feed add their own CSS and JavaScript to pages that never show them. Plugin count matters less than plugin weight; one bloated plugin can outweigh fifteen lean ones.
Check it: View the source of your home page and search for /wp-content/plugins/. Every plugin name you find is loading code on that page.
- 3
Slow server response from hosting or PHP
Crowded shared hosting, an outdated PHP version or too few PHP workers leave the server taking a second or more to send the first byte. No front-end tuning can recover time lost before the page starts to arrive.
Check it: Tools, Site Health, Info, Server shows your PHP version. If PageSpeed Insights reports server response time near a second, hosting is part of your problem.
- 4
Page builder markup
Elementor, Divi and WPBakery wrap each element in several layers of containers and ship their own stylesheets and scripts. A page that looks simple can weigh several times what hand-built markup would. Caching hides the server cost, not the weight a phone has to download and parse.
Check it: Right-click a plain paragraph on your site and choose Inspect. Count the nested containers around it. More than four or five is builder overhead.
- 5
A database carrying years of leftovers
Thousands of post revisions, expired transients, spam comments and tables from plugins deleted long ago. The costly part is autoloaded options: data WordPress reads on every request, which some plugins fill with megabytes and never clean up.
Check it: Open Tools, Site Health and read the recommendations. A warning about autoloaded options puts the database on your list.
- 6
Heavy images and third-party scripts
Full-size photos served to phones, no modern image formats, nothing lazy-loaded below the fold. Then chat widgets, review badges, maps and tracking tags, each fetching code from someone else's server on someone else's schedule.
Check it: In PageSpeed Insights on mobile, note the largest content element and the list of third-party code. Those two readings explain most of the visible wait.
Do this today
Run your home page through PageSpeed Insights on mobile and read the top section, the one based on real visitors rather than a test. Write down the Largest Contentful Paint figure. It is the number Google uses, and the one every change afterward should be measured against.
How we find the slow layer before touching it
- 1
Measure real visitors first
Field data from Search Console and the Chrome UX Report shows what customers actually experience on their phones, which is what Google uses. Lab scores come second.
- 2
Split server time from browser time
Time to first byte, cached and uncached, set against how long the browser spends downloading and running the page. The split tells us whether the fix lives at the host or in the theme.
- 3
Profile plugins and queries
On a staging copy we measure what each plugin adds in database queries, memory and front-end weight, and trace slow queries back to the code that runs them.
- 4
Fix by payoff, then re-measure
The heaviest layer first, each change tested on staging, then the same measurements again so the gain is a number rather than an impression.
What WordPress speed work changes
Server and PHP tuned
A current, supported PHP version, enough PHP workers for real traffic, a persistent object cache such as Redis where the host supports it, and a move to better hosting only when the numbers call for it.
Caching that agrees with itself
One page cache set up properly, a CDN for static files, and cart, checkout and account pages excluded at every layer so shoppers never see someone else's page.
Front-end weight cut
Plugin assets unloaded from pages that do not use them, heavy plugins replaced, images resized and converted, scripts deferred and fonts trimmed to the weights actually in use.
Database and background work cleaned up
Revisions capped, orphaned tables and transients cleared, oversized autoloaded options fixed at the source, and WP-Cron moved to a real server schedule so page views stop running background jobs.
Repair it, or start over?
The honest answer depends on the site, not on what we would rather sell.
Repair it when
- Server response is slow but the theme itself is reasonably lean
- Most of the weight comes from plugins that can be replaced or unloaded
- The site runs a block theme or another lightweight theme
- Mobile scores climb steadily as each fix lands
Rebuild it when
- The page builder alone holds mobile scores down after everything else is fixed
- Every page depends on dozens of plugins that cannot be removed
- The theme came from a marketplace bundle and no longer gets updates
- A redesign is due anyway, so speed should be built in from the start
When to bring someone in
If a caching plugin and compressed images have not moved the real-visitor numbers, the slow layer is deeper: the server, the database or the builder. Those fixes carry risk on a live site, a store especially, and belong on staging with someone who can read a query log. Call sooner if you run ads to slow pages. You are paying for visitors who leave before the page appears.
Which layer is slowing your WordPress site?
Send us the address. We will measure real-visitor speed, separate server time from page weight and tell you which fix pays first. Free, and the report is yours to keep.
Which of these sounds like you? (pick any)
Frequently asked
It fixes one layer. A page cache removes the time WordPress spends assembling the page, which matters when server response is the bottleneck. It does nothing for a five-megabyte page, a builder's markup or a dozen third-party scripts, which is why so many owners install one and see little change on mobile.
Less than what each plugin does. Forty small, well-built plugins can run faster than eight heavy ones. What counts is which plugins load code on the front end, which add queries to every request and which run background jobs. An audit measures that instead of counting.
Usually, yes. Newer PHP versions run WordPress faster, and older ones stop receiving security fixes. Test the change on staging first: an old plugin or custom code can fail on a newer version, which is the most common way a speed fix turns into an outage.
It is often part of it and rarely all of it. Builders add markup and assets that put a floor under how fast a page can be. Fix hosting, caching, plugins and images first. If mobile scores are still weak after that, the builder is what remains, and the choice becomes lighter templates or a rebuild.
Visitors get cached pages; the admin is never cached. A slow dashboard points at the server, the database or a plugin running heavy queries on every admin screen. The Heartbeat API and plugins that check for licenses or updates on each load are frequent culprits.
Server and caching changes often show in days on a speed test. Google's field data is a rolling 28-day average, so the Core Web Vitals report in Search Console catches up about a month after the fixes land. Plan for that lag before judging the work.
Keep reading
- ServiceWordPress Speed & OptimizationA slow site loses customers before they read a word. We tune WordPress for speed, stability, and search — measured, not guessed.
- ServiceSite Speed & Core Web VitalsA slow site loses the customer before they see your offer. We fix what makes pages crawl — heavy images, bloated scripts, blocked rendering — and prove it with numbers.
- ServiceFixing WordPress PluginsOne bad plugin can take your whole site down. We fix plugin conflicts, fatal errors, and security holes fast — and build custom plugins when the off-the-shelf ones fall short.
- ServiceWebsite Hosting & Maintenance PlansThe watching after launch: managed hosting, tested updates, backups that restore, security and uptime monitoring, and small edits done within a day, month to month.
- Hub · WordPress Repair Hub
- WordPress repair · Why Your Elementor Site Got Slow, Fragile and Hard to Edit
- WordPress repair · Divi Site Slow, Broken or Hard to Edit? A Repair Guide
- WordPress repair · WooCommerce Store Broken or Losing Sales? Where It Breaks and Why
- Marketing repair · Is Your Website Hurting Your Marketing? The Problems That Cost You Customers
- Fix · Slow Website on Shared Hosting
- Fix · WordPress Memory Exhausted Error
- Fix · Site Broke After a PHP Update
- Fix · 504 Gateway Timeout Error
- Guide · Why Is Your Website Slow? The Usual Suspects
- Guide · How to Improve Core Web Vitals
- Guide · How Fast Should a Website Load?