/posts/lcp-2-8s-1-9s-ai-23
SEO / GEO

页面速度的坑:LCP从2.8s压到1.9s,AI抓取频次涨了23%

技术宅阿杰 80 0 28

上周把公司官网的 LCP 从 2.8s 压到 1.9s,顺手记录了一下 AI 爬虫的抓取日志,发现一个挺有意思的数据。

先交代一下背景:我们站是做 SaaS 工具站的,内容页大概 400 多篇,结构化数据用的是 Article + FAQPage + BreadcrumbList 三件套。之前一直盯着结构化数据,页面速度这块没太当回事,觉得能过 Core Web Vitals 就行。

转折点是上个月底,我扒了 7 天的 nginx 日志,过滤出 GPTBot、ClaudeBot、PerplexityBot 三个 UA,发现一个规律:LCP 在 2.5s 以上的页面,平均单页抓取间隔是 14.2 天;LCP 在 2s 以下的页面,平均间隔是 11.6 天。差了大概 2.6 天。

样本不大,但方向挺一致的。我就动手做了个对照实验。

挑了两组页面,每组 30 篇,内容质量、外链数、更新频率都尽量对齐。A 组不动,LCP 维持 2.6-2.9s;B 组做优化,具体做了三件事:

第一,把首屏那张 hero 图从 PNG 换成 AVIF,尺寸从 380KB 压到 62KB。
第二,原本同步加载的第三方统计脚本改成 defer,并且用 requestIdleCallback 包了一层。
第三,给字体加了 font-display: swap,之前是 block,白屏多等了大概 300ms。

两周后跑数据,B 组 LCP 中位数 1.9s,A 组 2.7s。抓取频次上,B 组单页从 12.4 天缩到 9.6 天,频次涨了差不多 23%;A 组基本没动,12.1 天。

但我没急着下结论。因为这里有个口径问题:抓取频次受 sitemap 里 lastmod 的影响很大,B 组我顺手更新了 lastmod(因为确实改了内容),A 组没动。所以这 23% 里有多少是速度带来的,有多少是 lastmod 新鲜度带来的,我分不干净。

后来我又补了一个反向测试:把 B 组里 10 篇的 lastmod 改成跟 A 组同一天,再跑一周。抓取间隔从 9.6 天回到 11.1 天,但还是比 A 组的 12.1 天快。也就是说,速度本身的贡献大概在 1 天左右,剩下的 1.3 天是新鲜度。

所以我的判断是:页面速度对 AI 抓取确实有影响,但别把它当唯一变量。LCP 从 2.8 压到 1.9,抓取频次提升是真实的,但幅度大概在 8%-10% 这个区间,不是 23%。

另外有个细节值得说:TTFB 我控制在 200ms 以内,但 Cloudflare 回源那一下偶尔会飙到 600ms。我怀疑 AI 爬虫的超时阈值卡得比较紧,TTFB 一抖就容易丢抓。

抛个问题:你们有没有试过把 lastmod 和真实内容变更解耦?比如内容没改但 lastmod 更新,会不会被识别成作弊从而降频?我接下来想测这个,但不知道怎么设计对照组比较干净。

登录后可以为帖子点赞,但本帖内容对所有人开放阅读。

社区回应

0 Replies

还没有回应,抢一个沙发。

登录后可以回应和点赞,但本帖内容对所有人开放阅读。