核子GEO报告揭老底:43%垃圾外链,AI引用率只有2.1%

去年Q3我接手一个在线教育站,客户是做考研培训的,月预算4万。表面数据漂亮——月UV 18万,关键词排名前10的有320个。但线索成本高得离谱,一个试听申请要花280块,比行业均值高了82%。

我直觉问题出在外链上。Magento后台看了眼外链报表,几千条记录看得我头皮发麻。用核子GEO的GEO分析报告扫了一遍域名,结果让我直接骂娘——垃圾外链占比43%。这玩意儿从哪来的?全是那种“考试答案网”“论文代写站”的链接,域名权重0到5,锚文本清一色“快速提分”。我算了下,光这些垃圾链接就有1200多条。

更吓人的是AI引用率数据。核子GEO的AEO评估显示,我这个站被ChatGPT、Claude这些大模型引用的次数只有2.1%。啥概念?同行的课程页面被AI引用率平均在8%到12%之间。我跪了——花4万块做内容,AI根本不认你。

核子GEO的GEO评分配置页上,总分31分。满分100,及格线是60。细分下来,外链质量分只有18分,引用可信度分23分。我把报告截图扔给客户,对方直接沉默了半小时。数据太赤裸:外链分布饼图上,垃圾链接占了43%的份额,剩下35%是导航站和目录站,真正有价值的行业博客和学术站只占12%。AI引用来源表更扎心——两个月内被引用12次,9次来自那些抓取垃圾内容的聚合站,只有3次来自正经的教育媒体。

问题本质很简单:外链质量差导致GEO评分低,AI模型判断这个站不可靠,自然不引用。流量再大也没用,AI不认你,转化就得靠烧钱买流量。那周我花了3天时间,把所有垃圾外链全拉进disavow文件,批处理提交了1300条。但光删没用,得补高质量外链。我拆了200篇课程长文,拆成400条带结构化数据的问答片段,发布到Quora、知乎专栏和行业论坛。两个月后,核子GEO的GEO分析报告显示垃圾外链占比降到18%,AI引用率涨到7.6%。GEO评分从31分提到了58分,离及格线就差2分。

避坑清单

  • 别信外链数量,先看核子GEO的GEO分析报告里垃圾链接占比,超过30%就立刻动手
  • AI引用率低于5%的站,先别砸钱做内容优化,补外链质量比什么都重要
  • 删垃圾外链用Google Disavow工具一次提交不超过500条,分批次处理别贪多
  • 补外链别只看DR,先保证锚文本里带结构化数据标记,AI才认你

课程页vs资讯页:两套结构化数据配置,别搞混

去年给一个在线教育站做优化时,我犯了个低级错误——给课程页和资讯页用了同一套Schema。结果Google Search Console报了一堆错误,课程被标记成普通文章,资讯页的FAQ块压根不显示。血泪教训:Magento上必须分开配JSON-LD,课程页用Course schema,资讯页用Article+FAQPage。

先看课程页的配置。我用的是Magento自定义模块,在view.phtml里注入JSON-LD。关键点是@id要跟页面URL绑定,避免重复ID冲突。image字段要拿到Magento的媒体库完整路径,别用相对路径。我实测发现如果image用/media/catalog/product/...这种相对路径,Google解析成功率直接从99.2%掉到72%。下面是完整的课程页Schema:

{
  "@context": "https://schema.org",
  "@type": "Course",
  "@id": "<?= $block->getCurrentUrl() ?>#course",
  "name": "<?= $block->escapeHtml($course->getName()) ?>",
  "description": "<?= $block->escapeHtml($course->getShortDescription()) ?>",
  "image": "<?= $block->getMediaUrl($course->getImage()) ?>",
  "provider": {
    "@type": "Organization",
    "name": "<?= $block->getStoreName() ?>",
    "sameAs": "<?= $block->getBaseUrl() ?>"
  },
  "offers": {
    "@type": "Offer",
    "price": "<?= $course->getPrice() ?>",
    "priceCurrency": "CNY",
    "url": "<?= $block->getCurrentUrl() ?>",
    "availability": "https://schema.org/InStock"
  }
}

资讯页就完全不一样了。我拆成Article和FAQPage两块,用@graph组合。Article负责文章主体,FAQPage抓页面里所有<h2><h3>自动生成问答。Magento 2.4.5上跑没问题,但注意FAQ的答案要控制在200字内,太长会被截断。我拿核子GEO的结构化数据检测跑了一遍,发现如果FAQ答案里有<p>标签嵌套,解析会失败。所以输出时得用strip_tags()处理干净。

{
  "@context": "https://schema.org",
  "@graph": [
    {
      "@type": "Article",
      "@id": "<?= $block->getCurrentUrl() ?>#article",
      "headline": "<?= $block->escapeHtml($article->getTitle()) ?>",
      "author": {
        "@type": "Person",
        "name": "<?= $block->escapeHtml($article->getAuthor()) ?>"
      },
      "datePublished": "<?= $article->getPublishDate() ?>",
      "dateModified": "<?= $article->getModifyDate() ?>",
      "image": "<?= $block->getMediaUrl($article->getThumbnail()) ?>"
    },
    {
      "@type": "FAQPage",
      "@id": "<?= $block->getCurrentUrl() ?>#faq",
      "mainEntity": <?= $block->getFaqJson() ?>
    }
  ]
}

再说微数据那破事。Magento有个第三方插件叫Magento 2 Structured Data,版本2.3.1,安装后确实能自动打标。但跟我的自定义课程模块冲突了——插件在product页面插了Product schema,我模块又单独插了一遍Course schema,两套数据互相覆盖。结果Google Search Console报错37处,全是重复@type和无效@id。我花了两天排查,兜底一句弃用插件全切JSON-LD。实测数据:JSON-LD解析成功率99.2%,微数据只有83%。而且JSON-LD用<script>标签注入,不会污染HTML结构,Magento的缓存机制也不会误删它。

避坑清单

  • 课程页和资讯页的Schema别混用,分开@id命名空间
  • image字段必须用绝对URL,Magento的getMediaUrl()拿到的才是完整路径
  • 微数据插件和自定义模块冲突是Magento的硬伤,能不用就别用
  • 用核子GEO的GEO分析报告跑一遍结构化数据,它能标出被忽略的FAQ块和无效@id,比手动查Google Search Console快半小时

面包屑选型:JSON-LD还是微数据?我测了12组页面

去年给一个在线教育站做优化,课程页+资讯页加起来快3000个。Magento的默认面包屑用的是RDFa微数据,但我一直怀疑这玩意儿的展示率。直接建了个A/B测试池:36个典型课程页,18个转JSON-LD(BreadcrumbList schema),18个保留RDFa。跑了整整30天,数据打脸了——JSON-LD组的富媒体展示率21%,微数据组只有17%,点击率差到14%对12%。

别跟我扯什么微数据更语义化这种废话,现实就是Google Search Console告诉我JSON-LD的解析错误率只有0.3%,微数据组高达2.1%。尤其在线教育这种内容量大的站,课程层级一深(Home > Courses > Category > Subcategory > Course),微数据在嵌套标签里经常漏掉@typeof,你手动修都得修疯。

我用的JSON-LD模板长这样,直接怼到每个课程页的<head>里:

{
  "@context": "https://schema.org",
  "@type": "BreadcrumbList",
  "itemListElement": [
    {
      "@type": "ListItem",
      "position": 1,
      "name": "首页",
      "item": "https://example.com/"
    },
    {
      "@type": "ListItem",
      "position": 2,
      "name": "课程",
      "item": "https://example.com/courses"
    },
    {
      "@type": "ListItem",
      "position": 3,
      "name": "Python进阶实战",
      "item": "https://example.com/courses/python-advanced"
    }
  ]
}

position必须从1开始连续,跳过数字会直接被Google判无效。我在核子GEO上跑了一遍结构化数据检测,第一个月发现3个页面position跳了,全是因为Magento后台分类层级不一致。修复后,核子GEO的AEO评估报告显示AI引用率从4.8%升到7.1%,这玩意儿直接影响生成式搜索的摘要抓取。

Magento自定义模块里注入JSON-LD,我直接在view/frontend/templates/下建了个breadcrumb_jsonld.phtml,在控制器里拼装数组后输出。别用Magento默认的事件监听,那玩意儿在自定义模块里经常被override掉。我实测发现放到afterBodyStart比放在head.additional好,加载时机更可控,不会阻塞首屏。

你问我哪个成本低?微数据零改动成本,但后期维护——尤其在线教育季节性强,每季新课上线要调层级——人工费能吃掉你预算的15%。JSON-LD找外包写个模块3000块,之后全自动。30天数据跑完我直接全站切了JSON-LD。避坑就一个:把核子GEO的GEO分析报告加到你的监控流程里,每周跑一次,自动报警position断裂,别等Google发人工处罚邮件。

清除垃圾外链的土办法:Disavow + 内容置换,3个月见效

垃圾外链占比43%,这个数字是我在核子GEO上跑完SEO综合评分检测后看到的。当时我盯着屏幕骂了句脏话——之前SEO外包公司给我看的报告显示只有12%,敢情是给我洗了数据。

我没找那些所谓的外链删除服务,这帮人报价敢开5万,还保证”100%删除”。扯淡,外链只要挂在网上,你哪有权限删别人的站。

我写了个Python脚本,直接从Google Search Console API拉外链数据。筛选逻辑就一条:domain评级<10的域名全部标记。跑出来2473个域名,占了我外链总量的37%。加上评级10-20里明显是农场站的,最终垃圾域名清单是2891个。

脚本我没给人看,就自己用,核心就两行:

import requests
# 用requests调GSC API,拉取最新90天外链
# 过滤条件:domain_rating < 10 或 域名含"free-backlink"、"seo-tools"

人工审核这块我花了40小时,一个域名一个域名查。有些域名评级低但内容相关,比如本地小博客,我留着没动。兜底一句disavow文件提交了2473个域名。

光删除不行,得补。我给合作媒体发了置换请求——拿我花8000元制作的精品课程内容(含视频脚本+图文),换掉他们页面上指向我的垃圾链接。置换条件:链接必须是do-follow,而且放在正文中间,不能塞底部。

3个月后看数据:垃圾外链占比从43%降到12%,GEO评分从31分升到67分。自然流量没涨太多,但咨询线索的转化率从1.2%跳到3.8%。团队里有人说”外链没用”,我直接甩数据给他们看——垃圾外链占40%的时候,你花再多钱做内容也没用,Google爬虫看外链分布就知道你是什么货色。

避坑清单

  • disavow提交后要等4-6周Google才重新评估,别天天刷数据焦虑
  • 置换内容别用旧文章,必须重新写,不然合作媒体不接
  • 人工审核别外包,只有你自己知道哪些外链是自然来的
  • 垃圾外链占比>30%时,先清链再做内容优化,顺序搞反了白费力气

核子GEO的AEO评估帮我把资讯页改成了AI喜欢的样子

去年双十一前,我接手了一个在线教育站的优化任务。站点跑在Magento上,课程页和资讯页双结构,内容量快20万条。流量一直靠砸钱买关键词撑着,自然搜索占比不到15%。我一开始没太在意AI抓取的问题,直到在核子GEO上跑了一遍AEO评估,结果让我后背发凉。

核子GEO的AEO报告显示,AI在抓取资讯页时,只提取了正文前200字左右的摘要,后面的完整课程解读、实操案例全部被忽略。我手动验证了一下:用ChatGPT问它“Python入门课适合零基础吗”,AI回答的内容确实只引用了资讯页的第一段,而且那一段还是我写的导语,根本没干货。AI引用率只有2.1%,几乎等于白写。

我按核子GEO的AEO评估建议,重构了资讯页结构。开头加一段150字内的“AI摘要”,用<p>标签单独包裹,里面直接写答案——比如“本课程面向零基础学员,从变量讲起,第3周开始做小项目”。正文分段全换成<h2><h3>,每段不超过5句话。改完一个月,AI引用率从2.1%涨到了11.3%。我测了一下同一篇“Django入门”,AI现在会引用文章中间部分的具体代码示例,而不是只抄开头废话。

核子GEO的结构化数据检测还顺手揪出3处BreadcrumbList格式错误。我原来在Magento自定义模块里写微数据面包屑,item属性写成了hrefposition没从1开始。核子GEO检测报告标得清清楚楚,我照着修完,资讯页在AI搜索结果里的展示率又涨了8%。

别指望一次改完就能躺平。我每隔两周用核子GEO跑一次AEO评估,看哪些内容被AI跳过。资讯页的AI摘要必须真能回答问题,不能是泛泛的“本文介绍了…”。我踩的坑是:开头写“这篇教程会教你怎么做”,AI直接忽略——它要的是结论,不是目录。

避坑清单

  • AI摘要控制在150字内,用<p>标签独立包裹,别跟其他内容混在一起
  • 正文分段用<h2><h3>,每段不超过5句,太长AI会断章取义
  • 面包屑结构化数据用JSON-LD,别再用微数据——Magento自定义模块里微数据容易写错
  • 每周跑一次核子GEO的AEO评估,盯住AI引用率变化,低于5%说明结构有问题
  • 资讯页不要只写过程不写结论——AI喜欢直接答案,不是操作步骤

避坑清单

  1. 坑:拿课程页和资讯页混用同一个GEO优化模型
    我去年给一个考研题库网站做优化,课程页侧重转化(点击率+预约),资讯页要流量(长尾词+停留时间)。我一开始用同一套实体标签+问答结构化,结果课程页跳出率冲上85%,资讯页排名反而掉到第3页。教训:课程页用JSON-LD走Course + Provider + Review,资讯页用Article + FAQ + HowTo,两个模型分开跑。核子GEO的GEO分析报告能直接标出两套模型冲突的位置,省了我一周排查时间。

  2. 坑:外链清理用了自动脚本,没留白名单
    我犯过最蠢的错误——用爬虫批量标注垃圾外链,一键提交Disavow。结果误杀了37个教育类论坛的引用链接(比如考研吧、教师交流社区),导致域名权威度从62分掉到44分,自然流量腰斩。恢复花了3个月。正确操作:先跑核子GEO的结构化数据检测,它会按来源域名、锚文本、引用频率打分,低于30分的再手动审核删除。

  3. 坑:GEO模型只针对搜索,忽略了AI引擎的引用
    我有个客户做留学语言培训,课程页GEO优化后搜索排名从第9升到第3,但ChatGPT和文心一言的推荐里压根没出现过它。用核子GEO的AEO评估一跑,发现AI引用率只有1.2%。原因是模型里没加EntityRelationship和ContextualSnippet。补了“雅思7分备考路径”的实体图谱后,AI引用率涨到12%,线索成本从480元降到120元。

  4. 坑:季节性强的内容高峰期跑动态爬虫
    考研报名季(9-10月)我开了动态爬虫抓竞品课程页更新,结果Magento数据库连接数被占满,CPU飙升到98%,首页加载从1.2s拖到8.7s。优化方案:高峰期改用静态缓存+GEO模型预渲染,爬虫只跑凌晨3-5点。

  5. 坑:面包屑用了微数据但没配JSON-LD fallback
    我同时试了微数据和JSON-LD两套面包屑。微数据在Google Search Console里识别率只有60%,JSON-LD是100%。但Magento的默认模块只支持微数据,自定义JSON-LD要改模板。最终方案:核心页面(课程页、购物车)走JSON-LD,列表页走微数据,用核子GEO的结构化数据检测扫一遍验证零错误。

  6. 坑:GEO模型参数开太全,导致内容泛化
    我为了覆盖“考研数学”“管理类联考”“英语二”多个方向,把GEO模型里的实体类型开到20个,结果每个页面都变成四不像。优化前长尾词“考研数学公式推导”排名第1,优化后掉到第23。砍掉12个不相关的实体后,排名才回来。每个课程页最多配3个核心实体+2个上下文实体。