很多人判断收录,习惯先在搜索框里敲 site:example.com,看一眼数字,再打开后台的索引覆盖率报告,结果两个数差了几倍,于是开始怀疑是不是被降权或者数据出错了。多数情况下,这只是两套统计口径的差别。
两个数字分别是怎么来的
site 指令返回的是一个近似估算值。它来自搜索结果的抽样与聚合,不是精确清点。为了响应速度,系统会做取舍:相似结果可能被折叠,某些目录被省略,估算值还会随查询时间、地区、设备以及附加查询词而变化。同一个站,不同人不同时间敲同一条指令,看到不同的数字是正常的。
索引覆盖率报告走的是另一套流程:爬虫抓过的 URL 进入处理队列,按状态归类,后台再汇总展示。它的单位是 URL,不是页面,也不是“搜索结果条数”。口径不同,数字自然对不上。
常见的几类偏差来源
- 重复与相似结果被折叠:site 查询里,同一模板批量生成的相似页面可能只展示一条,数字偏小。
- URL 与页面并非一一对应:参数、大小写、结尾斜杠不同,可能被记成多个 URL,报告里的数字偏大。
- 状态归类有延迟:页面被删除或加上 noindex 之后,报告里仍可能挂着旧状态一段时间。
- 统计范围不一样:已抓取但未编入索引、已发现尚未抓取的 URL,不会出现在 site 查询结果里,却会出现在后台报告里。
- 查询本身不精确:加上关键词或地区词之后,site 的数字会明显变化,说明它更接近一次检索结果,而不是一次清点。
判断页面是否进了索引,别只看总数
总数对不上,不代表你的页面没被收录。更可靠的做法是抽查具体 URL:
- 复制完整 URL(含协议和结尾形式)直接搜索这条链接,能稳定命中通常说明它已被处理。
- 在后台的“已编入索引”里按目录或路径筛选,看关键栏目有没有被整段漏掉。
- 把服务器日志里的抓取记录和索引状态对照,区分“没抓”和“抓了没收”。
- 检查页面自身:能否直接访问、状态码是否正常、是否误加了 noindex、canonical 是否指向了别的地址。
总量是趋势指标,不是验收标准。收录数量会被站内相似度、外链、内容质量等多种因素影响,没有人能保证某个数字。
抓取和收录仍然要分开看
在纠结数字之前,先确认这两件事的区别:抓取是爬虫来取走内容,收录是取走之后判断是否值得进索引。日志里出现 200,只说明抓到了;后台显示“已抓取但未编入索引”,说明抓了但没被收录。两者混在一起看,很容易把抓取问题误判成收录问题,接下来的优化方向也会跑偏。
日常该怎么用这两个数字
把 site 指令当成粗略的体感工具:看趋势,看某个目录是否几乎不出现。把索引覆盖率报告当成排查工具:重点看“已抓取但未编入索引”“已发现尚未抓取”这两类的比例和变化,因为它们直接指向可调整的环节。
如果两个数字长期差距很大,可以先做三件事:确认站内是否存在大量参数化 URL 和重复模板页;确认 sitemap 里的 URL 都能正常访问且返回 200;确认重要页面没有被内链孤立。这三步做完,再去纠结数字会有效率得多。