很多站长习惯把三个数字放在一起比:CMS 后台发布过多少内容、sitemap 里提交了多少条 URL、搜索后台显示多少条已编入索引。这三个数字几乎永远不会相等。差异本身并不说明站点出了问题,真正需要弄清楚的是——差在哪一环。
三套数字的口径本来就不一样
CMS 后台数的是“内容记录”
它统计的是发布动作,不是 URL。草稿、定时未发布、已经下线、被设置了 noindex 的页面,往往也算在内。如果同一篇内容同时存在多个版本(多语言、PC 与移动、带参数的地址),CMS 里可能只有一条记录,线上却对应好几个地址。
sitemap 数的是“你希望被抓的 URL”
理论上一份健康的 sitemap,应该只放可索引、返回 200、内容完整的地址。但实际维护中常常混进失效链接、重定向地址、追踪参数地址;反过来,新上线的栏目也经常忘记补进去。所以这个数字是“意图”,不是“结果”。
索引报表数的是“搜索系统认为能出现在结果里的 URL”
它同时受抓取情况和质量判断影响。相似内容被合并到主版本、低价值页面被判定不值得收录,都会让这个数字低于你提交的数量。它反映的是结果,不是你的期望。
常见的差异来源
- 一个内容对应多个 URL:分页、筛选、排序、打印页、带追踪参数的地址
- 页面被 noindex 或 robots.txt 拦截,但仍然留在 sitemap 里
- 已下线页面没有从 sitemap 移除,长期挂着失效地址
- 重定向链上的中间地址曾经被抓取过,仍留在统计中
- 重复或高度相似的内容被合并,只保留一个主版本
- 新页面还没被抓取,或者抓取后仍在等待处理
- sitemap 分片更新滞后,索引里保留着旧分片的地址
建议的核对顺序
- 先固定口径。选一个时间点,导出 sitemap 中的全部 URL,逐条确认状态码,去掉非 200 的地址,得到一份“可索引 URL 基线”。
- 再和 CMS 对比。找出 CMS 里有、基线里没有的页面。这类通常是被 noindex、被 robots 拦截,或者压根没进 sitemap,属于可控问题。
- 最后看索引报表。从基线里按栏目、按模板抽样,去查这些 URL 是否真的被索引,而不是只看总数。
- 分三类记录。抓取问题、质量合并、技术拦截分开归档,避免所有差异都混成一句“收录不好”。
哪些差异可以暂时不管
索引数量少于 sitemap 数量是常态,不是故障信号。
如果差异主要集中在参数页、分页、筛选页、已被合并的重复页,以及本来就设置了 noindex 的页面,通常不需要专门处理,把精力放在内容页上更划算。
什么时候才需要动手
两种情况值得排查:一是核心内容页(栏目主页、正文页)长期不在索引里,或者反复处于已抓取未编入索引的状态;二是索引里出现大量你并不希望被收录的地址,比如站内搜索结果页、测试页、带参数的组合页。这两种情况说明问题出在 URL 管理或页面质量上,而不只是统计口径差异。
把这三个数字当成三张用途不同的报表,而不是互相校验的答案。核对的意义在于定位差异来源,而不是把它们调成一样。