In almost every slow website we have looked at, the biggest culprit was the images. Not the hosting, not the plugins — the images.
The good news: that is also the quickest thing to fix.
Where the problem is
A photo from a modern phone is 4,000 pixels wide and weighs 4 MB. You upload it as it is, and the website shows it in a box 800 pixels wide.
The browser still downloads the whole thing — four megabytes for something displayed five times smaller.
Three things, in order of importance
1. Reduce the dimensions before uploading. If the image is shown at 800 pixels, there is no reason for it to be 4,000. Double that for high-resolution screens — so 1,600 is enough.
That alone cuts 80% of the weight.
2. Compress. A JPEG at quality 80 looks the same as one at quality 100, and weighs three times less. You only see the difference if you put them side by side and go looking for it.
3. Use WebP. A modern format, 25–35% smaller than JPEG at the same quality. Every browser has supported it for several years.
Tools
Before uploading: squoosh.app — free, in the browser, nothing is uploaded to someone else’s server. Drag an image in, see the difference live, download.
In WordPress: a plugin like ShortPixel or Imagify processes images automatically, including the ones already uploaded.
Lazy loading
An image at the bottom of the page doesn’t need to download before the visitor gets there. That is called lazy loading, and WordPress has done it automatically since version 5.5.
With one exception: the first big image at the top must not be lazy-loaded. That is what Google measures as the “largest element” — delaying it makes the score worse.
The detail everyone forgets
Specify the width and height of every image in the code. Without them the page “jumps” while loading — the text shifts when the image appears.
Google measures that jumping as a separate score, and visitors hate it — especially when they end up tapping the wrong button.
Checking
Open pagespeed.web.dev and enter your address. If the recommendations say “Properly size images” or “Serve images in next-gen formats” — you know where to start.
Speed starts with the server. NVMe drives and caching in every plan.
Web hosting →