The Google Chrome team announced that the Interaction to Next Paint (INP) metric will replace the First Input Delay (FID) in the Core Web Vitals on March 12, 2024.
FID measures the responsiveness of a program. Specifically, it measures the time from when a user first interacts with a page, like a click, to when the page responds. To provide a good user experience, websites must have an FID of less than 100 milliseconds.
In the announcement, Wagner and Viscomi stated that,
“Over time, it became clear that a new metric was needed to capture aspects of interactivity on the web that FID did not.”
INP measures the time when a person interacts with a page, like clicking a button, to when the browser can render the changed pixels to the screen.
INP was an experimental metric first introduced in May 2022. Then, in May 2023, it became a pending metric, with Google declaring it would become stable in March 2024.
Google provides advice on how to prepare for this transition. First, you’ll want to check your site’s INP threshold using PageSpeed Insights. If it’s poor or needs improvement, then you can do the following:
- Find slow interactions in the field
- Manually diagnose slow interactions in the lab.
After diagnosing the problem, Google says to:
- Optimize input delay.
- Avoid large, complex layouts and layout thrashing.
- Avoid complex CSS selectors.
- Minimize DOM size.
Google provides more context to these steps in the announcement.
Google also gave insight as to what would happen once INP becomes a Core Web Vital:
“You can expect to see changes in FID documentation. Historically important documentation about FID will remain in place, but prominent notices will be added to stress FID's deprecated status, and to refer to INP documentation. Other FID-centric documentation may be removed altogether and redirected to relevant INP documentation.”
Additionally, Google states that FID will be removed on March 12, and tools such as PageSpeed and CrUX will offer a six-month deprecation period so developers have a chance to update the code.