← Journal

I've spent years hosting and fixing slow WordPress sites, and the software itself is almost never the problem. Here's what actually is — and how to find it.

A few months back someone sent me their site with the message "WordPress is killing us, we need off it." Home page took just under six seconds to show anything. I put a stock WordPress install on the same server — default theme, no plugins — and it responded in about 200 milliseconds.

Same software. Same server. Thirty times faster.

I've been hosting and repairing sites like this since 2009, and this is the pattern almost every time. WordPress core is a fairly lean piece of software. What people call "WordPress being slow" is nearly always one of four other things wearing WordPress as a costume.

1. The hosting

This is the one nobody wants to hear, because the hosting was chosen for costing $6 a month.

On cheap shared hosting your site lives on a server with hundreds of other tenants, gets a tiny allocation of PHP workers, and usually has no object caching at all. Every visit rebuilds every page from scratch, in line behind everyone else's traffic.

The tell is time to first byte — how long the server thinks before it sends anything. You can see it in your browser's dev tools under the Network tab, on the very first request. Under 500ms is fine. If you're seeing two or three seconds before a single byte arrives, no amount of image optimization will save you, because the problem happens before your visitor's browser has anything to optimize.

2. The theme

Multipurpose themes are sold on screenshots, and to make every screenshot possible they ship everything: sliders, mega menus, three icon fonts, a page builder, animation libraries. You use maybe a tenth of it. Your visitors download all of it, on every page, forever.

Page builders make this worse in a sneakier way. The markup they generate is enormously nested — I've seen a heading wrapped in eleven layers of divs — and browsers genuinely take longer to lay out a heavy page like that, especially on the mid-range phones most real people use.

3. The plugins

People love to say "you have too many plugins," and it's a myth in the form it's usually said. I've seen sites run beautifully with forty plugins and crawl with eight. The count doesn't matter. The behaviour does.

The plugins that hurt you are the ones that load their scripts and styles on every page whether they're needed or not, run expensive database queries on every request, or phone home to some external service before the page can finish. One badly written plugin outweighs thirty polite ones.

The free Query Monitor plugin will show you exactly who the offenders are — which queries are slow and which plugin fired them. It's the first thing I install when someone hands me a slow site.

4. Everything that isn't WordPress at all

Chat widgets. Heat-mapping tools. Four different analytics snippets because nobody ever removed the old ones. A fonts service loading six weights when the design uses two. Autoplaying video in the hero.

None of this touches WordPress. You could rebuild the site in any framework you like and carry the same 2MB of third-party scripts with you, and it would be exactly as slow. I've watched it happen — an expensive replatform that changed nothing, because the marketing tags came along for the ride.

How to find your actual problem

Before spending anything, spend twenty minutes:

  1. Check time to first byte. Slow (over ~1s)? Your problem is hosting or something server-side. Start there.
  2. Run PageSpeed Insights and look past the score at the details — largest file sizes, third-party scripts, image weight. The score is a grade; the file list is the diagnosis.
  3. Install Query Monitor and load a few pages. Sort by slowest. The guilty plugin is usually obvious within minutes.

Most of the time, the fix is some combination of better hosting, a lighter theme, replacing one or two rude plugins, and deleting scripts nobody remembers adding. That's a repair, not a rebuild, and it's a fraction of the cost.

Sometimes it really is time to move on

I'll be honest about the other side: occasionally you do all of the above and the site is still not fast enough, because the business has outgrown what a theme-based WordPress front-end can do. That's a real situation — it's just far rarer than the replatforming pitch makes it sound. I wrote about how to tell which camp you're in if you suspect you're there.

And if the diagnosis points at hosting, that's a thing I do. Or send me your URL through the contact form — I'll tell you which of the four it is. It's usually not WordPress.

Next article

Migrating from proprietary email to Google Workspace or Microsoft 365: what you gain