你辛辛苦苦搭的活动页,用户搜“北京周末线下课”根本刷不到——不是内容不行,是谷歌压根没看懂:这玩意儿是个活动,还限时、还免费、还能线上参加。

它只当你发了篇普通文章。

事件结构化数据,就是给你的活动页面塞一张带照片、有身份证号、写清时间地点的电子名片。没有它,再热闹的活动,在搜索里也像穿了隐身衣。

事件结构化数据到底是什么?它和普通SEO有什么区别?

普通SEO,是你在网页里埋关键词、调标题、加内链,指望用户扫一眼标题就点进来。

事件结构化数据,是你直接告诉谷歌:“嘿,这不是一篇文,是一场活动。名字叫XX,12月15日开始,北京798,免费,扫码就能进直播。”

你用 JSON-LD 格式把关键信息写进页面 <head> 里,谷歌就能在搜索结果里生成带日期、地点、票价的富媒体卡片。用户不用点进去,光看卡片就知道要不要参加。

普通SEO决定你排第几;结构化数据决定你有没有“卡片”。
排第一但只显示“活动报名入口”,不如排第三却写着“今晚7点·线上可听·免费”来得抓人。
这不是玄学,是谷歌自己写的规则:只要信息对、格式准,卡片就可能出来。

哪些类型的活动必须加结构化数据?3个最容易忽略的场景

不是所有带“活动”俩字的页面都该加。我见过有人给“上个月团建回顾”也塞了 Event Schema——谷歌不认已结束的事,还可能判定你数据失真。

真正值得加的,就这三类:

限时抢购类活动。比如“周五晚8点开抢,前100名半价”。不加 Schema,谷歌只当你是普通促销页,活动过期后还在搜结果里挂着,用户点进去发现“已结束”,转身就走。

线上线下混合活动。比如一场带现场座位+直播入口的行业分享会。你只写了“北京市朝阳区XX大厦”,谷歌就只展示地址。线上用户一看要跑现场,直接划走。正确做法:eventAttendanceMode 设为 MixedEventAttendanceModelocation 里同时放物理地址和直播链接。

持续性活动。比如“每周四晚读书会”“每月第一个周六开放日”。很多人以为 Schema 只能标单次,其实用 EventSeries 类型,把频率(repeatFrequency)、起止时间写清楚,谷歌就能识别规律,在搜索里显示“每周四 19:00”。

有个做知识付费的朋友,就给年度峰会页面加了个基础 Schema,没改文案、没投广告,活动前两周,搜“行业峰会 2025”时,他的页面从第5页直接跳到第1页第二位。

写事件结构化数据时,这5个字段比名称还重要

只填 namestartDate?等于只写了姓名和生日,连住哪、干啥、能不能参加都没说。谷歌能解析,但不会给你卡片。

真正影响用户点不点、信不信、参不参加的,是这五个字段:

offers。哪怕免费,也要写 price: 0。谷歌看到“免费”标签,会在卡片里高亮显示,点击率明显提升。如果分早鸟票/双人票,用数组列清楚,谷歌有时会自动标出最低价。

organizer。主办方信息别空着。写公司全称 + 官网链接。用户看到“主办方:XX教育(官网可查)”,比“主办方:某团队”可信得多。

eventAttendanceMode。必须填。线上、线下、混合,三选一。不写,谷歌默认按线下处理。你办的是纯直播课,结果卡片里只显示“上海市静安区XX路”,用户真以为得打车去,没人点。

performer。讲师或主讲人信息。不光写名字,最好带上头像 URL 和个人主页链接。谷歌有可能在卡片里展示头像,视觉权重立刻拉满。

eventStatus。状态要同步更新。“已延期”“已取消”不能只靠正文小字提醒。Schema 里不改,谷歌快照还显示“即将开始”,用户白点一次,信任掉一块。

事件结构化数据最常见的3个报错,怎么修?

谷歌的富媒体测试工具(Rich Results Test)会报错,但提示语像天书。下面三个,占了八成问题:

“缺少必填字段”namestartDatelocation 三者缺一不可。常见坑是 startDate 写成“2025年1月”或“下周三”。必须用 ISO 8601 格式:2025-01-15T14:00:00+08:00。漏了时区,谷歌按 UTC 解析,你下午2点可能被标成凌晨6点。

“事件已结束但状态未更新”。单次活动结束后,别让 Schema 还挂着。要么把 eventStatus 改成 EventCancelledEventPostponed,要么干脆删掉整段代码。留着,等于让谷歌帮你撒谎。

“地点引用冲突”。你既写了线下地址,又塞了直播链接,但没声明参与模式。谷歌懵了,两个都不展示。解法很简单:先设 eventAttendanceMode: MixedEventAttendanceMode,再把直播链接放进 location.url 字段里。

上个月帮一个客户修这个冲突,一周后,他页面在谷歌的富媒体展示率从几乎为零变成稳定出现。没动文案,没换服务器,就改了几行 JSON-LD。

怎么用事件结构化数据提升搜索点击率?2个高阶技巧

基础 Schema 让你“能被看见”,这两个技巧,让你“让人想点”。

嵌套真实评价。如果你的活动有往届学员打分、媒体简评,或者第三方平台上的用户反馈,用 aggregateRatingreview 嵌套进 Schema。谷歌可能在卡片里显示星级和评语。同样排第3,带4.8星的卡片,天然比光秃秃的标题多一眼停留。

potentialAction 直达购票。很多人不知道:你可以在 Schema 里声明一个“用户下一步想做的事”,比如“立即报名”“扫码预约”。谷歌识别后,可能在搜索结果里直接加按钮,点一下就跳转购票页。对手机用户特别友好——省掉进站、找入口、填表三步,转化路径短了一大截。

有个做线下工作坊的朋友试了这个,反馈说:“原来用户要翻半天才找到报名入口,现在搜到就点按钮,当天报名量明显增长。”

今天就能上手的3步操作法

别收藏,现在就做。关掉这个页面前,打开电脑,花15分钟:

第一步:打开你最近发的一场活动页面(比如上周上线的公开课、本周预告的沙龙),把网址粘贴进 Google Rich Results Test 工具,点“测试 URL”。看有没有红色报错。

第二步:检查你页面源码里的 JSON-LD 代码,对照上面说的5个字段,确认是否写了:

  • offers(哪怕 price 是 0)
  • eventAttendanceMode(别空着)
  • performer(至少填讲师名字)
  • organizer(公司名+官网)
  • eventStatus(进行中就写 EventScheduled

缺哪个,现在就补。不会写?复制谷歌官方 Event Schema 示例,删掉不用的,留下这五个字段,填上你的信息就行。

第三步:回到谷歌搜索框,输入 site:你的域名.com 活动关键词(比如 site:abc.com 北京读书会),看看搜索结果里有没有带日期、地点、价格的卡片。没有?检查两点:一是页面有没有被 noindex 标签屏蔽;二是其他 JS 脚本有没有误删了 <script type="application/ld+json"> 这段代码。

做完这三步,你的活动页面就不再是“隐形人”。谷歌下次抓取,就有机会给你一张富媒体卡片——这件事,今天就能启动。