谷歌SEO 竞品分析实战:用数据拆解对手的内容、外链与关键词缺口
一、先纠正认知:竞品分析不是抄词,是找结构性差异
大部分人做竞品分析的流程是:打开对手网站看一眼 → 记下几个关键词 → 回来照着写一篇。这个做法的问题在于,你只看到了结果,没看到对手的页面结构和你缺的部分。
真正有价值的竞品分析,回答的是三个问题:
- 对手覆盖了哪些主题和页面类型,我完全没有?
- 对手在哪些关键词上有排名,我连展示都没有?
- 对手靠什么类型的链接和内容获得权重,我的差距在哪一环?
第一类差距要靠新建页面补,第二类要靠优化已有页面追,第三类要靠长期内容与推广积累——三类动作策略完全不同,所以必须先分类,再动手。
二、选对竞品:分三类,各看各的
竞品不是名气越大越好,选错了整份分析都白做。
| 竞品类型 | 定义 | 分析重点 |
|---|---|---|
| 直接竞品 | 卖同类产品/服务、同市场 | 关键词缺口、转化页结构 |
| SERP 竞品 | 搜索核心词时同屏出现的站 | 内容形态、SERP 特性占位 |
| 内容型竞品 | 同类目内容站/博客 | 主题覆盖、内容地图 |
选取标准:
- 优先选同量级的站。对手站权重远高于你,给你的启示多半是"他做得早",不可执行。
- 核心词 SERP 重叠度高才有分析价值:拿 10 个核心词,看有多少站的页面反复出现。
- 每类竞品选 3-5 个即可,超过 5 个数据噪音大于收益。
三、四张对比表,搭出你的竞争地图
分析别停在感觉层面,落到表格里才有行动价值。
3.1 关键词缺口
| 关键词 | 对手排名 | 我方排名 | 意图 | 差值判定 |
|---|---|---|---|---|
| blue widget for sale | 3 | 未收录 | 交易 | 新建页面 |
| blue widget review | 6 | 22 | 商业 | 优化追排名 |
| how to choose blue widget | 8 | 未收录 | 信息 | 新建内容 |
判定规则:对手前 10、你未收录 → 新建;对手前 10、你 11 名外 → 优先优化(已有基础,投入产出比更高);双方都差 → 先不管。
3.2 内容缺口
| 页面类型 | 对手是否有 | 我方是否有 | 优先级 |
|---|---|---|---|
| 产品对比页 | 有(5 篇) | 无 | 高 |
| 购买指南 | 有 | 有(1 篇) | 中(补齐数量) |
| 案例页 | 有 | 无 | 高(E-E-A-T 相关) |
| FAQ 聚合页 | 有 | 无 | 中 |
列出页面类型而非具体文章,你补的是"结构缺口",不是"复制某篇"。
3.3 结构与 URL 模式对比
| 维度 | 对手 | 我方 | 说明 |
|---|---|---|---|
| 分类层级 | 三级 | 两级 | 对手靠中间层做了更多长尾 |
| URL 结构 | /category/sub/product | /product | 结构化更利于分类词 |
| 内链密度 | 每页 30+ 条 | 每页 8 条 | 影响爬取与权重流转 |
| 分页/筛选 | 有可索引分页 | 筛选参数未处理 | 影响收录量 |
3.4 外链来源对比
| 链接类型 | 对手占比 | 我方占比 | 行动 |
|---|---|---|---|
| 行业媒体 | 高 | 低 | 做可被引用的数据/报告 |
| 客户站/合作伙伴 | 中 | 低 | 商务合作置换 |
| 目录/低质站 | 低 | 高 | 清理并转向高质量 |
外链结构比拼的是质量分布,不是总数。对手 100 条行业链接,价值高于你 1000 条目录链接。
四、附赠脚本:抓 sitemap 对比两站内容覆盖
不用工具也能做基础内容对比:解析两站 sitemap,对比 URL 数量与路径分桶。先装依赖:
pip install requests
import re
from collections import Counter
import requests
def get_urls(sitemap_url, depth=0):
"""支持 sitemap index 递归一层"""
xml = requests.get(sitemap_url,
headers={"User-Agent": "Mozilla/5.0"},
timeout=30).text
locs = [u.strip() for u in re.findall(r"<loc>(.*?)</loc>", xml, re.S)]
if "<sitemapindex" in xml and depth < 2:
urls = []
for s in locs:
try:
urls += get_urls(s, depth + 1)
except Exception as e:
print("跳过", s, e)
return urls
return locs
def bucket(urls, top_n=3):
"""按路径第一段分桶,统计各板块页面数"""
c = Counter()
for u in urls:
path = re.sub(r"^https?://[^/]+", "", u).strip("/")
seg = path.split("/")[0] if path else "(root)"
c[seg] += 1
return c
mine = get_urls("https://yourdomain.com/sitemap.xml")
rival = get_urls("https://competitor.com/sitemap.xml")
print(f"我方页面数: {len(mine)} 对手页面数: {len(rival)}")
bm, br = bucket(mine), bucket(rival)
all_keys = set(bm) | set(br)
print(f"\n{'板块':<24}{'我方':>8}{'对手':>8} 差距")
for k in sorted(all_keys, key=lambda x: -(br.get(x, 0) - bm.get(x, 0))):
a, b = bm.get(k, 0), br.get(k, 0)
flag = " <-- 缺口" if b - a >= 10 else ""
print(f"{k:<24}{a:>8}{b:>8}{flag}")
输出解读:对手某板块页面数明显多于你(差 10 页以上),就是内容缺口信号,直接对应第三张表的"结构缺口"。注意 sitemap 只反映已提交页面,不是全部内容,结论要留余量。
五、关键词缺口的获取方式
三种做法,按成本从低到高:
- GSC 反推法(零成本):把你和对手共有的核心词逐个在 GSC 查自己位置;对手排名靠前而你无展示,即为缺口。
- SERP 人工抽查法:核心词搜一遍,记录前 10 站及其页面类型,对比自己是否有对应类型页面。
- 工具批量法:用竞品分析工具的 gap 功能批量导出,效率最高但付费。
顺序建议:先用方法 1 捞出一批明确的缺口词,再用方法 2 验证意图,最后才考虑付费工具。多数独立站的缺口在免费方法里就能找全。
六、从差异到动作:优先级矩阵
发现缺口不是终点,怎么排序才是。按"价值 × 难度"四象限决策:
| 低难度 | 高难度 | |
|---|---|---|
| 高价值 | 立即做:补齐对比页、FAQ 页 | 排期做:行业报告、内容体系化 |
| 低价值 | 顺手做:批量补 metadata | 不做:正面刚头部大词 |
决策规则:
- 先做「高价值 × 低难度」——通常是对比页、购买指南、FAQ 这类结构化内容。
- 对手已有 5-10 篇的主题,你至少补齐 3 篇形成主题集群,单篇没有竞争力。
- 对手靠十年积累的大词别正面冲,绕到长尾切入再逐步上移。
七、六个常见坑
| 坑 | 后果 | 正解 |
|---|---|---|
| 只盯行业头部 | 结论不可执行 | 选同量级竞品 |
| 把对手低质页当标杆 | 拉低自身质量 | 只对标对手排名前 20% 的页面 |
| 忽视 SERP 意图 | 写了不匹配的内容 | 先看 SERP 全页形态再动笔 |
| 只比关键词不比结构 | 补不出体系 | 四张表都要填 |
| 数据只取一次 | 结论过期 | 每季度更新对比 |
| 分析完不排期 | 白做 | 直接产出内容排期表 |
八、FAQ
Q1:没有付费工具能做竞品分析吗?
能。sitemap 对比 + GSC 反推 + SERP 抽查,足够覆盖 80% 的缺口识别需求。付费工具主要省时间。
Q2:竞品数量选多少合适?
每类 3-5 个。核心词 SERP 里反复出现的站优先。
Q3:对手的内容我要不要一比一复刻?
不要。复刻只会做出弱化版。正确做法是补页面类型、补深度、补一手经验,做出对手没有的部分。
Q4:分析周期多久一次?
季度一次足够。核心词排名与页面结构变化没那么快,太频繁只是重复劳动。
九、行动清单
- 按三类竞品各选 3-5 个,写下选取理由。
- 跑 sitemap 对比脚本,标出对手页面数领先的板块。
- 用 GSC 反推法列出 20 个关键词缺口,标注意图。
- 填完四张对比表,形成竞争地图。
- 按优先级矩阵排出本月行动清单,落到具体负责人与日期。
- 季度复查并更新对比数据。
顺手把这篇的 sitemap 对比脚本、四张对比表模板和优先级矩阵整理成了一份学习笔记,评论区扣「笔记」我私发给你。觉得有用点个赞收藏,做内容规划前先拆一遍对手。

902

被折叠的 条评论
为什么被折叠?



