The 7-Point WordPress Performance Audit I Run Before Recommending Any Hosting Change
Disclosure: This post contains affiliate links. If you sign up for a hosting plan through one of them, I may earn a commission at no extra cost to you. I only recommend tools and hosts I’d actually put in front of a client.
If your WordPress site feels slow, the instinct is almost always the same: blame the host, switch hosts, hope it fixes itself. Sometimes that’s the right call. Most of the time, it isn’t — and moving a slow site to a faster host just gets you a slightly-less-slow version of the same problems.
Before I’ll even talk to a client about migrating hosting, I run the same seven-point audit. It takes about an hour, and it tells you whether hosting is actually your bottleneck or whether you’re about to pay more money for the same site.
1. Theme and page-builder bloat
A lot of “slow WordPress site” complaints start with a theme or builder (certain page-builder plugins are the most common offenders) loading dozens of stylesheets and scripts on every single page, including ones that have nothing to do with what’s on that page. Check your theme’s options for unused modules, and check whether your builder is loading its full asset library site-wide instead of only on the pages that need it.
2. Image weight and format
This is the single most common fix with the biggest visible payoff. Uncompressed, full-resolution images straight out of a phone or stock library are routinely 5-10x larger than they need to be for web display. Two things matter here: converting to WebP (or AVIF where supported) and making sure images are actually sized for where they’re displayed, not just visually shrunk with CSS while the full file still downloads. Add lazy-loading for anything below the fold.
3. Plugin count and plugin quality
Plugin count matters less than people think — plugin quality matters a lot. One poorly coded plugin that fires database queries on every page load will hurt you more than ten lightweight, well-maintained ones combined. Audit for: plugins you installed once and forgot about, plugins with no updates in over a year, and anything duplicating a function your theme or another plugin already handles.
4. Caching — both layers
Page caching (serving a pre-built static version of a page instead of rebuilding it from PHP and the database on every visit) is table stakes at this point. The layer people skip is object caching, which speeds up the database queries that still have to run even on a cached page — login states, dynamic widgets, WooCommerce inventory, that kind of thing. If your host doesn’t offer object caching (Redis or Memcached) at the server level, that’s a real limitation, not a plugin-fixable one.
5. Database cleanup
Post revisions, expired transients, orphaned tables left behind by plugins you uninstalled years ago — these accumulate quietly and slow down every query that touches that table. This is a five-minute fix with a plugin or a direct query, and it’s one of the most neglected items on this list.
6. Core Web Vitals, in plain English
Three numbers Google actually cares about for ranking and that real visitors actually feel:
- LCP (Largest Contentful Paint) — how long until the biggest visible thing on the page (usually a hero image or headline) finishes loading. This is almost always an image-weight or server-response problem.
- CLS (Cumulative Layout Shift) — how much the page jumps around as it loads (ads or images popping in without reserved space). Annoying for users, penalized by Google.
- INP (Interaction to Next Paint) — how fast the page responds when someone actually clicks or taps something. This is usually a JavaScript problem, not an image problem.
Knowing which of these three is actually failing tells you which of items 1-5 above to prioritize. Most sites fail LCP first.
7. Server-level factors — where hosting actually enters the picture
This is the one item on the list that no plugin or cleanup can fix, because it’s about the infrastructure underneath the site: server response time (TTFB), PHP version, whether you’re on shared resources competing with hundreds of other sites, and whether object caching and a CDN are available at all. If you’ve genuinely worked through items 1-6 and you’re still hitting a ceiling, this is the point where switching hosts is the right move — not before.
For WordPress specifically, Cloudways is a reasonable, lower-cost entry point into managed cloud hosting if you’re moving off shared hosting for the first time. If you’ve outgrown that and want a host that handles WordPress-specific caching, staging, and security out of the box, Kinsta is the one I point most small-business and association sites toward next.
The actual order of operations
Run items 1-6 first. They’re free or close to it, and they fix the majority of “my site is slow” complaints without touching your hosting bill at all. Only after that should hosting enter the conversation — and when it does, the question isn’t “which host is fastest” in the abstract, it’s which host fixes the specific bottleneck items 1-6 couldn’t.
Next up: a plain breakdown of what actually changes between shared hosting and managed WordPress hosting — and when paying more for “managed” is worth it versus when it’s just a nicer-sounding way to pay more for the same thing.
