INP (Interaction to Next Paint)
The delay between a tap, click or keypress and the frame that responds to it.
Analogy Mental model
Pressing the remote and waiting for the channel to change. A full second of nothing and you assume the battery is dead, even though it eventually works.
In practice What you actually do
Target under 200 milliseconds. Almost always this is JavaScript: long tasks blocking the main thread, hydration that could be deferred, handlers doing more than they need to. Break the tasks up and load non-critical scripts later.
Where people get burned Pitfalls
Third-party tags cause most of this: chat widgets, ad code, heatmaps, testing tools. Load them after interaction or on a delay, because a marketing tool that costs a second of responsiveness is buying attention with the same currency it needs.
This entry was written in English from the Chinese original, not machine-translated. Read the Chinese version →