Why it matters
Long tasks (>50 ms) make taps and typing unresponsive while the page loads. Total Blocking Time is the lab proxy for INP.
How to fix it
Ship less JavaScript, keep 'use client' at the leaves, defer third-party scripts, and break long work up with scheduler.yield() or setTimeout.
Example
const yieldToMain = () => ('scheduler' in globalThis && 'yield' in scheduler) ? scheduler.yield() : new Promise(r => setTimeout(r, 0));References
More performance rules
void perf reports 25 rules in this category. Core Web Vitals and bytes: LCP, CLS, TBT, TTFB, JavaScript, CSS, fonts, images, caching and compression, measured as the median of several runs on a throttled mobile and a desktop profile.
lcp-slowLargest Contentful Paint is slowcls-highCumulative Layout Shift is highttfb-slowServer response (TTFB) is slowfcp-slowFirst Contentful Paint is slowjs-budgetFirst-load JavaScript exceeds the budgetcss-budgetCSS transfer exceeds the budgetfont-budgetWeb font transfer exceeds the budgettoo-many-fontsToo many font files are downloaded