Why Is My WordPress Site Slow? 9 Fixes We Use

Most slow WordPress sites come down to a short list of causes: underpowered hosting, an outdated PHP version, missing caching, oversized images, too many plugins or a heavy page builder, and third-party scripts. The fix is to measure first, then work through those causes in order, starting with the server and ending with the page itself. Below is that order, step by step. It’s the same kind of work that’s built into our WordPress maintenance plans.
First, figure out what kind of slow you have
“Slow” means different things, and each has different causes:
- The front end is slow for visitors. Pages take several seconds to show content, especially on phones.
- The server is slow to respond. You click and nothing happens for a second or two before anything loads. That’s usually hosting, PHP, or the database.
- The WordPress admin is slow. Editing pages, saving posts or loading the dashboard drags, even if the public site seems fine. That’s usually plugins, the database, or the server.
Write down which one you’re dealing with before you change anything. It will save you from “fixing” the wrong thing.
Fix 1: Measure before you touch anything
Run your homepage and one or two important inner pages (a service page, a product page, your contact page) through Google’s PageSpeed Insights. Look at two things:
- Field data (“Discover what your real users are experiencing”). This comes from real Chrome visitors and is what Google uses for Core Web Vitals. Google’s “good” thresholds are Largest Contentful Paint under 2.5 seconds, Interaction to Next Paint under 200 milliseconds, and Cumulative Layout Shift under 0.1, measured at the 75th percentile of visits.
- Lab data (the performance score). Useful for testing changes, but it’s a simulation, so don’t panic over a single number.
Save screenshots of both mobile and desktop results. You’ll want a before-and-after to know which fixes mattered.
Fix 2: Check your hosting and server response time
If PageSpeed flags “Reduce initial server response time,” or every page feels sluggish no matter how simple it is, start with hosting. Cheap shared hosting puts your site on a server with many others, and when a neighbor gets busy, you slow down.
Managed WordPress hosting is built for this. Server-level caching, a CDN, and resources tuned for WordPress usually do more for speed than any plugin. We host client sites on WP Engine as an agency partner for exactly this reason; you can read more on our WordPress hosting page or in our comparison of managed vs. shared WordPress hosting.
Fix 3: Update PHP
PHP is the language WordPress runs on, and newer versions are noticeably faster. WordPress.org currently recommends PHP 8.3 or greater, along with MySQL 8.0+ or MariaDB 10.11+. Older versions may still run, but versions past end of life no longer get security fixes.
Most hosts let you change the PHP version in the control panel. Test on a staging copy first, because an old plugin or theme can break on a newer PHP version. That’s one reason we test every update on staging before it goes live.
Fix 4: Turn on caching (the right kind)
Without caching, WordPress builds every page from scratch for every visitor: it runs PHP, queries the database, and assembles the HTML. Caching saves the finished page so the next visitor gets it instantly.
- Page caching stores the full HTML. On managed hosts like WP Engine, this is handled at the server level, and adding a second caching plugin on top can cause conflicts.
- Object caching stores database query results, which helps busy sites, WooCommerce stores, and slow admin dashboards.
- Browser caching and a CDN let returning visitors and far-away visitors load files from a nearby copy.
If you’re on budget hosting, a well-configured caching plugin is the single biggest free improvement you can make.
Fix 5: Shrink and properly size your images
Images are usually the heaviest thing on a page. The common problems:
- A 4,000-pixel photo straight off a phone uploaded into a spot that displays at 800 pixels.
- PNGs used for photos, where JPEG or WebP would be a fraction of the size.
- A big hero image or slider at the top of the page, which is often the element that sets your Largest Contentful Paint.
Resize before uploading, convert to WebP where your setup supports it, and make sure the main hero image is not lazy-loaded. WordPress lazy-loads images by default, which is good for images further down the page but can slow the first one.
Fix 6: Audit your plugins
The number of plugins matters less than what they do. One poorly built plugin that loads scripts on every page or runs heavy database queries can slow a site more than twenty light ones.
A practical way to work through them:
- List every plugin and note what it’s for. Deactivate and delete anything nobody can explain.
- Look for overlap: two SEO plugins, two form plugins, a slider nobody uses.
- Use a diagnostic plugin like Query Monitor on a staging site to see which plugins add the most database queries and load time.
- Replace heavy plugins with lighter options or a few lines of custom code where it makes sense.
Do this on staging, not the live site, so a deactivated plugin doesn’t break a form or checkout your customers are using.
Fix 7: Look hard at your theme and page builder
Multipurpose themes and drag-and-drop page builders are convenient, but many load large CSS and JavaScript files on every page whether they’re used or not. If the site is otherwise healthy and still slow, the theme is often the ceiling.
You don’t always need a rebuild. Many builders have performance settings (loading assets only where used, disabling unused widgets) that help. But if you’re planning a redesign anyway, a lightweight custom theme is worth considering; that’s the approach behind our custom WordPress development.
Fix 8: Trim third-party scripts
Chat widgets, heatmaps, social feeds, embedded videos, booking tools, multiple analytics and ad tags: each one adds requests to servers you don’t control. Together they’re often the main reason for a poor Interaction to Next Paint score.
Go through Google Tag Manager and your theme settings and ask, for each script, “Is anyone using this data?” Remove what isn’t used. For videos, use a lightweight preview image that loads the player only when clicked.
Fix 9: Clean up the database and fix a slow admin
If the dashboard is the slow part, the database and background tasks are usual suspects:
- Post revisions, spam comments and transients pile up over years. Cleaning them out shrinks the database.
- Autoloaded options left behind by deleted plugins load on every single page request.
- WP-Cron runs scheduled tasks when visitors load pages. On busier sites, moving it to a real server cron job keeps it from slowing visitors down.
- The Heartbeat API sends frequent requests while you’re logged in, which can bog down the admin on weaker hosting.
Back up before any database cleanup. Always.
Keeping it fast after you fix it
Speed isn’t a one-time project. Every plugin update, new page, marketing script and oversized image can chip away at it. That’s why speed checks belong in ongoing maintenance: our Managed plan ($325/mo) includes monthly updates tested on staging and a monthly report, and our Priority plan ($525/mo) adds quarterly speed and Core Web Vitals checks plus 3 hours of dev and content time to act on what we find. See the full list in our post on what we do every month in WordPress maintenance.
Run the same PageSpeed tests from Fix 1 again once you’re done, and keep both sets of screenshots. Comparing them shows which fixes made the biggest difference on your site.
Frequently asked questions
Why is my WordPress site so slow all of a sudden?
A sudden slowdown usually follows a change: a plugin or theme update, a new plugin, a new marketing script, a traffic spike, or a problem at your host. Check what changed most recently, review your host’s status page, and test with recently added plugins turned off on a staging copy.
Why is my WordPress admin so slow when the site seems fine?
The front end is often served from cache, but the admin never is. A slow admin points to heavy plugins, a bloated database, autoloaded options, WP-Cron jobs, or limited server resources.
Will a caching plugin fix a slow WordPress site?
It helps with page generation time, but it won’t fix oversized images, heavy third-party scripts, or a bloated theme. On managed hosts with server-level caching, an extra caching plugin can conflict with it, so check with your host first.
Does hosting really affect WordPress speed?
Yes. Hosting sets your server response time, which every other part of the page waits on. Moving from crowded shared hosting to managed WordPress hosting is often the biggest single improvement.
How fast should a WordPress site load?
Use Google’s Core Web Vitals as the target: Largest Contentful Paint within 2.5 seconds, Interaction to Next Paint of 200 milliseconds or less, and Cumulative Layout Shift of 0.1 or less, for at least 75% of visits.
Want us to find out why your site is slow?
If you’d rather not spend a weekend in PageSpeed reports, we can do it for you. Our plans start at $125/mo for managed WP Engine hosting with free migration, and our Managed and Priority plans include ongoing updates, checks and dev time. Need one-off help? On-demand WordPress work starts at $200/hour.
Rob Carroll
Founder of Mobilize Cloud
Rob studied computer science at Ohio State and started Mobilize Cloud in January 2012. Today the team manages more than 60 WordPress sites for Columbus-area and national clients. More about Rob