内容缺口是站点停滞的地方。你知道还有东西可写,但说不出缺什么。AI 在这件事上很强——前提是你给它对的地图。
问题背景
大多数”找内容缺口”的建议都让你爬竞品。这招用一次还行。长期更好的方式是把你自己的 pillar/cluster 结构 + 你已经部分排上的查询喂给 AI,问它哪儿有洞。这样可行是因为 AI 在”补全已有结构”这件事上确实很强。
判断标准
- 在稳定发布,但感觉明显的主题写得差不多了。
- 能用三五句话讲清楚你站的 pillar 主题。
- 有 Search Console 权限,至少 3 个月数据。
- 过去 60 天没正式做过缺口分析。
实操步骤
-
导 sitemap 为扁平 CSV。在终端跑:
# 抓 sitemap,提 URL 和 last-modified curl -s https://yoursite.com/sitemap.xml \ | grep -E "<(loc|lastmod)>" \ | sed -E 's/<\/?(loc|lastmod)>//g; s/^[[:space:]]+//' \ | paste - - \ > sitemap_urls.tsv # 用 Python 抓每个 URL 的 <title>(要 ~5 分钟) python3 -c " import csv, requests, re from bs4 import BeautifulSoup with open('sitemap_urls.tsv') as f, open('articles.csv','w') as out: w = csv.writer(out) w.writerow(['url','slug','title','lastmod']) for line in f: url, lastmod = line.strip().split('\t') html = requests.get(url, timeout=10).text title = BeautifulSoup(html,'html.parser').title.string.strip() slug = url.rstrip('/').split('/')[-1] w.writerow([url, slug, title, lastmod]) "产物
articles.csv有 4 列:url, slug, title, lastmod。 -
打 pillar/cluster 标签。在 Sheets / Excel 加 2 列
pillar和cluster,手动填一轮(500 篇 < 1 小时)。如果你的网站本就有 category,可以直接从 URL 提:# 例:URL 形如 /zh/articles/indie-dev/foo/ awk -F'/' 'NR>1\{print $0","$5\}' articles.csv > articles_with_pillar.csv -
从 Search Console 拉 Top 200 查询。Search Console → Performance → Queries → Export → “Download CSV”。或用 GSC API(
pip install searchconsole):import searchconsole account = searchconsole.authenticate(client_config='client_secret.json') webproperty = account['https://yoursite.com/'] report = webproperty.query.range('today', days=-90).dimension('query').limit(200).get() report.to_dataframe().to_csv('gsc_top_queries.csv', index=False)CSV 包含
query, clicks, impressions, ctr, position。重点关注impressions > 100 且 position > 10的——有曝光但没排名上去,那是覆盖缺口信号。 -
喂给 AI 做缺口分析。开 Claude / ChatGPT 长上下文模型,把 3 个文件粘进去 + 用这个 Prompt:
附件 1:articles_with_pillar.csv(当前网站全部文章 + pillar 标签) 附件 2:gsc_top_queries.csv(最近 90 天高曝光查询) 做缺口分析: 1. 对每个 pillar,列出在 GSC Top 200 里**有曝光但当前文章都没正面回答**的 5 个查询 - "正面回答" 定义:文章 title 或 URL slug 里直接包含该查询的核心词 - 输出格式:| pillar | 查询 | 当前曝光 | 当前 position | 现有文章覆盖度(无/部分/完整) | 2. 对每个 pillar,列 5 个 GSC 里**没出现但应该出现**的子主题 - 依据:同类竞品在排名,或你的现有文章引用了但没单开 - 输出格式:| pillar | 缺失子主题 | 为什么应该有 | 1 个种子标题 | 3. 列 5 个**跨 pillar 桥接主题**——能把 2 个 pillar 串起来的话题 - 例:indie-dev pillar + ai-tools pillar → "用 AI 帮独立开发者审 App Store 截图" - 这种文章通常差异化最强 不要 hallucinate 文章 / 查询,只用我提供的数据。 -
用行业经验过滤。把 AI 输出过一遍,对每条问自己:
- 这个主题真的有人搜吗?(不是 AI 凭语义编的) - 我能在这个主题上写出比前 3 名更具体 / 更实操的角度吗? - 这个主题写出来会有商业价值吗(联盟 / 转化 / 品牌)? - 已有 1 篇就够还是要 cluster 3-5 篇?任一答案 “否” 就剔除。
-
跨 cluster 桥接二次提问:
基于上一轮缺口分析的产出,再列 8 个 "跨 pillar 桥接主题": - 每个主题必须能自然挂在 2 个 pillar 下(不是硬凑) - 给每个主题写: - 标题(动词开头 / 数字开头) - 核心问题(≤14 字) - 主要受众(pillar A 的人 + pillar B 的人) - 内链机会(能往现有的 X 篇文章打链) 这类文章往往拿到的是"既懂 A 又关心 B"的精准流量,竞品很少同时占两边。 -
每个缺口主题写”角度卡”:
对下面这个缺口主题:<title> 1. 搜一下当前 Google 前 10 名都怎么写(标题、首段、结构) 2. 列出他们的 3 个共同盲区(都没回答 / 都答得敷衍 / 都过时) 3. 给我 1 个"反共识 + 第一人称 + 数字"的开篇视角 4. 列 5 个截止 publish 我必须收集的具体证据(数字 / 截图 / 工具版本号) -
写回选题池——产物落到
content_pipeline.csv:slug,title,pillar,cluster,target_keyword,intent,angle_note,evidence_needed,priority ai-app-store-screenshot-review,用 AI 审 App Store 截图,indie-dev,app-store-launch,app store screenshot review ai,how-to,反共识 + 实测,截图前后对比 3 套,P1 ...priority用 P1(GSC 高曝光 + 我能写得最好)/ P2(桥接主题)/ P3(探索性)。每周从 P1 拉 3 篇开写。
容易踩的坑
- 不喂数据让 AI 凭空建议。它会给一堆”这个行业大家都搜的东西”,但漏掉你站真正适合的角度。
- 跳过手动 pillar 标注。没结构 AI 给不出结构化的缺口。
- 看到缺口就追。大多数”缺口”是缺口是因为没人搜,要核实意图。
- 只做一次。Search Console 数据一直在变,缺口分析每季度跑一次。
- 相信 AI 给的搜索量估计。它在这块幻觉很严重。
这篇适合谁
已经 50+ 篇、有真实 pillar 结构、有 Search Console 历史的站。
这篇不适合谁
没 Search Console 数据的新站——先把前 30 篇写出来再说优化。
FAQ
- 要爬竞品吗: 可以作为补充,但你自己的数据信号比照搬竞品强。竞品数据用来验证不是用来起手。
- 一次性应该排多少缺口主题: 8-15 个比较健康。再多就会为了清单选不够好的题。
- AI 能帮我排优先级吗: 能给意见,但最终优先级要看你的优势和成本——这两个 AI 看不到。
- AI 推荐的缺口我已经在列表里了怎么办: 好信号,说明缺口是真的,提优先级。