Search Console 没有语言这个维度,所以要看出哪个语言版本在拿流量,只能靠一个网域资源(Domain property)加网页路径筛选:在“效果”报告里用“网页”筛选器,按语言目录前缀(/de/、/fr/、/jp/ 这类)逐段拆开,比对同一日期区间的曝光量,先确认这批 URL 到底进了索引,再去谈排名。顺序不能反——反了,你读到的只是抽样数据里的噪声,不是证据。
周一早上我坐下来的第一件事就是这个,别的都往后排。屏幕上挂着同一个资源的总曝光曲线,看起来四平八稳往上爬。我知道这条线底下压着五种语言,其中两种在涨,一种三个月没动,还有两种的数字小到根本看不出趋势。合计曲线最大的问题不是不准,是它会把结构藏起来。
语言不是筛选器,路径才是
Search Console 从头到尾没给过“语言”这个字段。它不知道 /de/ 是德语,也不知道 example.de 和 example.com/de/ 在说同一件事。它只认 URL。
所以判断哪个语言版本在拿流量,本质是一次 URL 分组,不是一次语言识别。这件事有个前提:你的多语言站得是按目录或者子域分开放的。如果语言是靠 cookie、参数或者自动跳转切换的,同一套 URL 服务所有语言,那你在 GSC 里什么都拆不出来。不是方法不够巧,是数据在采集端就已经糊成一团了。我见过最难受的一种做法是站点用 ?lang=de 这样的参数传语言,GSC 把参数变体折叠进规范网址,你连争取的余地都不多。
反过来说,建站时把语言切成干净的前缀,后面读数据就是顺手的事。这也是我后来重做 URL 结构最直接的理由——跟 SEO 理论关系不大,纯粹是想看懂自己的东西。
我用的是网域资源,不是一堆 URL 前缀资源
一个网域资源覆盖这个域名下所有子域和所有子目录。example.com/de/、example.com/jp/、de.example.com,全在这一个资源里。对多语言站来说这是最省事的起点:一次验证,全站在视野内,不用为了看德语版再走一遍验证流程。
URL 前缀资源我也建,但目的不同。眼下的情况是外包的日语内容由另一拨人负责,我只想让他们看 /jp/ 这一段,不想把整个域的数据摊开。这种“按人分视野”的需求,URL 前缀资源比筛选器好用,因为筛选器是每次手动加的,人会忘,资源不会。
这里有个取舍要说清楚:资源多了,你会在几个资源之间来回切,看到的数字其实是同一批数据的不同切片,很容易把某个资源里的数字记到另一个资源头上。我的做法是只在一个网域资源里做横向比较,URL 前缀资源纯粹当权限工具用,不当分析工具用。
筛选器具体怎么填
“效果”报告里点“+ 新建”,选“网页”这个维度,匹配方式选“网址包含”,输入 /de/。
几个细节值得说。
用“包含”而不是“开头为”,是因为很多人站点的语言目录不在一级。可能是 /blog/de/,也可能是 /resources/de/guides/。用包含能一把捞全,代价是会误伤——/de/ 也会匹配到 /design/ 这种路径。我第一次这么筛的时候,德语目录里混进了一堆英文设计类页面,曝光量看着挺好看,点进去全是别人的。
所以路径前缀要带斜杠,写 /de/ 而不是 de。而且要确认语言目录命名本身不撞车:/jp/ 和 /jpn/ 并存,/de/ 和 /design/ 并存,都会让你在筛选这一步就输掉。
路径层级复杂的时候我切到自定义正则。筛选器里有正则选项,写 ^https://example.com/de/ 就把范围钉死了,不用担心 /design/ 混进来。子域同理,写 ^https://de.example.com/。正则不难,但容易写错一个转义符然后得到一个空结果,空结果最坑的地方是它看起来像“这个语言没流量”。
填完筛选器,日期区间必须锁死。语言之间的对比只有同一区间才有意义,这话听起来像废话,但我确实见过拿“德语版最近 28 天”去对比“法语版上个月”的表格,那种对比得出的结论不如没有。
还有个限制得提前知道:GSC 不能把两个路径筛选并排画在一张图上做对比。你只能筛一个、看一个、记一个,或者导出 CSV 自己拼。我一般选导出,因为手抄数字抄到第三行就开始出错。
先看曝光有没有,再看排名高不高
这是我整套流程里唯一真正重要的顺序。
新上线的语言版本,你打开效果报告,看到曝光是一条贴着零的线,第一反应不该是“这个语言的关键词竞争太激烈”,而是“这批 URL 可能根本没进索引”。
这两件事在 GSC 里长得几乎一样。区分它们不需要技巧,只需要换一个报告——网页索引编制。看“已发现”和“已抓取但尚未编入索引”这两类的数量。如果 /jp/ 下面几十个 URL 全堆在“已发现”里,那问题在抓取和内部链接,跟排名一点关系都没有。你在效果报告里再怎么拆筛选器、再怎么换日期区间,都问不出答案。
我的判断标准很土:给一个新语言目录四到六周,如果曝光量还在个位数徘徊,同时索引报告里 URL 状态没有推进,那就停下来查技术面——hreflang 是不是指向了不存在的地址、语言目录有没有被 robots 挡住、sitemap 里有没有把这些 URL 带进去。曝光是结果,索引是前提,顺序颠倒就是在错误的房间里找钥匙。
等曝光确实起来了,再去看查询层面。这时候“网页”筛选器留着不动,切到“查询”标签页,它会告诉你这个语言版本靠哪些词进来。我通常把德语和英语的同一条筛选轮流看:如果德语版的曝光词全是品牌词,说明内容还没被当成独立语言版本对待;如果长尾词开始出现本地语言写法,那才是真的在跑。
国际化定位报告:hreflang 报错会伪装成“这个语言没人搜”
这份报告在“旧版工具和报告”里,很多人从来没点开过。它做两件事:报 hreflang 错误,以及给子目录或子域设置国家定向。
hreflang 报错和流量之间的关系,比大多数人想得直接。常见的一种现象是:德语目录有曝光,但进来的查询全是英文,落地页却是德语页面。这时候去看国际化定位报告,往往能看到“缺少返回链接”或者“其他语言版本未确认”这类提示。Google 没搞清这几个版本的关系,就自己挑了一个去展示。
我的处理顺序是:先在效果报告里确认异常存在(哪个语言目录的曝光词语言不对),再去国际化定位报告里找对应的 hreflang 报错,改完等一轮重新抓取,再回效果报告用同样的筛选复核。这个闭环不复杂,但需要两边对着看,只看一边永远对不上。
国家定向那个设置我要提醒一句:它影响的是国家/地区信号,不会把某个语言版本“绑定”到某个国家。德语内容不只有德国人在搜,瑞士和奥地利也在里面。为了流量去设国家定向,通常是把范围做小,不是做大。我一般不动它,除非有明确的商业理由。
抽样和取整:哪些差异别当真
效果报告里的数字是抽样加取整的。这句话文档里写着,但只有当你开始横向对比语言版本,它才会真正咬你一口。
两个流量都不大的语言目录,曝光差个百分之几、几十次,什么都说明不了。我给自己划了条线:低于某个量级的版本之间只比趋势,不比数值;要比数值,至少看三个月的曲线形状,而不是两个点。趋势是稳的,抽样噪声是抖的,肉眼能分出来。
别拿 GSC 和 Analytics 对账
曝光和会话不是一回事。两边的口径、抽样、去重规则都不一样,对不上是常态。对不上的时候,我信 GSC 看相对关系,信 Analytics 看绝对行为,不指望它们互相验证。硬要对账,最后只会把两个工具都怀疑一遍。
还有一个小坑:加筛选之后表格顶部的总计会跟着变,那个数字是被筛选后的子集,不是全站。我吃过一次亏,截图发给同事,对方以为整个站点掉了一半,其实只是筛选器没清。
我最后怎么把结论落下来
我不在 GSC 界面里直接下判断。每周我会把几条固定的路径筛选各导出一次,把曝光、点击、平均排名三列并排放进一张表,语言做行,周做列。看的是这周哪个语言的行往上走了,哪个平了。
只有某个语言连续几周都在涨,而且索引报告里它的 URL 状态是干净的,我才会说“这个语言版本起来了”。剩下那些小波动,就让它们待在表里,不给结论。
这套做法没什么技巧,麻烦的地方全在“先验证前提”这一步。大多数人跳过它,是因为 GSC 的界面太容易让人直接读结论了——筛选器一填,一张表就出来,数字摆在那儿,看着就像答案。但它只告诉你曝光是多少,不告诉你这些曝光是不是来自你以为的那些页面。