Why is my website slow? The usual causes
Most slow sites have one or two of these. Rarely all of them.
- Images: photos uploaded straight from a camera or phone, far bigger than the screen needs, in old formats.
- Scripts and tags: chat widgets, analytics, ad pixels, heatmaps, cookie banners and social embeds, each loading its own code.
- Hosting: cheap shared servers that respond slowly, especially when busy, and no content delivery network.
- No caching: the server builds every page from scratch for every visitor.
- Theme or page builder: heavy themes and drag-and-drop builders load a lot of code you never use.
- Plugins: each one adds code and database queries, and some conflict.
- Fonts and video: several web fonts, or a video that autoplays at the top of the page.
How do you find out what's slowing your site down?
Use Google's free tools. Follow these steps.
- Run your home page and your most important pages through PageSpeed Insights, on mobile first.
- Look at the field data at the top: that's how real Chrome users experienced the page, where Google has enough data.
- Check the three Core Web Vitals: loading (LCP), responsiveness (INP) and visual stability (CLS). PageSpeed Insights tells you if each passes.
- Scroll to the diagnostics: they name the largest image, the slowest scripts and the server response time.
- Open Search Console's Core Web Vitals report to see which groups of pages have problems across the site.
- Write down the top three issues by size. Fix those first; the rest rarely matter as much.
What do Core Web Vitals mean?
They're Google's measures of how a page feels to use. Largest Contentful Paint is how quickly the main content appears. Interaction to Next Paint is how quickly the page responds when someone taps or clicks. Cumulative Layout Shift is how much things jump around while it loads.
Google uses them as part of how it judges page experience. More to the point, they're the things visitors notice. Our guide to Core Web Vitals goes into each one.
Is it the hosting or the website?
Look at the server response time in the PageSpeed Insights diagnostics. If the server takes a long time to start sending the page, hosting or caching is the likely culprit. If the server responds quickly but the page still crawls, the problem is in the site: images, scripts or the theme.
Moving a heavy site to faster hosting helps, but only so much. A slow site on fast hosting is still a slow site.
When is a rebuild cheaper than fixing a slow site?
When the slowness is built in: a heavy page builder, dozens of plugins, or a theme that loads everything on every page. You can patch that for a while, but each fix gets harder. A modern build with clean code and static hosting starts fast and stays fast.
