What Is Interaction to Next Paint (INP)?

Flavio AmielWritten byFlavio Amiel Founder, Roborank
Updated July 15, 2026

Interaction to Next Paint (INP) is a Core Web Vital that measures a page’s responsiveness by observing the latency of every click, tap, and keyboard interaction across a visit, then reporting the worst one. It times the full delay from the user’s action to the next frame the browser paints, so a low INP means the interface reacts visibly and quickly to input.

Key Takeaways

How Interaction to Next Paint Works

Interaction to Next Paint measures responsiveness — the lag between doing something on a page and seeing the page react. Every time a user clicks, taps, or presses a key, the browser has to run the associated event handlers and then paint an updated frame. INP watches all of those interactions during a visit and records how long each took, from the input to the next visible paint. It then reports, roughly, the single longest one, so the score reflects the worst friction a user actually hit rather than a flattering average.

That “worst interaction” design is the point. A page might handle 40 taps beautifully and one terribly; the one bad tap is what a user remembers, and it’s what INP surfaces. Measurement happens on real Chrome users through the Chrome UX Report, and like every Core Web Vital the reported value is the 75th percentile — the number three-quarters of visits stay under.

The metric is deliberately narrow about what counts as an interaction. Clicks, taps, and keypresses qualify. Scrolling, hovering, and pinch-zoom do not, because they are handled by the browser’s compositor rather than by JavaScript event handlers on the main thread, and INP is designed to catch main-thread work that blocks a visible response.

The Three Components of an Interaction

Every interaction INP measures splits into three consecutive parts. Each is a place responsiveness can go wrong:

Add the three and you have the interaction’s total latency. INP’s good threshold of 200 milliseconds is the budget for all three combined, on the slowest interaction of the visit.

Example of Interaction to Next Paint

The defining event for this metric is its promotion to a Core Web Vital on March 12, 2024, replacing First Input Delay — and the reason for the swap is the clearest worked example of what INP captures that FID missed.

The timeline is documented: Chrome shipped INP as an experimental metric in May 2022, announced in May 2023 that it would become a Core Web Vital in March 2024, promoted it on schedule on March 12, 2024, and deprecated FID across its tools and APIs on September 9, 2024. First Input Delay measured only the input delay of the first interaction. That is a tiny slice — it excluded the event processing, excluded the paint, and ignored every interaction after the first. As a result the web’s FID scores were overwhelmingly “good,” which made the metric almost useless as a signal: it rarely told anyone their page was actually sluggish.

INP measures the full latency of every interaction. When Chrome ran the two metrics side by side across the real web, sites that passed FID comfortably frequently landed in INP’s needs-improvement or poor bands, because their heavy JavaScript stretched processing and presentation on interactions FID never looked at — the search filters, the “load more” buttons, the mega-menus deep in a session. Nothing about those pages had changed; the measurement finally caught friction that was always there.

The lesson is that INP rewards architecture, not tricks. Because it captures input delay, processing, and presentation across the whole visit, the durable fixes are structural: break long tasks into smaller ones, defer non-critical scripts, yield the main thread so the browser can paint, and keep the DOM small enough that response frames render fast. There is no way to game a metric that reports your worst real interaction — you have to make the interactions genuinely fast.

The thing people get wrong

The trap with INP is optimizing the interaction you demoed instead of the one that’s actually slow. INP reports your worst interaction across the whole visit, so a buttery-smooth homepage hero button is irrelevant if the search filter three clicks deep runs a 400ms handler on the main thread. And because it captures presentation delay — the wait for the next paint — a fast event handler can still score poorly if a bloated DOM makes rendering the response frame expensive. Profile real interactions, especially the boring deep-funnel ones (accordions, filters, form fields), break each into input delay, processing, and presentation, and yield the main thread so the browser can paint. The metric rewards the slowest tap, not the flashiest one.

Interaction to Next Paint and the Other Core Web Vitals

INP is the responsiveness leg of Core Web Vitals, sitting alongside Largest Contentful Paint for loading and Cumulative Layout Shift for stability. The three often share a root cause: the same excess JavaScript that delays LCP by blocking rendering also occupies the main thread and inflates INP’s input delay. That overlap is good news for prioritization — trimming and deferring JavaScript, the single highest-leverage performance move, tends to improve loading and responsiveness together. INP is simply the metric that makes main-thread bloat impossible to hide behind a fast first paint.

Frequently Asked Questions

What is a good INP score?
200 milliseconds or less at the 75th percentile of page visits. Between 200 and 500 milliseconds needs improvement, and above 500 milliseconds is poor. The score reflects the slowest qualifying interaction during a real user’s visit, measured from field data.
When did INP replace FID?
Interaction to Next Paint became a Core Web Vital on March 12, 2024, replacing First Input Delay. Google announced the change in May 2023 after introducing INP as an experimental metric in May 2022. First Input Delay was deprecated across Chrome tooling on September 9, 2024.
What is the difference between INP and FID?
FID measured only the input delay of the first interaction — the wait before the browser could start processing it. INP measures every interaction across the visit and includes the full latency: input delay, event processing, and the delay until the next frame paints. INP is a far stricter, more complete signal.
How do I improve INP?
Break up long tasks so the main thread isn’t blocked, defer non-essential JavaScript, yield to the browser between work, and keep event handlers lightweight. Reduce DOM size and avoid heavy layout work in the response so the presentation frame paints quickly. Profile your slowest real interactions first.

The Bottom Line

Interaction to Next Paint grades how snappy a page feels when you actually use it — tapping a button, opening a menu, typing in a field — by timing how long until the screen visibly responds. Keep the slowest interaction under 200 milliseconds for most users and the page reads as responsive. It is the strictest, most complete responsiveness metric Google has shipped, which is why it retired First Input Delay.

Sources

  1. Interaction to Next Paint (INP)web.dev (Google)
  2. INP is now a Core Web Vitalweb.dev (Google)
Roborank does this

Roborank monitors INP on your key templates and flags the interactions and scripts blocking the main thread.

Audit your INP →

Rank & Cash — the weekly SEO breakdown

One practical teardown a week on ranking in search and getting cited by AI. No fluff.