Braaf
New AI CMS: farewell dashboards Say hello

[email protected] · Braaf. · KvK 99996251

All articles

Improving website speed: what actually works?

Hosting & techniek

Every millisecond counts

Leaner files, fewer requests — speed is in the details.

Google it and you get lists. "Ten tips to make your website faster!" Install a caching plugin. Compress your images. Use a CDN. Not wrong, but they're plasters. The real speed gains are in the foundation: how your server is configured, how your code is written, and how your assets are loaded. Let's talk about that.

The server: where it all begins

Choose the right hosting

Everything below is irrelevant if your server itself is the bottleneck. A €5/month hosting package at a bulk provider undermines every optimisation. Start at the foundation: a server with reserved resources and a decent configuration.

NGINX over Apache

Apache is the default at many hosting providers. NGINX is faster at serving static files and better at handling many simultaneous connections. The difference is measurable: NGINX serves the same page in a fraction of the time.

Server-side caching

A page rebuilt on every visit by PHP and the database is always slower than a page that's ready as a static HTML file. NGINX FastCGI Cache, Redis or Varnish — server-side caching is the biggest single step you can take.

PHP version

Every new PHP version is faster than the last. PHP 8.x is up to twice as fast as PHP 7.0. Check your version. Upgrade if you can. It takes five minutes and delivers measurable speed.

The frontend: what the browser has to load

Optimise images

Images account for 50-70% of page size. Three steps:

  • Compress: Tools like ShortPixel, Imagify or Squoosh.
  • Right format: WebP or AVIF instead of PNG/JPEG. Smaller file, same quality.
  • Lazy loading: Off-screen images only load when they come into view. Standard in modern browsers with loading="lazy".

Minimise CSS and JavaScript

Every kilobyte counts. Minify your CSS and JS (remove whitespace, comments, unused code). Bundle where possible. Load non-critical scripts with defer or async. Remove what you don't use — that jQuery library you added three years ago but no longer call anywhere? Get rid of it.

Render-blocking resources

If the browser has to wait for a CSS or JS file before it can draw anything, that's called render-blocking. Put critical CSS inline in the <head>. Load the rest asynchronously. Move scripts to the end of the <body> or use defer.

Web fonts

Loading fonts takes time, especially when they come from Google Fonts (extra DNS lookup, extra HTTP request). Self-host your fonts, use font-display: swap to make text visible right away, and limit the number of variants.

Content Delivery Network (CDN)

A CDN serves your files from a server close to your visitor. Your visitor in Amsterdam gets your images from a server in Amsterdam, not from a server in Frankfurt or New York. Cloudflare is free and effective. BunnyCDN is affordable and fast. For most websites a CDN is a quick win.

Measuring and monitoring

Google PageSpeed Insights

The standard. Measures LCP (Largest Contentful Paint), FID/INP (Interaction to Next Paint) and CLS (Cumulative Layout Shift). Score below 90? There's work to do.

GTmetrix

More detailed than PageSpeed. Shows exactly which files take longest to load, which scripts block, and where the waterfall chart stalls.

WebPageTest

For the serious optimiser. Test from different locations and connections. Compare before and after. The filmstrip view is worth its weight in gold.

Real User Monitoring

Synthetic tests (PageSpeed, GTmetrix) are useful, but real user data is better. Google Search Console shows Core Web Vitals from real visitors. That's the truth.

The order of attack

If you don't know where to start:

  • Server: Upgrade hosting, enable caching
  • Images: Compress and convert to WebP
  • Scripts: Remove unused JS/CSS, defer the rest
  • Fonts: Self-host, limit variants
  • CDN: Enable Cloudflare or an alternative
  • Measure again: Compare the results

In that order you tackle the biggest gains first.