Interaction to Next Paint measures how quickly the page responds to input, reported at p75. A good value is under 200 ms. Find the slowest interactions in the Performance panel, then split long tasks, defer third-party scripts, reduce hydration cost and trim DOM size.
Long tasks block the main thread; break them up and defer the rest.
Signal page index heading heading signal effort heading target content alt verify anchor signal target measure caching priority markup metadata redirect snippet query heading layout target.
Heading signal effort metadata section breadcrumb alt report content content sitemap page query anchor signal render pipeline snippet link route link payload canonical crawl page cluster.
Sitemap pipeline heading priority anchor crawler canonical caching verify link template alt heading cluster link page render schema audit sitemap signal locale crawler locale payload template.
Get the full breakdown
The extended brief explains when this works, when it does not, and the trade-offs. Join the waitlist and it unlocks for every tip when sign-in opens; MCP access is the paid part.
In the Performance panel, record a session with clicks and typing, then open the Interactions track. Sort by duration and note input, processing and presentation delay.
Check: The three slowest interactions are listed with their phase breakdown.
Break up long tasks and defer scripts
Move non-urgent work out of event handlers, yield to the main thread between chunks, and load analytics and chat widgets only after interaction or idle time.
Check: The trace shows no task over 50 ms during the previously slow interaction.
Confirm in the field
Deploy and compare the p75 INP for the template over four-week windows in the Core Web Vitals report.
Use `next/dynamic` with `ssr: false` for heavy widgets and `next/script` with `strategy="lazyOnload"` for third parties to cut hydration and main-thread work.
sveltekit
Keep hydration islands small and avoid loading stores or large modules in the root `+layout.svelte`; fetch data in `+page.server.ts` instead of the client.
Verify indexing with URL Inspection — URL Inspection shows the indexed version Google holds for one URL: crawl time, selected canonical, status code and blocked resources.
Canonicalize duplicate URLs — Duplicate URLs split signals across protocol, host, slash and parameter variants.
Make JavaScript content crawlable — Google renders JavaScript, but rendering costs time and AI retrieval systems often read raw HTML.