Interaction to Next Paint (INP) measures end-to-end interaction latency: input delay (waiting for the main thread) plus event handler execution plus presentation delay. The reported INP for a page is the slowest interaction (or the 98th percentile when there are 50 or more interactions in the session).
Google's INP thresholds at the 75th percentile of page visits: under 200ms is "Good", 200-500ms is "Needs Improvement", over 500ms is "Poor". INP replaced First Input Delay (FID) as a Core Web Vital on 2024-03-12 because FID only measured the first interaction; INP measures every interaction during the session.
Fix poor INP by breaking up long JavaScript tasks (scheduler.yield()), keeping event handlers synchronous-light, and avoiding forced layout reads inside handlers.