Why Is My Website So Slow?
The real reasons sites load slowly — and which fixes actually move the needle. No generic 'compress your images' advice.
If your site doesn't load in a click, Google demotes you, visitors hit back, and you lose sales. That part's settled. The real question: what's slowing it down? Almost always, it's more than one thing at once. Compressing images alone won't fix it. Here's the actual breakdown.
Measure first — don't guess
Open these two tools:
- PageSpeed Insights (pagespeed.web.dev) — Google's own tool, reports on Core Web Vitals which feed straight into ranking
- GTmetrix — detailed waterfall, shows you exactly which file took how long
If your score is below 50, expect a 1-2 day fix. Between 70-80, maybe a few hours of tweaks.
1. Cheap hosting kills everything else
If you're paying €3/month for shared hosting, you can't expect Lighthouse 100. Budget shared hosts give you 800-2000ms server response times — that's two seconds gone before your page even starts loading.
What works: Hetzner (€5-20/month), DigitalOcean, Vercel, Cloudflare Pages. Any of these get TTFB under 100ms. The site is functionally 3-4x faster on day one.
2. Images — the silent killer
If you uploaded 4MB phone photos directly to WordPress, that's almost certainly your bottleneck. A modern site:
- Serves images as WebP or AVIF (1/4 the size of JPG)
- Resizes images to display dimensions (no 1920px image in a 600px container)
- Lazy-loads anything below the fold
- Uses
srcsetto send mobile a smaller version
WordPress: install EWWW Image Optimizer or ShortPixel. Custom site: should already do this.
3. Plugin bloat (WordPress only)
If you've got 30+ active plugins, every page loads CSS and JS from all of them — whether they're used or not. Query Monitor plugin shows you which plugins are eating resources. Usual suspects:
- Elementor / WPBakery page builders — adding 200-500KB of JS
- Slider Revolution — almost every theme bundles it; 300KB+
- Comment plugins (Disqus, Jetpack Comments)
- Stacks of half-used SEO plugins
Practical rule: if you're not using a plugin, delete it — deactivating doesn't help.
4. No CDN, no cache = every visitor hits your origin
Without a CDN, a request from a German visitor to a server in Frankfurt is fine, but to a server in Istanbul takes 200ms. Without cache, every request rebuilds the page from scratch. Cloudflare's free plan solves both in 10 minutes:
- Sign up at cloudflare.com
- Add your domain, point your DNS at it
- Leave default cache rules
Cached pages don't hit your origin and load from anywhere in the world in 50-100ms.
5. Too much JavaScript
Modern sites carry an average of:
- Google Analytics + Tag Manager
- Meta Pixel
- Hotjar
- Live chat (Intercom, Tawk.to)
- Various ad pixels
That's 500KB-1MB of JavaScript just in tracking. Fix it by:
- Lazy-loading non-critical scripts (don't load them until interaction)
- Consolidating tracking through Google Tag Manager
- Removing widgets you don't actually use
Impact ranking — what to fix first
For a typical slow site, rough impact distribution:
- Hosting — 30%
- Images — 25%
- JavaScript bloat — 20%
- No cache/CDN — 15%
- Plugin overhead — 10%
Work down the list and most sites go from a Lighthouse 30 to 90 in two weeks.
Next step
Measured your site, found the bottleneck, but don't have time or technical depth to fix it? Get in touch. 30-minute audit, no charge — we'll give you a prioritized list of what's slowing you down. Whether you fix it with us or with someone else is up to you.