Sefism is free for learners. We are here to help you grow, one step at a time.Join for free
Sefism.

Checklist · Stacks and tools

Web Performance Checklist

Opens with credits

A release checklist for fast websites, organised around the three Core Web Vitals and the guidance on web.dev. Each check says how much it matters and exactly how to confirm it, from field data and server response time to the LCP image, long tasks, layout shifts, fonts, the back/forward cache and monitoring after release.

Written by Tauseef Fayyaz8 chapters, 35 checksAbout 22 minReviewed 13 October 2026

What you will learn

8 chapters · about 22 min

  1. 1Measure before you optimiseKnow which metric is failing for real users before you change anything. These checks set up field data, lab tools and the right targets.4 checks · 3 min
  2. 2Server response and TTFBEvery millisecond before the first byte delays everything after it. These checks keep the server, redirects and caching from eating the LCP budget.4 checks · 2 min
  3. LCP and imagesThe largest element on screen is usually an image or a heading. These checks get it discovered, fetched and painted as early as possible.6 checks · 4 minOpens with credits
  4. JavaScript and INPResponsiveness is about keeping the main thread free. These checks break up long tasks, slim event handlers and keep rendering cheap.6 checks · 4 minOpens with credits
  5. CLS and layout stabilityContent that jumps makes people tap the wrong thing. These checks reserve space before content arrives and animate without moving layout.4 checks · 2 minOpens with credits
  6. Fonts and CSSWeb fonts and stylesheets block text and cause late reflows. These checks load them early and keep the fallback close to the final look.3 checks · 2 minOpens with credits
  7. Caching, delivery and the back/forward cacheRepeat visits and back navigations should be close to instant. These checks cover HTTP caching, compression, code splitting and keeping pages eligible for the back/forward cache.5 checks · 3 minOpens with credits
  8. Monitoring and budgetsPerformance regresses one small change at a time. These checks make regressions visible before users notice them.3 checks · 2 minOpens with credits

About this checklist

This web performance checklist is what you go through before a release, or when a page feels slow and you need to find out why. It is built on Core Web Vitals, the three metrics Google uses to describe real user experience: Largest Contentful Paint (LCP) for loading, Interaction to Next Paint (INP) for responsiveness and Cumulative Layout Shift (CLS) for visual stability. Every threshold and technique here comes from the guidance published on web.dev.

The targets are simple to state. LCP should be 2.5 seconds or less, INP 200 milliseconds or less and CLS 0.1 or less, measured at the 75th percentile of real page loads, separately for mobile and desktop. A page passes only when all three meet the target at that percentile. That is why the first chapter is about measuring real users, not just running a lab test on a fast laptop.

Every check has a severity. A must is something that is very likely hurting your users today, a should closes a common gap, and a nice adds polish once the basics are in place. Every check also says how to verify it: a panel in Chrome DevTools, a Lighthouse audit, a field report, a header to read with curl. Ticking a box without that evidence is how a site ends up with a perfect lab score and slow pages for real visitors.

Work through it with your site deployed somewhere close to production and DevTools open. Start with field data so you know which metric is failing, then jump to that chapter first.

Common questions

What are good Core Web Vitals scores?

LCP of 2.5 seconds or less, INP of 200 milliseconds or less and CLS of 0.1 or less. They are measured at the 75th percentile of real page loads, separately for mobile and desktop, and a page passes only when all three are good at that percentile.

Why is my Lighthouse score good but Core Web Vitals failing?

Lighthouse is a lab test on one simulated device, while Core Web Vitals come from real users on their own phones and networks. Lighthouse also cannot measure INP because it does not interact with the page; it reports Total Blocking Time instead. Trust field data from CrUX, PageSpeed Insights or your own web-vitals collection for the verdict, and use lab tools to find causes.

What replaced First Input Delay?

Interaction to Next Paint (INP) is the Core Web Vital for responsiveness. It measures the time from a user interaction to the next frame the browser paints, across input delay, processing and presentation delay. Above 500 milliseconds is considered poor.

Should I lazy-load all images?

No. Lazy-load images below the fold, but never the LCP image, because lazy loading always adds delay to it. Give the LCP image fetchpriority="high" and make sure it is in the initial HTML.

What is a long task?

Any task on the main thread that runs longer than 50 milliseconds. While it runs the browser cannot respond to input, so long tasks raise INP. Break them up and yield to the main thread with scheduler.yield(), falling back to setTimeout where it is not supported.

Sources (8)

Checked against these, last on 13 October 2026.

  1. Web Vitals, web.devweb.dev/articles/vitals
  2. Optimize Largest Contentful Paint, web.devweb.dev/articles/optimize-lcp
  3. Interaction to Next Paint (INP), web.devweb.dev/articles/inp
  4. Optimize Interaction to Next Paint, web.devweb.dev/articles/optimize-inp
  5. Optimize long tasks, web.devweb.dev/articles/optimize-long-tasks
  6. Optimize Cumulative Layout Shift, web.devweb.dev/articles/optimize-cls
  7. Time to First Byte (TTFB), web.devweb.dev/articles/ttfb
  8. Back/forward cache, web.devweb.dev/articles/bfcache

Picked from the other libraries by shared topics.

Project structures

See all
Work with me

Stuck on something specific?

Writing only gets you so far. If you want an answer to your situation rather than the general case, book a session and we will work through it together. Sessions are free for approved Sefism members, and a few slots open each week.

  • 1:1 Mentorship
  • Fresh Graduate Mentorship
  • Career Guidance

Brand deals, promos and partnerships: tauseeffayyaz@gmail.com