Advancing Interaction to Next Paint

INP is no longer experimental. Learn about Chrome's plan to make it a Core Web Vital in 2024.

Annie Sullivan
Annie Sullivan

Chrome's mission with the Web Vitals program is to help developers focus on the metrics that are essential to great user experiences—the Core Web Vitals. One important aspect of the user experience that we've been focusing on is responsiveness, which is the ability of a web page to react quickly to user interactions.

First Input Delay (FID) is the Core Web Vital metric that measures responsiveness, but as we've written in the past, there are known limitations of FID. This led us to explore and seek feedback on a (then) experimental metric that addresses these limitations more effectively. In 2022, we announced Interaction to Next Paint (INP) as that new metric, made it widely available in our tools, and started working with the community to test its efficacy.

After another year of testing and gathering feedback from the community, we're ready to take the training wheels off and announce that INP is no longer experimental. Furthermore, effective March 2024, we're also committed to promoting INP as the new Core Web Vital metric for responsiveness, replacing FID.

In this post, we'll cover more about the motivation behind the decision, exactly what's changing, and how to get started. For more on how this affects Google Search, refer to their blog post.

A better responsiveness metric

FID was a huge step forward when we introduced it as a Core Web Vital in 2020. It offered developers a new way to measure responsiveness as real users experience it, which has always been an important part of the Web Vitals program. Unlike similar metrics that only approximate page interactivity—like Total Blocking Time (TBT) and Time To Interactive (TTI)—FID directly measures the user experience. Crucially, a page could have slow TBT or TTI and still be perceived as responsive, because of the way real users interact with the page.

While it did improve the way we measure responsiveness, FID wasn't without limitations. The name itself actually gives away two such limitations: "first input" and "delay". FID only reports the responsiveness of the first time a user interacts with the page. Even though first impressions are important, the first interaction is not necessarily representative of all interactions throughout the life of a page. Further, FID only measures the input delay portion of the first interaction, which is the amount of time the browser had to wait (due to main thread busyness) before even beginning to handle the interaction.

Enter INP. Rather than only measuring the first interaction, INP takes all interactions into account, reporting one of the slowest over the entire lifetime of the page. And, rather than only measuring the delay portion, INP measures the full duration from the start of the interaction, through the event handler, and until the browser is able to paint the next frame. Hence, Interaction to Next Paint. These implementation details make INP a much more comprehensive measure of user-perceived responsiveness than FID.

Evolving INP

Starting today, INP is no longer experimental and will instead be considered a pending Core Web Vital metric. This is a new designation to indicate that INP has proven its readiness to replace FID—but we're not making the change just yet. To give the ecosystem time to adjust, INP will officially become a stable Core Web Vital metric in March 2024.

Graphic showing the timeline of INP phases, starting from when Chrome announced experimental support for INP in May 2022, to today in May 2023 when Chrome is announcing that INP is now a non-experimental, pending Core Web Vital metric, and finally to March 2024 when INP becomes a stable Core Web Vital metric, replacing FID.
Graphic showing the timeline of INP phases.

Across our tools, you'll start to see INP without the experimental prefix or icon. If you programmatically consume INP data from any of the following APIs, you'll need to update your code to switch over to the non-experimental INP field.

Tool Deprecated field New field
CrUX API experimental_interaction_to_next_paint interaction_to_next_paint
CrUX History API experimental_interaction_to_next_paint interaction_to_next_paint
CrUX BigQuery experimental.interaction_to_next_paint interaction_to_next_paint
PageSpeed Insights API experimental_interaction_to_next_paint interaction_to_next_paint
Lighthouse report* experimental-interaction-to-next-paint interaction-to-next-paint
Map of APIs to their old and new INP field name.
* Lighthouse will stop using the experimental INP field in version 11.

To ease the transition and avoid breaking any downstream applications, these APIs will continue to serve the experimental INP field for another 90 days. API support for the experimental INP field will end on August 8, 2023.

Meanwhile, FID will remain a Core Web Vital until March 2024. At that time, INP will join Largest Contentful Paint (LCP) and Cumulative Layout Shift (CLS) as the three stable Core Web Vitals. In a future update, we'll share more information about the precise timing of the change and the plan for FID after it's replaced as a Core Web Vital.

Getting started with INP

Good INP values are 200 milliseconds or less, poor values are greater than 500 milliseconds, and anything in between needs improvement.

Don't wait for INP to become a Core Web Vital in 2024 to start improving it. Your website may very well be in the 93% of sites that have good FID performance on mobile devices; however, you might be surprised to learn that only 65% of sites have good INP on mobile devices. INP paints a much more accurate picture of responsiveness, so these numbers help us to more clearly see the room for improvement ahead of us.

To find out whether your site has INP issues, how to address them, and all things INP, the best place to start is the INP optimization guide. Whether you're learning about responsiveness for the first time or you're a performance expert, we've added a lot of new guidance to make it as easy as possible for everyone to learn how to measure and optimize INP.

INP might take some time to learn, and that's just fine. To help you focus on the optimizations with the biggest ROI, earlier this year we published a blog post to distill our guidance down to the most effective recommendations to improve Core Web Vitals. Specifically, we wrote about three must-know techniques that apply equally to optimizing FID and INP: avoid or break up long tasks, avoid unnecessary JavaScript, and avoid large rendering updates. You can learn more about these and many other INP optimization techniques in our documentation.

The road ahead

A new bar for responsiveness has been set, and we're excited to see the community rise to the challenge for a better user experience. The early feedback and case studies have been promising, but we know that for many, it may be a long and unfamiliar road ahead. We strive to make that journey as easy as possible with improved diagnostics, tools, and documentation to help developers along the way.

Stay tuned for updates on INP's exact graduation date in March 2024. And even though the metric is not experimental anymore, we're always open to feedback at [email protected] to help us improve INP and the Web Vitals program as a whole.