Why is my website slow? The usual causes

“The website is slow” can mean three quite different problems. The server may take too long to start sending the page. The page may be so heavy that it takes ages to arrive. Or it may arrive quickly and then keep the phone busy running scripts, so nothing responds when you tap it. Each has different causes and a different fix, so the first job is working out which one you have.

First, find out which kind of slow

Open PageSpeed Insights, enter your address and look at the mobile results, since that’s how most of your visitors arrive and how Google judges the site. Three things tell you most of what you need:

  • Server response time. If the report flags a slow initial server response, or the time to first byte is over about 0.8 seconds, the problem starts before the page does. Nothing on the page itself can make up for it.
  • Largest Contentful Paint. The report names the element it measured, usually the main image or heading. If that element is a huge photo, you’ve found a big part of the problem.
  • Total page weight and requests. A page of several megabytes, or one making a hundred or more requests, is heavy wherever it’s hosted.

If the site has enough visitors, the top of the report also shows how it performs for real people over the last 28 days. That’s the part Google uses, and the part worth improving.

Our free health check runs the same phone speed test, plus server response time

The usual causes

1. Slow hosting, or no page caching. Most WordPress pages are built from scratch for every visit: PHP runs, the database is queried and the page is assembled. Page caching saves the finished page and hands it straight to the next visitor. Without it, or on overloaded shared hosting, every visit waits for the server first.

2. An old PHP version and a cluttered database. Newer PHP versions run WordPress noticeably faster. And years of removed plugins leave settings behind in the database that are still loaded on every single page.

3. Oversized images. A photo straight from a phone or camera can be 4 or 5 MB, shown at a fraction of that size. Resizing images to the size they’re displayed at, serving modern formats like WebP, and loading images further down the page only when they’re needed often halves the page weight on its own. The main image at the top is the exception: load that one straight away.

4. A heavy theme or page builder. Some themes and builders load the code for every feature they offer on every page, whether the page uses it or not. They’re convenient to edit with, but the visitor pays for all of it.

5. Too many third-party scripts. Chat widgets, several analytics tools, heatmaps, social feeds, embedded videos and advertising each add their own files, and often files of their own after that. They’re easy to add and easy to forget about.

6. Plugins that load everywhere. A contact form plugin that loads its scripts on every page, not just the contact page, slows down the whole site for the sake of one page.

7. Web fonts. Several families in several weights, loaded before any text is allowed to appear, can leave a visitor staring at a blank page on a slow connection.

8. A server far from your visitors. If most of your visitors are in Ghana and your server is in the United States, every request crosses an ocean and back. A CDN keeps copies of your files close to your visitors.

9. A page that won’t sit still. Not slow exactly, but it feels that way: adverts, embeds and banners that load late and push the content down just as someone goes to tap. Reserving space for them fixes it.

Core Web Vitals, minus the jargon

What to fix first

Start with the server. Until the first byte arrives quickly, every other improvement is fighting against a head start the page never gets. Page caching and a current PHP version are usually the cheapest wins on the whole list.

Then work down the page: the main image, then images in general, then scripts, then fonts. Measure after each change rather than making ten at once, so you know what actually helped, and try to measure on a real phone as well as in the lab tools.

And be wary of fixes that promise everything at once. Installing a third caching plugin on top of two others is a common way to make a site slower, not faster.

Fast on the connection your visitors really have

If you’d rather hand it over, website speed optimization is one of the things we do: we measure where the time goes, fix the biggest causes first, and show you the before and after on the same tests.

One useful email a month

Practical tips on keeping a website fast, secure and easy to find. No spam, and you can unsubscribe any time.

We’ll email you a link to confirm. See how we handle your data in our privacy policy.

Keep reading