谷歌体验度量指标集 Web Vitals
网易-云音乐-kkdev163
2
3
背景介绍
3
遇到问题
4
3. 实验室环境 与 真实用户侧指标不一致,难以对齐
DomReady 、Load
2. 真实用户侧指标 与 用户体验感知,没有直接关联
💡
Web Vitals 是谷歌提出的一组
用来衡量 用户体验 的 度量指标集
5
Web Vitals
6
Loading
Largest Contentful Paint (LCP)
Interactivity
First Input Delay (FID)
Visual Stability
Cumulative Layout Shift (CLS)
First Contentful Paint (FCP)
Time to First Bytes (TTFB)
Total Blocking Time (TBT)
Time to Interactive (TTI)
Core
Web
Vitals
Core Web Vitals
7
(Loading)
(Interactivity)
(Visual Stability)
Largest Contentful Paint (LCP)
8
当前视窗(viewport)中的最大内容元素的渲染时间
加载时性能 (Loading)
判定的元素
9
<img>
<svg:image>
<video>
(with poster image)
background-image:
url()
Block-Level element
(containing text node)
元素的大小
10
2000 * 1000
Intrinsic
Size
1000 * 500
Visible
Size
min()
1000*500
AaBbCcDdEe
FfGgHh
LCP Demo
11
0ms
2000ms
2400ms
3000ms
4500ms
TimeLine
LCP 影响因素 & 优化思路
12
First Input Delay (FID)
13
Button
👋
Button
用户首次输入事件的延迟
可交互性 (Interactivity)
Busy
IDLE
FID 计算规则
14
Button
Main Thread
Busy
FID
Event Process Timing
Button
👋
Busy
Button
IDLE
Button
Handle
Click
Button
Update
UI
FID 判定规则
15
哪些事件会被记录为 FID ?
没有绑定事件处理器的元素,是否会被记录 FID ?
clicks、taps、key presses
✅
scrolling、zooming
❌
Main Thread
Busy
IDLE
FID
👋
FID 影响因素 & 优化思路
16
1. 减小 JS 文件体积(Code-splitting、延迟加载)
2. 减少主线程执行开销 (拆分 Long Tasks、异步执行、web worker)
Cumulative Layout Shift (CLS)
17
累计页面布局偏移
视觉稳定性 (Visual Stability)
计算公式
18
layout shift score = impact fraction * distance fraction
布局位移评分 = 影响面积分数 * 距离分数
0.5 * 0.25 = 0.125
CLS 影响因素 & 优化思路
19
添加元素大小属性
(width、height )
Animation
谷歌系工具简介
20
谷歌系工具简介
21
2. Chrome Devtools-Performance
谷歌系工具简介
22
2. Chrome Devtools-Performance
谷歌系工具简介
23
2. Chrome Devtools-Performance
Total Blocking time (TBT)、Longtask
谷歌系工具简介
24
3. Chrome Devtools-Lighthouse
谷歌系工具简介
25
3. Chrome Devtools-Lighthouse
谷歌系工具简介
26
4. Chrome User Experience Report (CrUX)
根据 origin、url 查询
数据是通过 Chrome 自身的
统计信息 (需要用户许可)
谷歌系工具简介
27
5. PageSpeed Insights
谷歌系工具简介
28
6. CrUX Dashboard On DataStudio
谷歌系工具简介
29
7. web-vitals - npm
云音乐-用户端数据
30
LCP 的兼容性是 Chrome Webview >= 77
云音乐-实验室侧数据
31
32
解决的痛点:
33
更新带来的问题:
建议的使用方式
34
1. 使用线上真实数据发现不合格的体验问题
2. 使用 Lighthouse 工具诊断,根据优化建议进行优化
3. 结合 devtools 等工具进行优化
4. 使用 Lighthouse 验证上线前的改进效果
5. 线上真实数据验证用户端的体验改进
云音乐 WAPM 平台交流 POPO群:1489786
35
3
总结
Make The Web More Awesome!
36
END
Q&A