GEO

让 ChatGPT 和谷歌都愿意引你:
GEO 时代的静态站结构。

AI 给答案的方式是摘抄能被引用的事实句,不是你的形容词。所以页面结构要为「被摘」设计:干净语义、结构化数据、llms.txt、可核对的数字。

文 / RESPEC Team 2025-09-24 GEO / 结构

有一部分采购已经改了习惯:先问 AI「谁能做这个」,再点开它给的两三个链接。如果你的站不在那个答案里,后面做得再漂亮也没人看见。这一层被叫做 GEO——生成式引擎优化。它不是新玄学,落点仍然是页面结构,只是标准换了。

AI 从页面里摘走的,是哪一种句子?

这一点想通了,后面全是执行。模型生成答案时做的事,是从多个来源里挑出能被独立引用、且不带歧义的句子,拼成一段话。所以它偏好的是这些:

  • 「2007 年在深圳成立,做 LED 投光灯,出口到 76 个国家」
  • 「通过 ISO 9001,有自己的光度实验室」
  • 「产品尺寸 320×180×95 毫米,防护等级 IP65」

而不是这些:「世界领先的照明解决方案提供商」「多年行业深耕,深受客户信赖」「以品质赢得市场」。后面这些句子对人还有点说服作用,对模型是纯噪音——它没法验证,也没法引用。

所以第一件事不是加代码,是把页面上能被摘的句子写出来。这事跟技术无关,跟诚实有关:能说出具体数字、具体年份、具体认证的,才摘得走。

干净语义 HTML:四个具体动作

模型读页面,先是读源码结构,不是读视觉。四个动作从便宜到贵:

  1. 一个页面一个 h1,h2 按内容分段,不要为了排版好看用 h3 冒充 h2。层级乱了,模型切不出「这一段讲什么」。
  2. 列表就用列表。参数、认证、流程这类并列信息,用 ul / ol / dl,不要用一堆 div 加样式做出来。模型对列表结构的解析比散装文本可靠得多。
  3. 表格用 table。规格对比天生就是表格,用 table 写,行列关系明确;用网格 div 拼出来的「表格」,模型经常读成一串平铺的字。
  4. 正文必须在 HTML 里,不要靠 JS 渲染。渲染出来的内容,第一次抓取时可能是空的——而 AI 的抓取往往就是那一次。

这四条静态站天然容易做到,因为页面本来就是手写或生成的 HTML,不存在「构建器输出一堆嵌套 div」的问题。

结构化数据:给机器一份摘要,但别乱堆

JSON-LD 的作用是把你页面上的信息翻译成机器肯定看得懂的格式。对 GEO 有用的就三类:

类型放什么容易错在哪
Organization公司名、地址、电话、邮箱、成立年份和页面可见信息不一致,等于自相矛盾
Article / BlogPosting标题、作者、日期、正文摘要日期和页面上显示的不一样
FAQPage问题与答案的原文答案改过但结构化数据没同步,两边不一致

第三行是最常见的坑,也是代价最大的:结构化数据里的答案和页面上看得见的答案必须逐字一致。改文案忘了改 JSON-LD,轻则富结果不显示,重则被判成误导。

还有一条原则:只标页面上真的有的东西。为了让数据好看,往里塞一个不存在的评分或者虚构的成立年份,短期可能让摘要更漂亮,长期是把自己的可信度押上去。

llms.txt 是干什么的?现在有用吗?

有些网站根目录多了一个 llms.txt。它不是标准,也不是排名因素,是一个约定:给语言模型一份「这个站是干什么的」的纯文本摘要。

“At the moment the most widely and easily understood format for language models is Markdown.”

llmstxt.org 上的原话:目前对语言模型来说,最通用、最容易理解的格式是 Markdown。所以这类文件的写法跟 robots.txt 完全不同——它是一份给人读也顺、给模型读也顺的说明,不是一堆指令。

llmstxt.org

实用的写法:一句话说清你是谁、做什么、多少钱、怎么联系;然后是服务范围、适合谁、不适合谁、价格档位;最后是主要页面的链接和一句说明。「不适合谁」这一节别省——一份承认边界的资料,比通篇自夸更容易被当成可信来源。

要说清的是:放了这个文件不等于 AI 会读。目前没有哪家公开承诺会抓取它。它的价值在于「如果读了,读到的是你希望它知道的东西」,而不是「放了就一定被引用」。

实体一致:让 AI 确认你是同一家公司

模型要引用一个来源,得先确认这个来源是谁。如果你的公司名在页面标题里是一种写法、页脚是另一种、结构化数据里又是第三种,它判定「这是同一家」的成本就变高。

所以统一这几处:公司全称、简称、英文名、地址、电话、邮箱。同一个实体在所有地方用同一套写法,包括 Organization 结构化数据里的 alternateName 别名字段——把简称和英文名都列进去,能覆盖更多匹配方式。

同一件事还体现在外部:行业目录、B2B 平台、社交媒体上的公司信息,写得越一致,越容易被当成同一个实体。这一层不是改页面能解决的,但它对 GEO 的作用大于再优化一遍标题。

一张清单:写得能被摘,还是写了等于没写

写了等于没写能被摘走
「多年行业经验」「2007 年开始做,到 2026 年是第 19 年」
「产品远销海外」「出口到 76 个国家,主要市场在欧洲与中东」
「通过多项国际认证」「CE、RoHS、ISO 9001」(写全名,别写「各种认证」)
「品质有保障」「自有光度实验室,每批出货前做积分球测试」
「服务响应及时」「工作时间内 30 分钟内回复,小改 1 小时内改好」
「价格优惠」「100 页 15,800 元/年,超页 80 元/页」

右列的共同点:有数字、有年份、有名目、可核对。左列的共同点:正确,但不可验证。写左列不犯法,只是浪费了一个被引用的机会。

AI 打不开你的页面怎么办?

这一层容易被忽略。AI 的抓取程序跟搜索引擎爬虫一样受制于加载时间——页面慢、脚本重、内容靠渲染,抓到的可能是半截。所以速度优化和 GEO 不是两件事,是同一件事的两面。

同理,robots.txt 里如果把 AI 爬虫挡了,前面所有结构工作都白做。这几年有些站为了防止内容被拿去训练,把 GPTBot 一类全挡了——挡训练和挡检索是两件事,检索型爬虫(比如 OAI-SearchBot)挡掉,等于主动退出 AI 答案的候选池。这个取舍要自己清楚再做。

我们怎么落地

三件事在出站时就做掉:语义结构(一页一个 h1、列表用列表、规格用表格)、结构化数据(Organization + Article + FAQ,和页面可见文字逐字对齐)、以及一份 llms.txt(写清服务、价格、边界、主要页面)。

纯静态还有个额外的好处:页面就是最终的 HTML,没有渲染这一步,AI 抓到什么就是什么。不会出现「你看到的有内容、它抓到的空白」这种查不出来的情况。

说清不能承诺的部分:没有任何人能保证「一定被 ChatGPT 引用」。能控制的是——让页面成为一份可引用、可核对、结构清楚的资料;剩下的取决于模型怎么选,那不在任何人手里。

想知道 AI 现在怎么描述你的站?把公司名或域名发我,我代问几个主流模型,把它们的原话贴给你看。通常能看出它在哪一句上卡住了。

资料来源

  1. llmstxt.org(llms.txt 的约定与推荐格式)
  2. Google 搜索中心 · 结构化数据简介(JSON-LD 的作用与一致性要求)
  3. Google 搜索中心 · 创建实用、可靠、以用户为中心的内容
  4. SE Ranking · AI 引荐流量研究(AI 来源流量的分布观察)
免费

想知道 AI 怎么描述你的站?
我可以代问一遍。

发邮件
  1. 01
    发网址,一句话说清你在担心什么企业微信或邮件都行,不用先填表、不用先注册。
  2. 02
    我按你给的地址实测一遍挑三个有询盘价值的页面,速度、抓取、表单各跑一次。
  3. 03
    当天给结论,能自己改的给清单该换的也直说,并告诉你换完能省下哪几笔。