tech
How to fix: Interaction to Next Paint <=200ms
Why this matters
Interaction to Next Paint replaced FID as the responsiveness Core Web Vital in March 2024. Measures the delay between a user's tap/click and the next visual update. <=200ms is Good; >500ms is Poor — caused by long JavaScript tasks blocking the main thread.
Background
INP measures the delay between a user's tap/click and the next visual update. Long JavaScript tasks block the main thread and delay every interaction. <=200ms = Good; >500ms = Poor.
References
web.dev/inp · Core Web Vitals (INP, replaced FID March 2024)
How to fix
Code snippet for each stack we cover. Pick the one matching your server / framework.
nginx
No server config — application-level optimisation.
apache
Same.
cloudflare
Workers can pre-warm + cache JSON API responses, reducing interaction latency.
wordpress
Audit your theme + plugins for heavy JS. Most issues: heavy chart libraries, sliders, social-share widgets loading on first interaction. Defer them.
flask
Profile front-end JS with Chrome DevTools Performance tab. Break up long tasks with `requestIdleCallback` or `setTimeout(fn, 0)`. Move heavy work to Web Workers.
express
Same — front-end optimisation pattern, not server-side.
rails
Same. Hotwire Turbo's morphing is incremental — fewer DOM thrashes.
Verify it's working
Field data only — measure via PageSpeed Insights after enough real-user traffic accrues. Chrome User Experience Report (CrUX) needs ~28 days.
Want to know if your site has this issue?
Run a free 53-check audit — security, GDPR, NIS2, and technical SEO.
Audit my site →