A slow website isn’t just annoying — it’s actively costing you money. Visitors leave, Google ranks you lower, and every pound you spend on advertising delivers less return. The good news: most performance problems have straightforward fixes once you know where to look.
How slow is too slow?
Google considers anything over 2.5 seconds for the Largest Contentful Paint (LCP) to be a poor experience. For context, most users expect a page to load in under 2 seconds, and studies consistently show that conversion rates drop sharply after 3 seconds.
You can test your site right now using Google PageSpeed Insights. Enter your URL, wait for the analysis, and focus on the “Performance” score and Core Web Vitals metrics.
The most common culprits
1. Cheap shared hosting
This is the single biggest factor for most small business websites. If you’re paying £3-5/month for hosting, your site shares a server with hundreds of other websites. When those other sites get traffic, yours slows down.
The fix: Upgrade to quality hosting with dedicated resources. It doesn’t have to be expensive — managed cloud hosting starts around £20/month and the performance difference is dramatic. We cover this in detail in our guide on shared vs managed hosting.
2. Unoptimised images
This is the most common technical issue. A single unoptimised photograph can be 5-10 MB — larger than the rest of your page combined. Multiply that by a gallery of product photos and you’ve got a site that takes 15 seconds to load on mobile.
The fix:
- Resize images to the actual display size. A hero image doesn’t need to be 6000px wide — 1600px is typically sufficient.
- Use modern formats like WebP instead of JPEG or PNG. WebP delivers the same quality at 25-35% smaller file sizes.
- Compress appropriately. Tools like TinyPNG or Squoosh can reduce file sizes by 60-80% with minimal visible quality loss.
- Lazy load images below the fold so they only load when the user scrolls to them.
3. Too many plugins (WordPress sites)
A fresh WordPress installation is relatively fast. But add 20-30 plugins — as many small business sites do — and each one adds its own CSS, JavaScript, and database queries. The cumulative effect is devastating.
The fix:
- Audit your plugins. Deactivate them one by one and test your page speed after each. You’ll likely find several that add no real value.
- Replace heavy plugins with lightweight alternatives or custom code. A contact form doesn’t need a 500KB plugin.
- Remove inactive plugins entirely. Deactivated plugins still pose security risks and can still load assets.
4. No caching
Without caching, your server rebuilds every page from scratch for every visitor. That means database queries, template rendering, and asset compilation happening hundreds of times per day for the same content.
The fix:
- Browser caching — Tell browsers to store static assets (images, CSS, fonts) locally so return visitors load instantly.
- Server-side caching — Cache the fully rendered HTML so the server doesn’t regenerate pages unnecessarily.
- CDN caching — Use a Content Delivery Network like Cloudflare to serve cached copies from servers closest to your visitors. A user in Edinburgh shouldn’t wait for a response from a server in Virginia.
5. Render-blocking resources
CSS and JavaScript files in your page’s <head> block the browser from displaying anything until they’ve fully loaded. If you have large CSS frameworks and multiple JavaScript libraries loading synchronously, the user stares at a white screen.
The fix:
- Defer non-critical JavaScript so it loads after the page content is visible.
- Inline critical CSS — The styles needed for the initial viewport should be embedded directly in the HTML.
- Remove unused CSS — If you’re using a framework like Bootstrap but only using 10% of its classes, you’re shipping 90% dead weight.
6. No content delivery network (CDN)
Without a CDN, every request travels to your origin server. If your server is in London and your visitor is in Aberdeen, that’s a round trip of latency for every asset — HTML, images, CSS, fonts.
The fix: A CDN like Cloudflare (which has a free tier) caches your content on servers worldwide. When someone visits your site, they’re served from the nearest location. For a Scotland-based business serving UK customers, this alone can cut load times significantly.
7. Excessive third-party scripts
Analytics, chat widgets, social media embeds, font services, ad trackers, cookie consent tools — each one adds HTTP requests, JavaScript execution time, and often makes requests to external servers you don’t control.
The fix:
- Audit third-party scripts using your browser’s DevTools Network tab. Sort by size and loading time.
- Remove anything you’re not actively using. That chat widget you installed six months ago and never check? It’s slowing every page load.
- Load third-party scripts asynchronously so they don’t block page rendering.
- Self-host fonts instead of loading them from Google Fonts or other services when possible.
Quick wins you can do today
- Run PageSpeed Insights and note your scores.
- Compress your images — even doing this one thing can dramatically improve load times.
- Enable a CDN — Cloudflare’s free plan takes 15 minutes to set up.
- Remove unused plugins — Be ruthless. If it’s not actively serving your business, remove it.
- Check your hosting — If you’re on shared hosting at £5/month and your site takes 5+ seconds to load, the hosting is likely the bottleneck.
When to get professional help
If your site scores below 50 on PageSpeed Insights, or if you’ve tried the quick wins above and haven’t seen improvement, it may be time for a professional performance audit. Sometimes the most cost-effective solution is a rebuild on modern, lightweight technology rather than patching an overloaded WordPress installation.
At GrantOps, we build sites on modern frameworks that score 90+ on Lighthouse performance tests, running on managed AWS infrastructure that delivers sub-second load times. If your current site is holding your business back, get in touch for a free performance assessment.