INP Analyzer

Find what's blocking your main thread and slowing down interactions.

INP AnalysisCore Web Vital

What is Interaction to Next Paint?

INP measures how quickly your page responds to user interactions like clicks, taps, and keyboard input. It captures the worst interaction latency during a page visit, reporting when the browser finally paints a response. Google replaced FID with INP as a Core Web Vital in March 2024.

Since INP requires real user interactions, lab tools like Lighthouse use Total Blocking Time (TBT) as a proxy. TBT measures how long the main thread was blocked by long tasks during page load—a strong predictor of poor INP.

INP Timeline

Click
Processing
Paint
Good INP≤200ms

Common Causes of Poor INP

Long Tasks

JavaScript executing for >50ms blocks the main thread. Break up work with requestIdleCallback or scheduler.yield().

Third-Party Scripts

Analytics, chat widgets, and ads often block the main thread. Load them async or use Partytown to run in a web worker.

Hydration

Framework hydration can block interactions. Use progressive hydration, islands architecture, or server components.

Large DOM

Too many DOM nodes slow down style calculations and layout. Keep nodes under 1,500 and virtualize long lists.

Layout Thrashing

Reading and writing layout properties in a loop forces synchronous reflows. Batch DOM reads and writes.

Bundle Size

Large JavaScript bundles take longer to parse and execute. Use code splitting, tree shaking, and lazy loading.