搜索全站
Google SEO 11 分钟阅读

搜索意图判断方法:从 Google 结果页形态反推内容该怎么写

同一个关键词,Google 展示的结果形态决定你该写什么类型的内容。本文给出从结果页特征反推意图的方法,并附一个可批量给查询打意图标签的脚本。

U
UFO_PF 2020-06-10 · 阅读 11 分钟
搜索 GOOGLE SEO
阅读提示
本文约 4,085 字,预计阅读 11 分钟。文中命令与配置均经过实测,可直接参考执行。

引言:写得很详细,排名却死活上不去

一篇 3000 字的教程,结构完整、截图齐全,关键词也出现在标题和 H2 里,但半年过去排名一直在第 15 名左右晃。打开 Google 搜这个词,前 10 名全是电商分类页和测评列表,没有一篇教程——这就是典型的意图错配:用户想「买」,你给他「学」。再怎么优化内容深度都没用,因为 Google 已经通过大量用户行为判断出,搜这个词的人想要的是商品对比和购买入口。

搜索意图(search intent)判断是关键词研究之后、动笔之前必须做的一步,也是最容易被跳过的一步。Google 的质量评估指南把查询按目的分为 Know(求知)、Do(操作)、Website(找站点)、Visit-in-person(到店)几大类,实操中通常简化为信息型、导航型、商业调查型、交易型四类。判断意图最可靠的依据不是关键词本身,而是当前结果页的内容形态——Google 已经用 billions 次用户行为替你做了分类。

原理分析:结果页特征如何暴露意图

SERP 特征 透露的意图 应该写的内容形态
精选摘要 / 「大家也在问」 信息型,要直接答案 问题式 H2 + 40–60 字直答 + 展开
大量教程/博客 信息型 深度教程、步骤拆解
视频结果占比高 操作型,要演示 视频 + 图文互补
测评、对比、”best X” 标题 商业调查型 横向对比、参数表格、优缺点
购物结果、商品卡片、价格 交易型 分类页/产品页,参数、库存、价格
本地商家包 到店型 落地页 + 地址、营业时间、地图
论坛(Reddit/Quora)排名靠前 经验型,官方内容缺位 真实体验、案例、避坑

判断时不要只看一个特征,要看组合。比如同时出现购物结果和大量测评,说明这个词处在「想买但还在比」的阶段,最合适的是对比测评页,而不是产品页也不是教程。再比如论坛内容排进前 5,通常说明现有商业内容质量不足或用户想听真实经历,这时候一篇有具体数据和个人体验的文章反而容易上去。

还有一个实用技巧:看结果的时效性。如果前 10 名的文章都标着最近更新日期,说明这个话题需要持续维护;如果全是五年前的老帖还排着,说明内容缺口明显,机会很大。

保姆级实操

步骤 1:手动搜一遍候选词,记录结果页特征。 用无痕窗口、目标国家 IP(或用 Google 的 gl/hl 参数),逐条记录:前 10 名的页面类型、是否有购物结果、是否有视频、是否有 PAA、是否有论坛。

步骤 2:把意图标签批量打到自己的词库上。 手工判断几百条太慢,先用规则做初筛,再人工复核:

// intent-classify.mjs:给 Search Console 导出的查询批量打意图标签
import { readFileSync } from 'node:fs';

const lines = readFileSync('gsc_queries.csv', 'utf8').trim().split('\n').slice(1);
const rules = [
  ['transactional', /(buy|price|cost|cheap|order|购买|价格|多少钱|报价|下载)/i],
  ['commercial',    /(best|vs|versus|review|alternative|compare|对比|评测|推荐|哪个好)/i],
  ['navigational',  /(login|dashboard|official|官网|登录|后台|控制台)/i],
  ['informational', /(how|what|why|tutorial|guide|example|怎么|如何|是什么|教程|区别)/i],
];

const stat = {};
for (const line of lines) {
  const [query, clicks, impressions] = line.split(',');
  if (!query) continue;
  const hit = rules.find(([, re]) => re.test(query));
  const intent = hit ? hit[0] : 'unknown';
  stat[intent] ??= { count: 0, impressions: 0, clicks: 0 };
  stat[intent].count += 1;
  stat[intent].impressions += Number(impressions) || 0;
  stat[intent].clicks += Number(clicks) || 0;
}
console.table(stat);

步骤 3:把意图映射到内容模板。 这是把判断变成产出的关键一步,可以用一份配置固化下来:

{
  "informational": {
    "template": "教程/指南",
    "title_pattern": "如何{动作}:{对象}的完整步骤",
    "must_have": ["问题式 H2", "40-60 字直答", "步骤截图", "常见踩坑"],
    "cta": "订阅/内链到下一环节"
  },
  "commercial": {
    "template": "对比测评",
    "title_pattern": "{A} vs {B}:{维度}对比评测({年份})",
    "must_have": ["参数对比表", "实测数据", "适用人群", "优缺点清单"],
    "cta": "查看报价/试用"
  },
  "transactional": {
    "template": "产品页/分类页",
    "title_pattern": "{产品名} — {核心卖点} | {品牌}",
    "must_have": ["价格", "库存状态", "参数表", "配送与退换"],
    "cta": "加入购物车"
  },
  "navigational": {
    "template": "登录/文档入口",
    "title_pattern": "{产品名} 登录与文档中心",
    "must_have": ["入口链接", "常见问题", "联系支持"],
    "cta": "进入后台"
  }
}

步骤 4:检查现有页面是否与意图匹配。 逐个打开排名在 8–20 位的页面,看它的形态与该词的 SERP 主流形态是否一致。不一致的话,改标题与结构调整往往比加字数更有效。

步骤 5:一个关键词只对应一个页面。 同一意图的多个词应该合并到一篇内容里,不同意图的同名词(比如「X 是什么」和「X 价格」)必须拆成两篇,否则 Google 无法判断该用哪个。

步骤 6:复核与迭代。 发布 4 周后在 GSC 里看展现与排名变化。如果展现涨了但点击率很低,通常是标题/描述与意图不匹配;如果展现本身没涨,说明形态仍然不对。

常见踩坑

  1. 按字面猜意图,看到「教程」就写教程,不看 SERP 实际结果。
  2. 把商业调查词做成产品页,用户还在比较阶段,跳出率极高。
  3. 不同意图的词塞进同一篇,页面定位模糊,两个词都排不上去。
  4. 忽略地域差异,同一个词在美国是交易型,在德国可能是信息型。
  5. 只看头部结果不看排序结构,比如前 3 名是教程、后 7 名是电商,说明意图正在迁移。
  6. 案例:某站为「best wordpress caching plugin」写了一篇 4000 字的长教程,半年卡在第 14 名。分析 SERP 后发现前 10 名全是对比测评,且都带参数表格和实测数据。改成表格化对比 + 实测 TTFB 数据后,六周进入第 6 名,点击率从 0.8% 涨到 3.4%。
  7. 用中文思维套英文搜索习惯,英文用户更常直接搜 “how to X” 短句,中文用户常搜名词组合,词库要分别处理,这一点在 长尾关键词挖掘 里会展开。

总结

意图判断的唯一可靠依据是结果页本身,不是关键词的字面。执行流程:手动搜一遍记录 SERP 特征 → 用规则脚本给词库批量打标签 → 按标签套用对应的内容模板与 CTA → 核对现有页面形态是否一致 → 发布后看展现与点击率分别的变化。判断标准是「你的页面形态是否属于该 SERP 的主流形态」,不属于就换形态,而不是加字数。做完这一步,词库才算真正可用,后续的主题组织参考 主题集群建设,词本身的筛选参考 关键词研究工具组合。

U
UFO_PF作者

专注 WordPress 生态的实战作者,内容以「可复制、可验证」为第一原则。

留下你的想法

邮箱地址不会被公开。带 * 的为必填项。