Web performance audit: the item-by-item Lighthouse checklist I use to unblock slow sites
My audit follows the Lighthouse report as a task list, in order of impact: server and cache, the LCP image, render blocking, JavaScript, layout stability and interaction. Each item becomes a measured fix.
1. Server and cache (TTFB)
Is the HTML served from cache? Check the response headers.
Compression (gzip/brotli) and HTTP/2 or HTTP/3 enabled.
Long caching for hashed files; HTML uncached or revalidated.
Database: slow query log, indexes and repeated queries.
2. LCP: the largest element on screen
Find out which element is the LCP (the report shows it).
If it's an image: AVIF/WebP, the right size per screen, width/height and fetchpriority="high".
Never lazy-load the above-the-fold image.
If it's text: the font must arrive early (preload and a suitable font-display).
3. Render blocking
Small critical CSS; the rest can wait.
Scripts with defer or loaded after interaction.
Local, subsetted fonts with only the weights in use.
Fewer external origins: every new domain costs a connection.
4. JavaScript and the dependency tree
This is where bad INP lives. Lighthouse points to long tasks and unused code:
Remove whole libraries used for a single function.
Split code per page; load widgets on demand.
In Magento: review the RequireJS chain and Knockout components that re-render needlessly.
Third parties (chat, pixels, A/B tests) after the content and, if possible, after the first interaction.
5. CLS: nothing may jump
Every image, video and iframe with declared dimensions.
Reserved space for banners, cookie notices and reviews.
Fonts with tuned fallback metrics so text size doesn't change.
6. Validate and repeat
After each batch of fixes I run Lighthouse several times (the mobile score fluctuates a few points) and follow field Core Web Vitals. The final report shows the before, the after and what is still worth tackling.