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

Google Analytics是否捕获JavaScript重定向?外部站点跳转场景问询

关于Google Analytics记录页面重定向的问题

1. GA会不会记录这次重定向?

答案是会,但有前提:

  • 当你通过window.location = 'http://differentsite.com'触发跳转时,GA默认会识别到用户离开当前页面的行为(在报告里会体现为用户会话结束,或是页面停留时间的计算截止)。
  • 但这里有个关键:GA需要足够时间把数据发送到服务器。如果跳转是同步立即执行的,GA的请求可能还没完成就被页面跳转中断,导致这条离开记录丢失。

2. 默认情况下能不能查看跳转目标地址?

不行。GA的默认报告里只会显示用户离开了你的页面,但不会自动捕获跳转的目标URL。想要获取这个信息,你需要手动添加自定义事件来记录跳转目标。

怎么实现记录跳转目标地址?

你可以在跳转前发送一个包含目标URL的自定义事件,确保GA能捕获到这个信息。这里推荐两种可靠的方式:

方式一:用gtag发送事件+短暂延迟跳转

通过给跳转加个几十毫秒的延迟,让GA有足够时间完成事件发送:

// 发送自定义重定向事件,携带目标地址
gtag('event', 'external_redirect', {
  'event_category': 'navigation',
  'event_label': 'http://differentsite.com' // 替换为你的跳转目标
});

// 延迟100毫秒再跳转,确保事件发送完成
setTimeout(() => {
  window.location = 'http://differentsite.com';
}, 100);

方式二:用navigator.sendBeacon发送(更可靠)

sendBeacon是异步发送数据的,不会阻塞页面跳转,能最大程度保证数据被GA接收:

// 构造GA事件的请求参数
const gaPayload = JSON.stringify({
  v: '1',
  tid: 'UA-XXXXXXXXX-X', // 替换成你的GA跟踪ID
  cid: localStorage.getItem('_ga'), // 获取用户的GA客户端ID
  t: 'event',
  ec: 'navigation', // 事件分类
  ea: 'external_redirect', // 事件动作
  el: 'http://differentsite.com' // 事件标签(跳转目标地址)
});

// 用sendBeacon发送到GA收集端点
navigator.sendBeacon('https://www.google-analytics.com/collect', gaPayload);

// 立即跳转
window.location = 'http://differentsite.com';

之后怎么查看跳转目标?

添加完自定义事件后,你可以在GA的事件报告里,通过「事件分类」「事件动作」筛选到你设置的external_redirect事件,然后查看「事件标签」列,就能看到对应的跳转目标URL了。

内容的提问来源于stack exchange,提问作者Tadeáš Jílek

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.15 08:02:35