What is INP?
INP stands for Interaction to Next Paint. It measures the time between a user interaction — a click, tap or keystroke — and the moment the browser shows the next visual change on screen. Since March 2024, INP officially replaced First Input Delay (FID) as a Core Web Vital, because FID only measured the first interaction while INP assesses responsiveness across the entire session.
The thresholds
Google uses three clear categories, measured at the 75th percentile of your page visits:
| Score | Rating |
|---|---|
| Under 200ms | Good |
| 200ms – 500ms | Needs improvement |
| Over 500ms | Poor |
Why INP matters
INP has been an official Core Web Vital since May 2024, alongside Largest Contentful Paint (LCP) and Cumulative Layout Shift (CLS). Core Web Vitals are part of Google's broader page experience signals, which indirectly factor into ranking. More importantly: a slow INP score is something visitors feel directly — a button that responds sluggishly, a menu that stutters — and that costs conversions regardless of SEO.
How do you measure INP?
Use PageSpeed Insights or the Chrome User Experience Report (CrUX) for field data from real users — that's what matters, not Lighthouse's simulated lab data. Chrome DevTools (the Performance tab, or Performance Insights) lets you visually identify long tasks above 200ms while testing on your own device.
How do you improve INP?
Most INP problems are a JavaScript architecture issue, not something you can fix with better images or caching alone.
- Reduce main-thread work by removing or deferring unnecessary scripts.
- Split long tasks using scheduler.yield() or setTimeout(fn, 0), so the browser gets breathing room.
- Optimise event handlers: debounce or throttle functions that fire often, such as on typing or scrolling.
- Use requestIdleCallback for work that doesn't need to be visible immediately.
- Lazy-load third-party scripts such as chat widgets and A/B testing tools, or load them only after user interaction.
Want to know how your site scores on INP?
Request a performance check →
