INP (Interaction to Next Paint) — это метрика Core Web Vitals, измеряющая наибольшую задержку взаимодействия до отрисовки на странице во время визита пользователя, заменяющая FID в марте 2024 года.
«Взаимодействие» — это клик, нажатие или нажатие клавиши, которое запускает JavaScript. INP измеряет наихудшую задержку среди всех взаимодействий, а не среднюю, поэтому один медленный клик по фильтру может испортить INP для всей сессии. Пороги на 2026 год: ≤ 200ms хорошо, ≤ 500ms требует улучшения, > 500ms плохо.
Распространенные решения для INP в электронной коммерции: уменьшить клиентский JavaScript с помощью React Server Components, использовать startTransition для не срочных обновлений состояния, использовать useOptimistic для мгновенной обратной связи при смене варианта и добавлении в корзину, дебаунсить поисковые вводы с помощью AbortController, выносить литералы регулярных выражений из обработчиков событий и откладывать не критические сторонние скрипты.
INP сложнее исправить, чем LCP, потому что каждое взаимодействие может иметь свою узкую горлышко. Исправление INP требует дисциплины на уровне компонентов для каждого интерактивного элемента на странице.