生成式引擎优化(GEO)让许多本地生活团队第一次意识到,门店信息能不能被 AI 读走,往往取决于一行 robots.txt。美团门店页被讨论是否禁止 GPTBot 抓取时,一个直接后果是:当用户问“附近哪家店还在营业”,生成式引擎可能因为读不到页面而跳过这家店。
本地问句
用户对着手机说一句“附近哪家火锅店有包间”,背后是两类信息在同时工作。一类来自地图服务商的本地包(Local Pack),它给出排名前几的商家卡片,卡片上写着名称、地址、电话和评分。另一类来自生成式引擎,它从多个网页拼出一段自然语言答案。如果某个美团门店页允许 GPTBot 抓取,那么它的营业时间、菜单、评价就可能被写进答案;如果 robots.txt 里写着 User-agent: GPTBot 和 Disallow: /,模型就根本拿不到这些内容。
本地问句的特点是“附近”和“现在”。用户不关心品牌故事,只关心距离、评分、是否营业。因此,能被生成式引擎引用的页面往往不是首页,而是门店详情页、菜单页、营业时间页。这些页面若被挡在门外,生成答案里就只剩下地图卡片上的基础信息,甚至会出现“信息缺失”的表述。
地图上的名称时间
地图服务商展示的信息有一套独立于官网的更新机制。商家在美团后台修改了营业时间,地图上的时间可能同步更新,但生成式引擎抓取的却是另一个页面的快照。如果那个页面被 robots.txt 禁止,模型就会使用更早的缓存,或者直接引用第三方平台上的旧数据。
名称和时间是最容易出错的字段。一家店在地图上叫“XX火锅(中关村店)”,在美团页面上可能只写“XX火锅”,而生成式引擎在回答时可能把两个名称混在一起,或者只引用其中一个。如果 robots.txt 禁止了美团页面的抓取,模型就只剩下地图卡片上的名称,而地图名称可能因为加盟、转让等原因与商家实际经营名称不一致。
公开讨论里经常出现这样的场景:商家在美团后台改了店名,地图上同步更新了,但生成式引擎还在回答旧名称。原因不是模型故意出错,而是它读不到更新后的页面。
官网上的同一套
对于连锁品牌,官网通常有一个“门店列表”页面,上面集中展示所有门店的名称、地址、电话和营业时间。这个页面如果允许 GPTBot 抓取,生成式引擎就能从中提取结构化信息,并与地图数据交叉验证。但许多商家把官网做成品牌展示,门店信息藏在交互式地图里,或者用 JavaScript 动态加载,模型读不到。
另一种常见做法是:官网只展示总部信息,门店信息全部托管在美团、大众点评等平台上。这样一来,如果这些平台用 robots.txt 禁止 GPTBot,生成式引擎就完全失去了门店信息的可靠来源。于是,用户问“附近哪家店有 WiFi”时,模型可能引用一篇三年前的博客文章,而不是官方页面。
“官网上的同一套”意味着名称、地址、电话、营业时间(NAP)四件套必须在官网和地图平台上保持一致。如果官网允许抓取,生成式引擎就会优先引用官网,因为官网被视为第一方权威来源。如果官网不允许,模型只能依赖第三方,而第三方数据往往滞后或冲突。
生成答案怎样选
生成式引擎在回答本地问句时,通常会合并多个来源。它可能同时读取地图 API 返回的卡片和网页文本。如果网页文本与地图卡片一致,答案就会比较可靠;如果不一致,模型需要判断哪个来源更可信。当美团门店页被 robots.txt 禁止时,模型可用的网页文本减少,只能依赖地图卡片,而地图卡片上的信息可能不完整。
一个可观察的现象是:当生成式引擎无法获取某个门店的详细信息时,它倾向于推荐那些信息完整的门店。也就是说,允许 GPTBot 抓取的门店更容易被写进答案。这不是搜索引擎的“排名”逻辑,而是信息可用性逻辑。
在公开的维基百科词条“Generative engine optimization”中,GEO 被描述为“优化内容以提高其在生成式引擎回答中的可见度和引用率”。如果一个页面根本不被抓取,就谈不上优化。因此,本地生活商家需要检查自己的 robots.txt,确认 GPTBot 是否被错误地禁止。
对齐步骤
第一步,检查 robots.txt。登录网站服务器,查看根目录下的 robots.txt 文件,确认是否包含针对 GPTBot 的 Disallow 规则。如果包含,评估是否真的有商业原因禁止抓取。对于本地生活商家,通常没有理由禁止 GPTBot,因为门店信息本来就是公开的。
第二步,在官网建立可抓取的门店列表页。这个页面应该用纯 HTML 表格列出所有门店的 NAP 信息,不要依赖 JavaScript 渲染。每个门店的名称、地址、电话、营业时间都要与美团后台完全一致。
第三步,确保地图平台上的信息与官网一致。在美团后台更新名称或时间后,同步更新官网页面。如果官网无法及时更新,至少保证 robots.txt 允许抓取,让模型能读到最新版本。
第四步,监控生成式引擎的引用情况。定期用“附近哪家 [品类] 还在营业”这类问句测试,观察模型是否引用自己的官网或美团页面。如果没有,检查 robots.txt 和页面结构。
这些步骤不涉及任何虚假数据,也不承诺到店量提升。它们只解决一个基础问题:让生成式引擎能够读到真实、一致的门店信息。
还容易问的
用户还会问“哪家店支持宠物”“哪家店有充电桩”“哪家店可以开发票”。这些问题的答案往往不在基础 NAP 信息里,而在商家详情页的扩展字段中。如果这些页面被 robots.txt 禁止,生成式引擎就只能回答“信息缺失”。
另一个常见问题是“哪家店现在排队少”。这类实时信息通常不在静态页面里,而是通过 API 提供。生成式引擎无法直接读取 API,但可以读取展示这些信息的页面的文本快照。如果页面允许抓取,模型就能回答“根据页面显示,目前排队约 15 分钟”;如果禁止,模型只能回答“无法获取实时排队信息”。
还有一个问题是“哪家店有分店”。这需要门店列表页提供清晰的层级结构。如果列表页允许抓取,模型就能正确回答“该品牌在北京有 12 家分店”;如果禁止,模型可能引用过期的新闻稿,说出错误数字。
所有这些问题的共同点是:答案的可靠性取决于生成式引擎能否读取到第一方页面。对于本地生活商家,允许 GPTBot 抓取是进入生成答案的第一步。更多关于 GEO 与 SEO 的差异,可参考本站的 SEO vs GEO 和 GEO 指南。