欢迎访问我的博客,有问题可以在任意文章底部留言评论

GA4中如何获取百度搜索关键字(SEO/SEM)

Google Analytics 4 Haran 9年前 (2017-07-27) 10652次浏览 0个评论
文章目录[隐藏]

更新时间:2022年12月5号

由于百度不断加强用户隐私保护,目前第三方统计工具(如GA4)已经无法像以前一样直接获取百度搜索关键字。

2015年之后,百度陆续移除了Referer中的 wd/word 参数,并最终关闭了相关API,因此获取搜索词的方式越来越少。

目前能够获取百度搜索关键字的方法主要如下。

方法 是否收费 SEM SEO 是否仍可用
UTM 参数 免费 ✅ 推荐
百度统计 API 免费 部分支持
KeywordId 免费
搜索词回传 API 免费 ✅(需申请)
Referral API 付费 ❌ 已下线

百度为什么获取不到搜索关键字?

百度曾经会在搜索结果页面的URL中传递 wd(word) 参数,例如:

https://www.baidu.com/s?wd=GA小站
其中:
wd=GA小站
就是用户搜索的关键字。

后来为了保护用户隐私,百度逐步进行了以下调整:

时间 变化
2015 年 HTTPS 全面升级,Referer 不再传递 wd/word,仅保留 eqid。
2020 年 SEM 流量不再传递 eqid,仅 SEO 保留。
2022 年 Referral API 下线。

因此,现在第三方分析工具已经无法直接获取百度搜索关键字。

方法一:使用UTM参数(推荐)

对于 SEM(百度推广),最简单的方法就是在广告落地页中使用UTM参数。

例如:

http://www.ichdata.com/?utm_source=baidu&utm_medium=cpc&utm_campaign=summer&utm_content=GA小站

其中:

utm_content=GA小站
可以保存对应投放的关键词。

这样,在GA4中即可直接看到utm_source、utm_medium、utm_campaign、utm_content,从而分析不同关键词带来的流量和转化

注意:UTM 记录的是广告投放关键词,并不一定等于用户真实搜索词。如果一个关键词对应多个匹配模式(精确、短语、广泛),仍可能存在一定差异。

适用范围

  • ✅ 百度推广(SEM)
  • ❌ 百度自然搜索(SEO)

 

方法二:百度统计 API

如果网站同时部署了百度统计,可以调用百度统计API导出搜索词数据。

一般流程如下:

  • 定时调用百度统计 API。
  • 导出当天搜索关键词数据。
  • 获取关键词对应的KeywordId、IP、访问时间等信息。
  • 与网站访问日志进行关联。
  • 将结果导入GA4或数据仓库。

相比直接抓取Referer,这种方式更加稳定,也是目前较多企业采用的方法。

适用范围

  • ✅ SEM
  • ⚠️ SEO(取决于百度统计可提供的数据)

 

方法三:KeywordId(推荐)

百度推广支持在广告链接中使用动态参数。

例如:

<span style="font-size: 12pt;">www.baidu.com?keywordid={keywordid}&creative={creative}&{mediatype}={mediatype}&matchtype={matchtype}&adposition={adposition}&pagenum={pagenum}
</span>

广告点击后,百度会自动替换为:

<span style="font-size: 12pt;">www.baidu.com?keywordid=12123&creative=45632&{mediatype}=1&matchtype=2&adposition=mb1&pagenum=1
</span>

其中常见参数如下::

  • keywordid= 关键词唯一标识
  • matchtype={matchtype} 匹配模式
  • creative={creative} 触发创意
  • adposition={adposition}展现排名

之后可通过百度统计API导出的 KeywordId 与搜索词建立映射关系,实现关键词还原。

适用范围

  • ✅ SEM
  • ❌ SEO

方法四:搜索词回传 API

百度推广还提供了搜索词回传API

广告点击后,百度服务器会在 15~30 分钟内向用户指定的服务器发送一次回传请求。

目前支持账户ID、搜索词、ip和点击时间这4个信息:

GA4中如何获取百度搜索关键字(SEO/SEM)

例如:

https://www.bbb.com?uid={userid}&query={query}&ip={ip}&time={time}

实际请求可能如下:

https://www.bbb.com?uid=123456&query=%e9%b2%9c%e8%8a%b1&ip=106.115.104.89&time=1594260440000

服务器即可获得搜索词、用户 IP 、点击时间、账户ID信息, 再结合网站日志、Cookie或GA4 Client ID,即可关联用户访问对应的搜索关键字。

注意: 搜索词回传 API 需要向百度申请开通,具体支持情况请以百度推广平台最新政策为准。

 

适用范围

  • ✅ SEM
  • ❌ SEO

 

已下线:Referral API

早期百度提供 Referral API,可通过 eqid 查询真实搜索关键字。

这种方式有这么几个特点:

  • 付费的,但是费用很廉价,0.001元/次
  • 注册需要有百度推广账号,完成企业认证
  • 需要百度云北京地区的服务器才可以使用Referral API。
  • 只提供近两天的数据,所以需要通过程序定时的将API的数据导入到GA4

但该接口已于 2022 年正式下线,目前已无法继续使用,因此不建议再采用该方案。

 

总结

方法 是否收费 SEM SEO 推荐指数
UTM 参数 免费 ⭐⭐⭐⭐⭐
百度统计 API 免费 部分支持 ⭐⭐⭐⭐
KeywordId 免费 ⭐⭐⭐⭐⭐
搜索词回传 API 免费 ⭐⭐⭐⭐
Referral API 已下线

 

建议

对于目前的百度推广(SEM),建议优先采用以下组合:

  • UTM 参数:便于GA4直接统计广告效果。
  • KeywordId:用于还原广告关键词。
  • 搜索词回传 API:获取真实搜索词并与站内数据关联。
  • 百度统计 API:作为关键词映射和数据补充来源。

对于百度自然搜索(SEO),由于百度已不再向第三方开放真实搜索关键字,目前基本无法像早期一样直接获取完整搜索词,只能借助百度统计等官方产品提供的有限数据进行分析。


有疑问可以在底部留言
喜欢 (6)
发表我的评论
取消评论

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址