Got a confusion about site responsiveness, or want help improving your INP score? Call or WhatsApp us at 9718159724 — we’ll run a full technical audit, no obligation.
Interaction to Next Paint (INP): What Changed in Core Web Vitals and Why It Matters
Interaction to Next Paint (INP) is now the metric that decides whether your site feels fast to real users — it measures the delay between a click, tap, or keypress and the moment the browser actually paints the next frame in response. Since March 2024, INP replaced First Input Delay (FID) as Google’s official Core Web Vitals responsiveness metric, and that shift changes how you should be auditing site performance in 2026.
Why FID Got Retired
FID only measured input delay — the gap before the browser even started processing your click. It ignored everything that happened after: how long the actual event handler took to run, or how long the browser needed to paint the result. A page could score a perfect FID and still feel sluggish every time someone tapped a button, because the real lag was happening after the click was registered, not before.
INP core web vitals scoring fixes that gap. It looks at the entire interaction — input delay, processing time, and presentation delay — and reports the slowest (or near-slowest) interaction across the full page visit, not just the first one. That’s a much closer match to what a user actually experiences when they’re scrolling, filtering, or filling out a form.

Field Data vs Lab Data — Why This Distinction Matters More for INP
Lab data (from tools like Lighthouse) is generated by a script clicking through your page on a fixed device and network profile. It’s useful for catching regressions before you ship, but it can’t measure INP the way Google actually scores it, because INP by definition needs a real person interacting with a real page over a real session.
Field data — pulled from the Chrome User Experience Report (CrUX) and Real User Monitoring tools — is what shows up in Search Console and what actually feeds Google’s page experience signal. If your lab scores look great but your field INP is poor, the gap is almost always device diversity: real users are on mid-range Android phones, throttled networks, and background tabs eating CPU, none of which a lab test on a fast dev machine replicates well.
What Counts as "Good" INP
Google’s thresholds are straightforward:
- Good: 200ms or less
- Needs improvement: 200ms–500ms
- Poor: above 500ms
These numbers are measured at the 75th percentile of page loads, across both mobile and desktop. So a handful of fast interactions won’t save you — it’s the typical worst-case experience that gets scored.
How INP Fits With LCP and CLS
INP doesn’t replace the other Core Web Vitals — it sits alongside them, each covering a different part of page experience:
- Largest Contentful Paint (LCP) — how fast the main content loads
- Cumulative Layout Shift (CLS) — how visually stable the page is while loading
- INP — how responsive the page is to actual interaction, throughout the session
A page can nail LCP and CLS and still fail INP if JavaScript keeps the main thread busy every time someone interacts with it — heavy event listeners, large re-renders, or third-party scripts that hijack the thread are the usual culprits.
Is INP Actually a Ranking Factor?
Core Web Vitals, INP included, are part of Google’s page experience signal — a real but comparatively minor factor next to content relevance and quality. It’s rarely going to push a weak page above a strong one, but among pages that are otherwise similar in relevance, a poor INP score can be the tiebreaker that costs you the position. More importantly, INP correlates directly with conversion and bounce rate — a laggy click-to-response experience loses users regardless of where you rank.
Fixing Poor INP: Where to Actually Look
Most INP problems trace back to one of these:
- Long JavaScript tasks — anything blocking the main thread for 50ms or more delays every interaction queued behind it. Break long tasks into smaller chunks using setTimeout or scheduler.yield().
- Heavy event handlers — debounce input-heavy handlers (search-as-you-type, filters) instead of running full logic on every keystroke.
- Third-party scripts — ad tech, chat widgets, and analytics tags often eat main-thread time you don’t control directly. Load them with defer or async, and audit which ones are actually earning their keep.
- Large DOM size — big re-renders on a bloated DOM tree take longer to paint. Virtualize long lists and avoid re-rendering more than what actually changed.
- Unoptimized React/framework re-renders — unnecessary state updates re-render more of the tree than needed; memoization and narrower state scoping usually help more than any single “performance trick.”
This ties directly into how a search engine can even reach and re-evaluate your pages efficiently — if you haven’t already gone through our Core Web Vitals pillar guide, that’s the right next stop for the full technical SEO picture, and it’s worth reading alongside our crawl budget piece, since a bloated, slow-rendering site can quietly eat into how much of it gets crawled and indexed in the first place.

Frequently asked question
What is a good INP score?
Under 200ms is considered good, 200–500ms needs improvement, and anything above 500ms is poor, measured at the 75th percentile of real user sessions.
When did INP replace FID as a Core Web Vital?
Google made the switch official in March 2024, after INP had run as an experimental metric for about a year.
Why did INP replace FID?
FID only measured the delay before an interaction started processing. INP measures the full interaction — delay, processing, and paint — giving a much more accurate picture of real responsiveness.
Can I measure INP in Lighthouse?
Lighthouse gives you a lab-based estimate, but true INP scoring depends on field data from real user sessions, so lab numbers alone won’t match what Search Console reports.
Does INP affect SEO rankings directly?
It’s one part of Google’s page experience signal — a minor ranking factor overall, but it can matter as a tiebreaker between otherwise similar pages, and it affects conversions regardless of ranking impact.
What usually causes poor INP?
Long JavaScript tasks blocking the main thread, heavy event handlers, unoptimized third-party scripts, and large, frequently re-rendered DOM trees are the most common causes.
Is INP more important than LCP or CLS?
None of the three outranks the others — they measure different things (loading speed, visual stability, responsiveness) and all three need to pass for a page to be considered “good” overall.
How is INP different on mobile vs desktop?
Mobile devices generally show higher INP due to slower processors and network variability, which is why Google reports and thresholds account for both device types separately in field data.
Can third-party scripts really hurt my INP?
Yes — ad networks, chat widgets, and heavy analytics tags are frequent main-thread hogs. Auditing and deferring non-critical scripts is often the fastest INP win available.
How often should I check my site's INP?
Check Search Console’s Core Web Vitals report monthly at minimum, and any time you ship a major frontend change, since a single heavy third-party script or unoptimized component can quietly tank the score.
Conclusion
INP is the clearest signal Google has ever given about what “responsive” actually means to a real user — not just how fast a click registers, but how fast the page visibly reacts to it. Chasing a perfect Lighthouse score without checking field data is the most common mistake here; fix that gap first, then work down the list of long tasks, heavy handlers, and third-party bloat. Do that consistently and INP stops being a Core Web Vitals worry and starts being a quiet, structural conversion advantage.