How to Optimise INP: Interaction to Next Paint Guide

27 June 2026 3 min read Technical SEO

What INP Measures

Interaction to Next Paint (INP) measures how quickly a page responds visually after a user interaction, such as a tap, click, or key press. It replaced First Input Delay because users do not care whether only the first interaction is fast. They care whether the whole page stays responsive.

Interaction to Next Paint optimisation workflow showing input delay, processing time and presentation delay

For SEO teams, INP matters because poor responsiveness creates a weak page experience. A page can load quickly and still feel broken if JavaScript blocks the main thread when the user tries to interact. For the broader framework, start with our Core Web Vitals pillar guide.

The Main Causes of Poor INP

Most INP problems come from main-thread congestion. The browser is trying to process JavaScript, style calculations, layout work, rendering, and user input at the same time. If a large task blocks the queue, the interaction waits.

Cause What Happens Typical Fix
Long JavaScript tasks Input waits behind heavy script execution Split tasks and reduce JS
Heavy hydration Page looks ready but is not interactive Use partial hydration or islands
Large DOM Style and layout calculations slow down Reduce DOM size and nested components
Third-party scripts Ads, widgets, tags block interaction Audit, defer, sandbox, or remove
Expensive event handlers Clicks trigger too much synchronous work Move work off-thread or delay non-critical actions

The fix is not simply 'make the page faster'. The fix is to make interactions lighter, shorter, and easier for the browser to paint after.

How to Fix INP Step by Step

Start with the interactions users actually perform: menu taps, form fields, filters, accordions, add-to-cart buttons, search inputs, and navigation controls. Then work backwards from the slowest interaction.

INP Optimisation Checklist

  1. Identify slow interactions in field data or Chrome DevTools.
  2. Break long tasks into smaller chunks.
  3. Remove unused JavaScript from the interaction path.
  4. Defer non-critical analytics and marketing scripts.
  5. Keep event handlers small and focused.
  6. Use instant visual feedback for taps and clicks.
  7. Avoid expensive layout reads/writes inside handlers.
  8. Reduce hydration scope on JavaScript-heavy pages.
  9. Test on mid-range mobile devices, not only desktop.

If your site uses a JavaScript framework, also read our JavaScript SEO rendering pipeline guide. Rendering choices often decide whether INP is easy or painful to fix.

Where SPAs Usually Go Wrong

Single Page Applications often struggle with INP because they send too much JavaScript and hydrate too much interface at once. The page may visually appear loaded, but the main thread is still busy attaching event handlers and rebuilding state.

The practical approach is clear:

  • Split JavaScript by route and component.
  • Hydrate only interactive components.
  • Avoid shipping admin/dashboard code to public pages.
  • Replace large client-side widgets with server-rendered HTML where possible.
  • Keep third-party tags out of the critical interaction path.

For a deeper SPA-specific workflow, see our SPA SEO best practice guide.

How to Measure INP Properly

Do not rely on a single Lighthouse run to judge INP. INP is best understood with field data because real users interact with pages in different ways, on different devices, under different network and CPU conditions.

Use this workflow:

  • Search Console Core Web Vitals report for affected URL groups.
  • PageSpeed Insights for CrUX field data and lab diagnostics.
  • Chrome DevTools Performance panel for specific interaction traces.
  • Real user monitoring if the site has enough traffic and commercial importance.

External References

Frequently Asked Questions

What is INP?
Interaction to Next Paint (INP) measures how quickly a page visually responds after user interactions such as clicks, taps, and key presses.
What causes poor INP?
Poor INP is usually caused by long JavaScript tasks, heavy hydration, third-party scripts, large DOM structures, and expensive event handlers that block the main thread.
How do you improve INP?
Improve INP by reducing JavaScript, breaking up long tasks, simplifying event handlers, delaying non-critical scripts, reducing DOM complexity, and testing real user interactions.
Jimmy Harris

Written by

Jimmy Harris

Technical SEO Specialist

Jimmy Harris is a technical SEO specialist focused on improving website performance, crawlability, and search visibility through practical, data-driven optimisation.

He works at the intersection of development and marketing, helping teams resolve complex technical issues such as site architecture, page speed, structured data, and indexing challenges. Jimmy specialises in translating SEO requirements into clear technical actions, ensuring websites are built in a way that search engines and users both understand.

With a strong background in performance optimisation and large-scale site audits, Jimmy takes a problem-solving approach to SEO, favouring measurable improvements over guesswork.

Technical SEO audits Site architecture and internal linking Core Web Vitals and performance optimisation Indexing and crawl budget management Structured data and schema implementation
View author profile
X Facebook LinkedIn WhatsApp Telegram Reddit Pinterest Email