INP 替代方案:Interaction to Next Paint 如何改变 SEO 表现

Interaction to Next Paint(INP) 于 2024 年 3 月取代了 First Input Delay,成为 Core Web Vitals 之一,从根本上改变了 Google 评估页面响应能力的方式。本文将探讨 INP 对 SEO 的影响以及相应的优化策略。

什么是 INP?

INP 衡量的是整个页面生命周期中所有用户交互的延迟——而不仅仅是首次点击。它观察从用户交互到下一次绘制(next paint)之间的持续时间,完整捕捉以下各个环节的体验:

INP 评分阈值

为什么 INP 取代了 FID

FID 只衡量首次交互,会遗漏后续的响应性问题。一个页面可能拥有良好的 FID,但 INP 却很糟糕,例如出现以下情况时:

INP 对 SEO 的影响

对排名的直接影响

Google 已确认 INP 是页面体验排名因素的一部分。INP 表现较差的站点可能会遭遇:

对 SEO 的间接影响

较差的 INP 与以下指标相关:

常见的 INP 问题及修复方法

1. 主线程长任务

任何超过 50ms 的任务都被视为长任务。解决方案:

2. 开销高昂的事件处理器

常见的元凶包括:

3. 第三方脚本干扰

第三方脚本是导致 INP 表现糟糕的头号原因:

优化策略

// Yield between operations
async function handleInteraction() {
  showLoadingState();
  await scheduler.yield();
  const result = processComplexData();
  updateUI(result);
}

测量 INP

现场数据(Field Data)来源

实验室测试(Lab Testing)

INP 优化清单

  1. 审计所有事件处理器的性能
  2. 在长操作中实现让出(yielding)
  3. 延迟加载非关键的第三方脚本
  4. 对 CPU 密集型工作使用 Web Workers
  5. 优化 React/Vue 的渲染周期
  6. 使用真实用户交互进行测试
  7. 通过 RUM 在生产环境中监控 INP
  8. 为交互延迟设定性能预算