HomeFix guides → Interaction to Next Paint <=200ms

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 →