Metrics

What Is Interaction to Next Paint (INP)

Easy
High

What Interaction to Next Paint Measures

Interaction to Next Paint (INP) measures how quickly your site responds when a visitor clicks, taps, or presses a key. Specifically, it tracks the delay between a user interaction and the moment the browser paints the visual response. INP is one of the three Core Web Vitals and replaced First Input Delay (FID) as Google’s responsiveness metric in March 2024.

Google considers an INP of 200 milliseconds or less to be good. Between 200 and 500 milliseconds needs improvement. Anything over 500 milliseconds is poor. Like all Core Web Vitals, the threshold is evaluated at the 75th percentile of real user visits.

Mochyon Lightspeed detects this automatically. It monitors your INP score from real Chrome user data and alerts you when interactions become too slow for visitors.

Why INP Matters

A page that loads fast but responds slowly to clicks feels broken. When a visitor taps “Add to Cart” and nothing visibly happens for half a second, they may tap again or assume the site is not working. INP captures this entire class of frustration — not just the first interaction, but the worst interaction during the entire page visit.

INP differs from its predecessor (FID) in an important way: FID only measured the delay before the browser started processing the first interaction. INP measures all interactions throughout the visit and reports the worst one (with some statistical smoothing). This means a page can have a perfect FID but a poor INP if later interactions — like opening a menu or submitting a form — are slow.

What Causes Slow INP

INP problems are almost always caused by JavaScript. When the browser’s main thread is busy executing JavaScript, it cannot process user interactions until that work finishes.

Long JavaScript tasks. Any single JavaScript task that runs for more than 50 milliseconds can delay interaction responses. Heavy script execution — whether from your theme, plugins, or analytics — blocks the main thread and makes interactions wait.

Third-party scripts. Analytics platforms, chat widgets, advertising scripts, and social media embeds all compete for main thread time. Third-party scripts are a common source of INP issues because they run on schedules you do not control and often perform work during user interactions.

Complex DOM updates. When an interaction triggers the browser to recalculate styles and layout for a large number of elements, the visual update itself takes time. Pages with very large DOM trees or complex CSS make this rendering work slower.

Event handler overhead. JavaScript that runs in response to clicks or key presses — event handlers — adds directly to the interaction latency. Plugins that attach heavy logic to common interactions (scroll, click, input) can make every interaction slower.

How to Recognize an INP Problem

Check your field data first. Google Search Console’s Core Web Vitals report will flag INP issues. The field data section in PageSpeed Insights shows your real-world INP score.

Lab tools are less helpful for INP than for other metrics because they cannot simulate real user interaction patterns. Chrome DevTools’ Performance panel can help you identify long tasks on the main thread, which is the most common root cause. Look for yellow JavaScript blocks that exceed 50 milliseconds — these are the tasks most likely to delay interactions.

On WordPress specifically, INP problems often trace back to plugins that load JavaScript on every page, even where it is not needed. A site with 15 active plugins may have dozens of scripts competing for the main thread during any given interaction.

Further Reading

Related Articles

INP is one of the three Core Web Vitals — see how it fits alongside LCP and CLS in Google’s assessment.
Long JavaScript tasks are the primary cause of poor INP — understand what drives execution time on WordPress.

Need help with this?

Mochyon specializes in WordPress Core Web Vitals optimization. We diagnose, fix, and verify — with a named human accountable for the result.

Get help from Mochyon