Why is my website slow?
The real causes of a slow website, in the order they usually matter, why images are almost always the culprit, and how to find out what is actually slowing yours down.
A slow website is usually caused by one of five things: oversized images, too many scripts and third-party tools, cheap or overloaded hosting, a heavy theme or page builder, or no caching. Images are the most common single cause by a wide margin. You can find out which applies to your site in a few minutes with a free speed test, and most of the fixes are far less technical than people expect.
Speed matters for two reasons that pull in the same direction. Visitors leave slow sites, and the drop-off is steep once you pass a few seconds. And search engines treat speed as a ranking factor, so a slow site is both losing the visitors it gets and getting fewer of them. Here is what actually causes it.
Start by measuring, not guessing
Before changing anything, run your site through a free speed test such as PageSpeed Insights or GTmetrix. This matters because the thing you assume is slow is often not the thing that is slow, and because these tools name the specific files causing the delay.
Two things to know when reading the results. Test the pages that matter, not just the home page, since a heavy gallery or a busy service page is often worse. And pay attention to the mobile score separately, because mobile is usually where the real problem lives and where most of your visitors are.
Images, the usual culprit
If your site is slow, look here first. Photographs straight from a phone or camera are often several megabytes each, sized for print rather than screen. A page with ten of those is asking a visitor to download something the size of a small application before they see anything.
Three fixes, in order of effect. Resize images to the dimensions they are actually displayed at, because a 4000 pixel wide photo shown in a 800 pixel space is downloading five times more data than it needs. Compress them, which typically cuts file size dramatically with no visible quality loss. And use a modern format such as WebP, which is substantially smaller than JPEG at the same quality.
This one change fixes more slow sites than everything else on this list combined.
Too many scripts and third-party tools
Every analytics tag, chat widget, social feed, tracking pixel, review embed, and font loader adds requests and delay. Individually they seem harmless. Fifteen of them is a slow website.
Third-party scripts are particularly costly because you do not control them, so your page speed becomes dependent on somebody else's server. Audit what is actually installed, remove anything that is not earning its place, and be sceptical of tools added for a campaign two years ago that nobody switched off.
Hosting
Cheap shared hosting puts your site on a server with a large number of other sites, all competing for the same resources. It works until it does not, and the symptom is a site that feels sluggish for no visible reason.
Two signals that hosting is your problem: the site is slow even on pages with almost nothing on them, and speed varies noticeably at different times of day. If both are true, upgrading the hosting will do more than any amount of image optimisation.
A heavy theme or page builder
Off-the-shelf themes are often built to demonstrate every possible feature, which means loading code for sliders, portfolios, shops, and animations you will never use. Visual page builders add further weight, because the flexibility they give you is paid for in the markup they generate.
This is the hardest item to fix, since it usually means changing theme or rebuilding. Worth knowing though, because it explains why some sites stay slow no matter how many images get compressed.
No caching
Without caching, your server rebuilds every page from scratch for every visitor. Caching stores a finished copy and serves that instead, which is dramatically faster and is usually a matter of enabling something rather than building anything.
A content delivery network does a related job for visitors who are geographically distant, serving your files from somewhere physically closer to them. Both are among the cheapest speed wins available.
The order to work through it
Measure first. Then fix images, because that is where the biggest win almost always is. Then remove scripts you do not need. Then enable caching. Then look at hosting. Then, only if you are still slow, consider the theme.
That sequence is deliberate: the first three cost nothing but attention, and they resolve the majority of slow sites. The expensive interventions are last because they are usually unnecessary.
What good looks like
Aim for a page that becomes useful within about two and a half seconds on a mobile connection, and treat anything past four seconds as a problem worth money and time. Do not chase a perfect score. Scores are a diagnostic tool, not the goal, and the last few points are usually far more expensive than they are worth. What matters is whether the site feels immediate to a real person on a real phone.
See also: Core Web Vitals explained, Technical SEO checklist for 2026, Why is my website not showing up on Google.