Ruby on rails 分析UTM标签-数据未记录

Ruby on rails 分析UTM标签-数据未记录,ruby-on-rails,google-analytics,analytics,universal-analytics,utm,Ruby On Rails,Google Analytics,Analytics,Universal Analytics,Utm,我在Rails中创建了一个helper模块,它创建了一个散列参数,并将这些参数传递给link\u toRails helpers。这些utm参数正在Rails应用程序发送的电子邮件中使用。问题是,当我进行测试时,Google Analytics没有收集任何数据。我意识到处理过程中有延迟,我还使用GA调试器查看它实际发送的信标,我有一个暂存服务器和暂存Google Analytics,我正在测试所有这些。是否有人认为下面的方法会导致GA在“活动”报告下不接受任何访问?utm标记的顺序真的重要吗?我

我在Rails中创建了一个helper模块,它创建了一个散列参数,并将这些参数传递给
link\u to
Rails helpers。这些
utm
参数正在Rails应用程序发送的电子邮件中使用。问题是,当我进行测试时,Google Analytics没有收集任何数据。我意识到处理过程中有延迟,我还使用GA调试器查看它实际发送的信标,我有一个暂存服务器和暂存Google Analytics,我正在测试所有这些。是否有人认为下面的方法会导致GA在“活动”报告下不接受任何访问?
utm
标记的顺序真的重要吗?我意识到
utm_活动
utm_源
utm_媒体
都是必需的,并确保它们在每个环节中都有

例如,这就是其中一个链接的外观。然而,GA并没有收集任何数据

http://example.com/?utm_campaign=welcome&utm_medium=email&utm_source=abc
我将
link\u to
方法创建的链接与输出进行比较,唯一的区别是参数的顺序。顺序重要吗

http://example.com/?utm_source=abc&utm_medium=email&utm_campaign=welcome
下面是helper模块及其使用示例,其中包含指向的
链接

# mailer_helper.rb

require 'uri'

module MailerHelper

  def self.tracking_param_hash(utm_source, utm_medium, utm_campaign, params = {})
    { utm_source: utm_source,
      utm_medium: utm_medium,
      utm_campaign: utm_campaign
      }.merge(params)
  end

  def self.email_tracking_params(utm_campaign, options = {})
    tracking_param_hash("abc", "email", utm_campaign, options)
  end

...

end

# example usage in email view

email_params = MailerHelper::email_tracking_params("set-password", reset_password_token: @token)

link_to 'Set my password', edit_password_url(@resource, email_params)

# rendered link in email
http://example.com/users/password/edit?reset_password_token=YEt9PJgQsxb3WpJQ7OEXH3YDT8JZMD&utm_campaign=reset-password&utm_medium=email&utm_source=abc

根据谷歌的说法,订单并不重要。如果代码中的一切都井然有序,那么问题就出在其他地方了。Cookies?

由于以下几个原因,数据未被记录。第一个是因为一个用户点击的链接正在向
用户确认路径
发送帖子。由于从未在帖子上加载过顽童,因此不会记录任何数据,用户将被重新定向到登录页面。这些参数需要与来自POST的re direct保持一致,否则流量将被视为
direct
。在接近尾声时,他们概述了这个问题。要解决这个问题,可以将参数传递到重定向url中。因此类似于
redirect\u to user\u sign\u path(跟踪参数)
,其中
tracking\u parameters
是POST URL中的
utm
标记

第二个原因是
utmz
cookie持续存在,并且没有将访问视为新会话。你需要在一个新的匿名窗口中测试一切,因为谷歌分析和chrome是如何处理单个会话的。有关更多详细信息,请参阅

最后,对于阅读本文的任何人,您都可以通过查看名为
utmz
的cookie来确认UTM参数正在设置。此cookie由Google Analytics使用,外观类似于以下内容
12340657.1412743014.15.1.utmcsr=abc | utmccn=confirm | utmcmd=email
,其中应包含
utm
参数

[为清晰起见进行了编辑,以及我正在测试的各种场景]