What it takes to ship every site at Lighthouse 100
The short list of rules that keep our launches fast, from fonts to images to the one script we always remove.
Every site we launch scores 100 on Lighthouse, on mobile. That’s not a trick; it’s a short list of habits we apply from the first commit.
The list
- HTML first. Pages render on the server; JavaScript only where something moves.
- Two fonts, self-hosted, with fallbacks matched to their size so nothing jumps.
- Images through one component that writes AVIF and WebP in the sizes the layout needs.
- No third-party script before consent, and none at all if a first-party one will do.
- A budget in CI: the build fails if the home page grows past 100 kB of JavaScript.
The one script we always remove
The chat widget someone added in 2021 that loads 400 kB to show a button. If you need a chat, load it when someone clicks.