Website speed optimization

Slow pages have a specific cause. We find it and fix it, not tune ten small things and hope.

We took our own site's mobile Lighthouse score from 56 to 75 and can say exactly which resources moved it, and which part of the remaining gap is structural.

What this is

A Lighthouse score is a lab measurement: one page, loaded once, on a simulated connection. It's a useful coarse signal, but it isn't what Google actually uses for its Core Web Vitals ranking factor, which comes from field data, real visitors on real networks and real devices, aggregated over time. The two disagree more often than people expect, usually because a lab run on a fast machine hides a problem that a visitor on an average phone on mobile data feels directly. Fixing a site's speed starts with knowing which of the two is actually the problem.

We ran this on our own site. Mobile Lighthouse moved from 56 to 75, and the causes were specific: a hero video that loaded and started playing before anything else on the page had a chance to render, a leftover icon font pulled in by a component nobody was using any more, and a chunk of the remaining gap that turned out to be structural, coming from the page export format itself rather than anything on the page we could compress or defer. That last part is the piece nobody tells you in a sales call: some of a score's ceiling is set by the platform underneath it, and no amount of image optimization moves past that ceiling.

The fix is always ordered the same way: measure first, rank what's actually holding the number down by weight rather than by what's easiest to touch, fix the largest thing, remeasure, and repeat until what's left is either gone or structural. Skipping the ranking step is the most common way this work gets wasted, spending a week compressing images that account for eight percent of the page weight while a single autoplaying video accounts for sixty.

There's a ceiling worth being honest about upfront. A real page with real content, ad scripts and tracking pixels on it does not get to 100, and a page that does usually got there by removing the things that make it a real page. The realistic target is the highest score the page can hit with what it actually needs to do intact, and we say what that number is before starting, not after.

What you get

A measured baseline

Field data where the domain has enough traffic for it, lab runs where it doesn't, not a single Lighthouse score screenshotted once.

A ranked list of what's holding the score down

Largest resource first, so the top of the list is the biggest fix, not the easiest one.

Image and video weight reduced

Format, compression and deferred loading below the fold, since these are usually the largest bytes on the page.

Render-blocking CSS and JS addressed

Deferred, split or removed, including dead code left over from a previous build: fonts, libraries, tracking scripts nobody is using.

Font loading fixed

So text doesn't sit invisible waiting for a webfont, or reflow once it arrives.

A remeasure after every change

So we can say which fix moved the number and by how much, not guess.

A written list of what's structural

Ceilings the platform itself sets, that would need a bigger project than this one to move.

Documentation of what changed

So the next person to touch the site doesn't undo it by accident.

When this fits, and when it does not

A good fit

  • The site exists, gets real traffic, and Core Web Vitals or a Lighthouse score are visibly bad, not a hunch that it "feels slow."
  • You've already tried the obvious fixes, an image plugin, a caching setting, and the number barely moved.
  • Page speed is affecting something measurable: ad quality scores, bounce rate, a ranking conversation, not just curiosity about the number.
  • Nobody currently knows which specific resource is the problem, and guessing has already cost time.

Not a good fit

  • You want a 100. On a real page with real content, ads or a tracking suite, that number usually means the page was gutted to get there, not that it's an honest target. We'll tell you what's realistically achievable and why.
  • The site is slow because the platform underneath has a hard ceiling, and the honest fix is rebuilding it rather than optimizing around it. We'll say so rather than bill for diminishing returns.
  • The site needs new pages, features or a redesign. That's a build, this is a fix to what already exists.
  • You want the visual design changed at the same time. Speed work and a redesign fight each other when done together, and we'll say when it's worth doing them as one project versus separately.

How it runs

  1. 01

    Measure

    Field data where it exists, lab runs where it doesn't, so the baseline is honest rather than a single lucky run.

  2. 02

    Rank

    What's actually holding the score down, by weight, not by what's easiest to fix first.

  3. 03

    Fix and remeasure

    One change, one measurement, so we know what moved the number and can undo anything that didn't help.

  4. 04

    Repeat

    Until the remaining gap is structural rather than fixable within this project, and we say so plainly.

  5. 05

    Hand over

    What changed, why, and what would need a bigger project to move further.

Questions we get

What score can you actually get us to?

Depends on the platform and what's on the page. We got our own site from 56 to 75 on mobile; the remaining gap there is the page export format itself, which needs a rebuild rather than another optimization pass to move. We tell you the realistic ceiling before starting, not after.

Do you work on any platform, WordPress, Webflow, Shopify, custom?

Yes, the audit is the same regardless of what the site is built on, though what's fixable without a rebuild depends on the platform. Some page builders bake in weight you cannot remove from the outside.

Will this affect our Google ranking?

Core Web Vitals are one ranking signal among several, not the whole algorithm. It moves the needle, it doesn't guarantee a position, and anyone promising a specific rank from a speed fix alone isn't telling you the truth.

How long does it take?

Depends on how much is fixable without touching the platform itself. A page with a handful of oversized images and a leftover font is a matter of days. A site where the weight is structural is a bigger, different conversation, and we'll tell you that upfront.

Know your Lighthouse score, don't know what's causing it?

Send the URL. We'll tell you what's actually holding the number down, and what it would take to move it, before you spend anything.