Interaction to Next Paint (INP) is a Core Web Vitals metric that measures the responsiveness of a web page to user interactions. It replaced First Input Delay (FID) as an official Core Web Vital in March 2024. Unlike FID, which only measured the first interaction on a page, INP assesses the latency of all clicks, taps, and keyboard presses that occur during a page visit, reporting the worst (or near-worst) interaction delay to capture the full responsiveness picture.
How INP is Measured
INP measures the time from a user interaction (a click, tap, or keypress) to the moment the browser displays the next frame — the "next paint." A good INP score is 200 milliseconds or less. A score between 200ms and 500ms needs improvement, and anything above 500ms is considered poor. INP is measured using real-user data from the Chrome User Experience Report (CrUX), meaning it reflects actual users' experiences on real devices and network conditions. Pages with limited interaction (fewer than 50 interactions in the CrUX dataset) may not have sufficient data for official scoring.
Common Causes of High INP
High INP scores typically indicate that the browser's main thread is being blocked by JavaScript execution:
- Long JavaScript tasks blocking the main thread during interaction handling
- Heavy third-party scripts executing during user interactions
- Inefficient event handlers that trigger excessive DOM changes
- Rendering and layout thrash caused by reading and writing layout properties in sequence
- Large DOM sizes that slow rendering after interactions
Why It Matters for SEO
INP is a ranking signal as part of Google's Core Web Vitals and Page Experience assessment. Beyond rankings, slow page responsiveness directly damages user satisfaction — if clicking a button takes half a second to register, users perceive the site as broken or sluggish. E-commerce sites, interactive applications, and content-heavy pages with complex JavaScript are most vulnerable to poor INP. Optimizing INP typically requires JavaScript profiling to identify and reduce long tasks, break up processing with web workers, and optimize event handler efficiency.