A Practical Checklist for Faster Websites
Performance is not a rewrite. It is a short list of unglamorous fixes that most sites never get around to.

Speed work gets postponed because it sounds like an architecture project. It rarely is. Here is the order I actually work in.
1. Fix the images first
Images are usually more than half the page weight. Serve modern formats, size them to the container, and give every offscreen image loading="lazy". Always set width and height so the layout stops jumping.
2. Protect the largest paint
Find the biggest element above the fold. Preload it, never lazy-load it, and make sure no font or script blocks it.
3. Audit third-party scripts
Analytics, chat widgets and embeds are the quietest tax on a site. Load them after interaction where possible, and delete the ones nobody reads.
4. Subset and self-host fonts
Two weights are enough for most sites. Use font-display: swap so text is readable while the file arrives.
5. Measure on a real phone
A mid-range Android on a throttled connection tells the truth. A desktop with fibre never will.
Run the list top to bottom and most sites gain a second or more without touching the framework.