Skip to content

Why is your site slow? The 7 causes I see most often

Almost every slow site has one of the same seven problems. Here is how to find out which one yours has.

Müslüm Ataş7 min read

A client wrote to me recently saying "the site won't open". It did open, in 6.4 seconds, on a phone over mobile data. At that speed most visitors leave before they see anything.

Slow sites almost always have one of the same seven problems. Let's go through them.

1. Huge images

This is by far the most common cause. A 4000-pixel, 3 MB photo straight off a camera is shown at 400 pixels on screen, but the browser still downloads all 3 MB.

Resize images to the size they're actually shown at and convert them to WebP. The same photo usually drops from 3 MB to around 120 KB with no visible difference.

2. A pile of plugins

Thirty to forty plugins on a WordPress site is common. Each one loads its own CSS and JavaScript, so twenty plugins can easily mean forty extra file requests per page.

Open the plugin list and ask of each one, "what would I lose without this?" Turn off every plugin you can't answer for, then measure what changed.

3. Font loading order

Four separate font families from Google Fonts, each in four weights. The browser hides the text until the fonts arrive, so the visitor stares at a blank screen.

Use one family and three weights at most. Serve the fonts from your own server and use font-display: swap so the text shows up without waiting.

4. Cheap shared hosting

On the cheapest shared plans, hundreds of sites share one machine. When a site next door gets busy, yours slows down.

Look at the server's first response time (TTFB). If it's above 600 milliseconds, the problem is most likely the server. Upgrading usually costs very little.

5. No caching

The page is built from scratch for every visitor, even though your home page probably changes once a day.

Set up page caching. On WordPress a plugin does it, and on custom-built sites it's set up on the server. This step alone often halves load time.

6. Third-party scripts

A live chat box, two analytics tools, a Facebook pixel, an embedded map, a cookie banner. Each one connects to another server and responds at a speed you can't control.

Measure what each script costs you. Remove the tools you don't actually use, and load the rest with async or defer so they don't hold up the page.

7. Redirect chains

From http to https, then to www, then to the final address. Three redirects use up half a second before the page even starts loading.

Redirect every variant to the final address in a single hop.

How to measure your own site

Enter your address into PageSpeed Insights and look at the mobile tab. The desktop score usually looks fine. Mobile is the one that counts, because most of your visitors arrive on a phone.

Watch three numbers. LCP (when the largest content appears) should be under 2.5 seconds, CLS (how much the page jumps) under 0.1, and INP (response to a click) under 200 milliseconds.

If those three are good, your site is fast. If not, working out which item on this list applies to you usually takes about ten minutes.

Share

Related posts