问题1: 收集 PII 信息(个人身份信息)

PII 信息包括姓名, 物理信息, 邮件地址和电话号码等.

根据 GA 的政策是不允许收集任何此类 PII 信息的. 如果擅自收集就会违反 GA 服务条款并可能导致你的账户被终止. GA 并不是一个 CRM 系统, 尽管有时候存储在 CRM 系统中的数据会传送到 GA.

在多数情况下, PII 信息都是在无意中被收集的, 比如一些带个人信息的网址: www.example.com/submit?email=george.abidbol@gmail.com

解决方案1:

在 view 层级设置 filter, 去过滤 URL 中有收集 PII 信息嫌疑的参数.

解决方案2:

不要使用任何带有收集 PII 嫌疑的 URL.

问题2: 来源是自己网址的问题

来自第三方网站:

当你的页面使用一些第三方工具或者插件,例如: 第三方支付和内容优化工具的时候, 他们是使用的不同的域名. 因此他们的域名可能会被抓取.

一个比较便捷的检查自己是否存在来源网址问题的方法是在 GA 报告: Acquisition > All Traffic > Referrals 报告中根据垫子商务转化率降序排列. 你的第三方支付网站的域名可能会有一个比较高的转化率.

来自你自己的网站:

Referral 流量有时候可能来自你自己的域名, 如果你忘记将你自己所有的页面都部署上 GA 代码的话可能有这样的情况. 也有可能是来自其他使用了一样 property id 的 domain 的页面, 但是没有做 Cross domian tracking 的设置.

解决方案1:

将第三方或者自己的域名加入 Referral Exclusion List, 这个设置在 Property > Tracking Info 里. 做这样的设置就会使流量归因到真正的来源.

解决方案2:

确保你网站的所有页面都安装了 GA 监测代码, 使用 chrome 的一些 GA 的插件可以检查 GA 代码的部署情况.

解决方案3:

对于 cross domain 的一些问题, 你需要使用 GA 的 linker.js 的解决方案正确部署你的代码.

问题3: 重复的交易

尽管这个可能影响你最重要的指标 - 收入, 但是这个问题是会经常出现. 当确认页面被重新加载时重复的交易就会被记录. 页面中部署的 GA 代码会将交易信息和 pageview hit 再重复的发送一次. 这种现象并不少见, 特别是在手机设备上.

解决方案1:

不要让你的购买确认页面可以被刷新, 即使在同一个会话时间内. 每个购买确认页面只可以被打开一次. 一些网站可以将客户重定向到一些准备好感谢购买页面.

解决方案2:

在服务器端设置一个去重逻辑, 一旦发现订单 ID 重复, 就防止 GA 代码在执行一次.

解决方案3

创建一个第一方 cookie 用来存储 transaction id, 然后修改你的 GA 代码, 当此 cookie 中未记录任何 transaction id 时, 才会将交易请求发出.

这边有两个很好的解决方案:

问题4: 当地货币收入不自动转换

在 GA 中, 你可以选择你收入的金额以哪种货币展示(在 View Settings > Currency displayed as 中设置), 但是这个设定不代表你收集的不同的货币会自动的转换.

解决方案:

对于硬编码的 GA Universal 代码, 你必须通过请求 currencyCode 来记录你的交易信息. currencyCode 可以接受这些货币形式.

例子:

1
2
ga(‘set’, ‘&cu’, ‘AUD’);
ga(‘set’, ‘currencyCode’, ‘AUD’);

如果你通过 GTM 部署 GA, 就会需要在交易确认页面的 dataLayer 层级请求 currencyCode 变量,在 GTM 中创建一个 dataLayer 层级的变量加到 GA 代码中.

注意: 如果你是使用 Enhanced Ecommerce 功能, 那么在任何出现交易金额的地方都需要加上 currencyCode.

问题5: 没有原始, 主和测试视图

这三种视图是做 GA 分析的最基础的三个视图.

原始视图

这个视图没有做任何 filter, 这样可以防止当你做了错误的数据过滤或者 goal 的设定时, 这个视图可以给你最原始的数据.

主视图

这个视图只是做了一些基本的 filter, 比如排除掉自己的流量, url 大小写的更换等等.

测试视图

这个视图只包含你自己的测试流量,你可以用来测试 goal, events, filters 等. 在把他们应用到主视图之前, 做一轮测试是非常重要的.

还有好方法就是: 为你每一个不同时区内的流量创建一个 view 并分配不同的时区. 这样对于当地时间的分析就会变得准确.

小贴士

相同的视图结构也可以应用到启用 user-id 的视图中.

问题6: 误导性的重复网页路径

如果你同时监测两个子域名: www.example.com 和 sub.example.com. 在 page report 中, 你只能看到 URI 的信息, 就是域名之后的信息. 这不是一个主要的问题, 因为你还可以通过设置子域名为第二维度.

但是为了避免一些可能的问题(或者需要添加任何更有价值的信息为第二维度).

解决方案:

solution

问题7: 通过老 GA 代码发送的虚拟 pageview

当你想要监测网页内的内容但是不会引起一个新的页面加载时, 或者说你想要监测更多有意义的 URL, 所以你需要创建一个虚拟的 Pageview.

这样的方式需要你发送一个虚拟的 pageview, 在大多数情况下是可以的, 但是虚拟的 pageview 如果覆盖了你原始的网址, 你就需要弄明白默认的 pageview 有没有发送到 GA.

解决方案1:

如果你的 GA 代码是硬编码到网页中, 请确保在 Page Field 里面的 pagename 已经替换成新的.

解决方案2:

如果你的 GA 代码是通过 GTM 部署的, 请确保添加一个 blocking trigger:

blocking trigger

小贴士

命名 page title 为 “Virtual pageview” 开头, 这样你就可以比较容易的识别哪些是虚拟 pageview.

问题8: Event 的设置导致 bounce rate 不准确

默认情况下, 一个 event 就是一次 interaction, 这就会导致 bounce rate 计数不准确.

举例来说, 一个客户来到你的网站, 触发了一个 event(例如观看视频), 然后客户就离开了这个网站, bounce rate 就不为 100%. 这就是一个正常可预期结果.

但是, 如果你通过鼠标滚动来触发一个 event, 或者默认观看了一个元素或者视频. 那你的 bounce rate 就可能为 0%, 这是不正常的. 这就要考虑你的 event 是不是要设置为 non-interactive.

解决方案:

如果 event 是硬编码到您的网站上, 将 event 的 Non-interactive 为 “true”;

1
ga(‘send’, ‘event’, ‘Videos’, ‘play’, ‘Fall Campaign’, { nonInteraction: true });

如果是通过 GTM 部署的代码:

non-interactive event

问题9: 使用正则表达式

在 GA 中, 你可以使用正则表达式来定义 goal, segments, view, report view, channel 和 content grouping 等.

简而言之, 正则表达式已经变成变得越来越重要…

下面是一些常用的正则表达式:

  • ^ : starts with
  • $ : ends by
  • ? : precedent character optional
  • () : defines a group
  • | : or
  • \ : escapes character

更多请参考这里

我们还可以通过: https://regex101.com/

问题10: URL tagging 问题

我们在 source/medmium 报告中看到一些 source: facebook / cpc 和 Facebook / CPC

这种问题导致报告一点都不易读. 这里提供一些建议:

  • 创建一个命名规则, 跟内部和外部的同事分享一下;
  • 记录所有做过 tagging 的 campaign;
  • 坚持你命名规则的一致性;
  • 不要使用 campaign 的名字当做 source 和 medium;
  • 命名规则一直的话可以保证分组的时候很方便.

最后但是同样重要: 不要使用 utm_ parameters 来监测内部链接. 这会开一个新的 session. 这样的话你的 acquisition 报告和 attribution 报告就会不准确.