如何仅在特定来源/媒介触发Google Analytics转化追踪代码?
当然可行!这是个非常实用的需求,完全可以通过Google Analytics的内置数据结合自定义逻辑来实现。我给你分享两种最常用的实现方式,根据你是否用Tag Manager来选就行:
方法一:通过Google Tag Manager(GTM)实现
要是你已经在用GTM管理所有跟踪代码,这是最省心的方式:
- 先确保你已经在GTM里配置好了Google Analytics的基础代码
- 创建一个自定义触发器:
- 先选好触发器类型——如果你的转化是页面加载时触发,就选“页面视图”;如果是按钮点击等交互触发,就选“点击 - 所有元素”或者对应的自定义事件
- 添加触发条件:用GTM内置的
{{Source}}和{{Medium}}变量,设置匹配规则,比如Source等于你的目标来源且Medium等于你的目标媒介(比如Source=blog.example.com,Medium=referral)
- 把你的转化跟踪代码(比如GA的转化事件代码)关联到这个自定义触发器,这样只有当用户符合来源/媒介条件时,这个标签才会执行
方法二:直接在GA代码中写自定义逻辑
如果没用到GTM,直接在页面的GA代码里加判断逻辑也能搞定,示例代码如下:
// 先初始化GA基础代码(替换成你的测量ID) window.dataLayer = window.dataLayer || []; function gtag(){dataLayer.push(arguments);} gtag('js', new Date()); gtag('config', 'G-XXXXXXXXX'); // 获取当前用户的来源和媒介,然后判断是否触发转化 gtag('get', 'G-XXXXXXXXX', 'source', (source) => { gtag('get', 'G-XXXXXXXXX', 'medium', (medium) => { // 替换成你需要的目标来源和媒介 const targetSource = 'your-target-source'; const targetMedium = 'your-target-medium'; // 符合条件就触发转化 if (source === targetSource && medium === targetMedium) { gtag('event', 'conversion', { 'send_to': 'G-XXXXXXXXX/your-conversion-id', // 可选:添加转化价值、货币类型等参数 'value': 15.0, 'currency': 'CNY' }); } }); });
几个关键注意点
- 一定要确保你设置的
source和medium和GA后台显示的完全一致,GA里的这些值都是小写的,别搞成大写或者混合拼写(比如referral不能写成Referral) - 如果要区分首次访问和回访,还可以结合
first_visit维度来判断,避免重复触发转化 - 测试的时候,可以在URL后面加utm参数模拟特定来源,比如
?utm_source=your-target-source&utm_medium=your-target-medium,然后看GA实时报告里有没有转化事件上报
内容的提问来源于stack exchange,提问作者Joxmar
相关产品推荐
相关产品推荐

