You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Laravel应用中通过Measurement Protocol发送GA4事件至Google Analytics

在Laravel中发送GA4事件替代UA的实现方案

GA4 使用的是Measurement Protocol v2,和UA的请求端点、参数结构差异很大,以下是对应UA事件的GA4实现代码:

Http::asJson()->post('https://www.google-analytics.com/mp/collect', [
    'measurement_id' => config('services.google.analytics.tids.ga4.all'),
    'api_secret' => config('services.google.analytics.api_secret'),
    'client_id' => (string) $cid,
    'events' => [
        [
            'name' => $action, // 可自定义事件名,比如结合分类:"{$category}_{$action}"
            'params' => [
                'category' => $category,
                'label' => $label,
                'value' => $value
            ]
        ]
    ]
]);

关键参数说明(对比UA):

  • 端点从 https://www.google-analytics.com/collect 改为 https://www.google-analytics.com/mp/collect
  • UA的 tid(跟踪ID)替换为GA4的 measurement_id(格式为 G-XXXXXX,从GA4后台数据流中获取)
  • UA的 cid 对应GA4的 client_id,用法完全一致
  • 新增 api_secret:需要在GA4数据流的「测量协议API密钥」选项中生成,用于身份验证
  • 事件结构重构:UA的 ec(分类)、ea(动作)、el(标签)、ev(值)不再是顶级参数,而是要放到 events 数组的 params 中;name 字段为GA4事件名称,可根据业务需求自定义(比如直接用原UA的动作名,或结合分类命名)

注意事项:

  • 确保GA4数据流已启用测量协议功能
  • 事件名称建议遵循GA4规范:小写字母、下划线分隔,避免空格和特殊字符
  • 可在GA4的「实时」报告中实时验证事件是否发送成功
  • 若需批量发送多个事件,只需在 events 数组中添加更多事件对象即可

内容的提问来源于stack exchange,提问作者Ben

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.27 03:55:06