跟踪代码问题排查

如果您要排查 Google Analytics(分析)跟踪的问题,请首先确保您的基本设置正确无误,如“帮助中心”中的 验证您的设置部分所述。

Google Analytics(分析)跟踪问题排查将围绕两个关键问题进行:

  1. 跟踪代码语法中存在错误/拼写错误(例如,空格、拼写错误的自定义内容、错误的参数名称)
  2. 您的报告中缺少数据

本文档的其余部分介绍了如何使用问题排查工具来找出并纠正这两个基本问题。

常见跟踪代码错误

无论您使用异步语法还是使用传统语法,都请牢记以下几点,以避免在自定义或调整跟踪代码时出现最常见的错误。如需了解如何轻松检查这些错误,请参阅使用 ga_debug.js 进行调试

  • 方法名称使用的大小写错误
    请注意,方法区分大小写。如果方法名称使用的大小写错误,方法调用将不起作用。示例:
      _gaq.push(['_trackpageview']);   // wrong
      _gaq.push(['_trackPageView']);   // wrong
      _gaq.push(['_trackPageview']);   // correct
  • 方法名称不正确
    如果跟踪没有正常运行,请检查并确保您使用的方法名称正确无误。示例:
      _gaq.push(['_setDomain', 'example.com']);       // wrong
      _gaq.push(['_setDomainName', 'example.com']);   // correct
  • 使用引号传递非字符串值
    只有字符串才应在传递时加引号。所有其他类型都不应加引号。
    任何非字符串值(例如布尔值、对象字面量、函数或数组)在传递时不应加引号。只有在传递要解释为字符串的内容时,才应使用引号。如果您正在从传统语法迁移,则异步语法中未加引号传递的任何函数参数都应保持不带引号。示例:
      _gaq.push(['_setAllowLinker', 'false']);    // wrong
      _gaq.push(['_setAllowLinker', false]);      // correct
  • 字符串在开头或结尾处包含空格。
    示例:
      _gaq.push(['_setAccount', ' UA-65432-1']);    // wrong
      _gaq.push(['_setAccount', 'UA-65432-1']);     // correct

返回页首

常见报告数据问题

如果您的报告中缺少数据,请阅读此部分,帮助找出最常见的错误以及建议采取的操作。

未检测到跟踪代码更改或设置

首次在网页上安装跟踪代码,或添加其他跟踪代码功能(如电子商务)时,您可以通过检查以下元素轻松验证网页请求的设置是否正确:

  • 网页请求 ga.js JavaScript
  • 网页请求 __utm.gif
  • utmacutmcc 变量在 __utm.gif 请求中发送
  • 所有相关跟踪参数都适用于您希望发送的其他数据(请参阅下面的 GIF 请求参数列表)。

如果所有这些元素都被正确发送,则数据应该会在 24 小时内显示在报告中。不过,您也可以将报告中的日期范围更改为“今天”,以查看数据是否会更快显示。

返回页首

网页或事件未显示在报告中

如果包含跟踪代码的网页未显示在“内容”报告中,请检查以下各项:

  • 您查找的网页是否正确?
  • Google Analytics(分析)使用 utmp 参数的值作为请求的网页,因此,如果您的网页网址为 /test/myPage.html,请务必在“内容”报告中查找 myPage.html。检查 utmp 参数的值以查看正在发送的网页请求。
  • 您查找的事件是否正确?
  • Google Analytics(分析)使用 utme 参数的值以 5(object*action*label)(value) 的形式跟踪事件:
    • 5 为常数
    • 对象和操作为必填项
    • 标记和值为选填项
    有关详情,请参阅跟踪事件文档。
  • 您每天跟踪的唯一网址或虚拟网页是否超过 50000 个?
  • Google Analytics(分析)会收集网站发送的所有信息,并且每天报告排名前 50,000(按网页浏览量排序)的网页的数据。其余所有网页均被汇总到内容报告中标记为“(其他)”的单独部分。若要查看流量较低的网页浏览的详细报告信息,您可以设置包含过滤器的新数据视图(配置文件),以移除所有流量较高的网页浏览,从而有效将其余网页纳入前 50,000 个网址中。
  • 确保您在报告界面中访问正确的账户和数据视图(配置文件)。
  • Google Analytics(分析)根据网域 ID(采用 UA-123456-1 形式)来区分不同帐号。此网域 ID 将插入到跟踪代码中,系统正是通过这种方式将来自网页的数据与给定账户相关联。确保您正在查看的帐号和数据视图(配置文件)(Analytics(分析)设置 -> 修改 -> 检查状态)与 GIF 请求的 utmac 参数中发送的网域 ID 相同。

返回页首

广告系列跟踪问题

为了在 Google Analytics(分析)中跟踪某个广告系列,链接到您网站的广告必须附加有跟踪参数。Google Analytics(分析)跟踪代码 (GATC) 会使用网页网址和引荐参数的组合来识别发送的广告系列。然后,此信息会存储在您网站的 Cookie 中,并在 GIF 请求的 utmcc 参数中发送。在许多情况下,网站网址重定向将从这些链接中去除跟踪参数或引荐数据,而这会导致广告系列报告中出现错误。

如需测试重定向是否会导致广告系列跟踪问题,请点击指向您网站的引荐或标记链接,然后在 utmcc 参数中查找相应的广告系列数据。要详细了解如何查找和解读 utmcc 参数,请参阅 GIF 请求参数使用 ga_debug.js 进行调试

目标(转化)归属不正确

转化是指与特定广告系列有关的目标。要确保您已将某个目标与给定广告系列或引荐正确关联,请执行以下操作:

  1. 点击指向您网站的引荐,这会设置广告系列 Cookie。
  2. 点击您的网站访问转化或目标网页。
  3. 检查 utmcc 参数中发送的数据,以确保该广告系列 Cookie 仍然有效。

跟踪代码捕获了所有广告系列信息后,会将其存储在 Cookie 中,该 Cookie 会在用户多次会话期间持续存在。 对于执行跟踪函数的每个网页,广告系列信息会在 GIF 请求中发送。因此,每次网页浏览都具有与其相关联的广告系列/引荐数据。如果将其中一个网页浏览配置为目标,则随后关联的网页浏览广告系列将与该目标相关联。要详细了解如何查找和解读 utmcc 参数,请参阅 GIF 请求参数使用 ga_debug.js 进行调试

返回页首

基本调试步骤

每当 Google Analytics(分析)跟踪代码执行时,都会向 Google Analytics(分析)收集服务器请求一个名为 __utm.gif 的单像素 GIF 图片。Google 捕获的关于特定网页请求的所有参数都将附加到图片的请求字符串,其中包括:

  • 网址浏览量信息
  • 广告系列信息
  • 电子商务数据
  • 浏览器属性
  • 客户端 ID

GIF 请求中包含的数据就是发送到 Google Analytics(分析)服务器的数据,这些数据随后会得到处理并出现在您的报告中。因此,通过查看 __utm.gif 请求中发送的数据,您可以确定跟踪代码是否正常工作,更重要的是,确定它是否正向您的报告发送错误的数据。

要调试跟踪代码,请按以下基本步骤操作

  1. 通过点击您网站上的相关链接,使用第三方调试工具检查针对 Google Analytics(分析)的 GIF 请求。
  2. 验证跟踪代码不包含任何常见的跟踪代码错误
  3. 确保 utmp 参数存在。
  4. 确保 utmcc 参数存在且非空。
    如果 utmcc 参数为空,则系统不会发送任何 Cookie 数据,并忽略请求。
  5. 重复测试几次以确保每次都发送 GIF 请求。

返回页首

调试工具

GIF 请求的网址附加有许多名称/值参数。您可以使用免费工具以更具可读性的形式显示 GIF 请求,而不是尝试完整地查看此字符串。下表列出了许多可与最常见的浏览器结合使用的工具。

为方便起见,我们开发了 Google Analytics(分析)跟踪代码调试程序,可帮助您排查跟踪代码问题,而无需您亲自更改代码。只需启用此扩展程序,您就可以检查自己的生产网页上是否存在错误。详细了解 ga_debug.js。

Browser 工具
All Firebug Lite
Chrome Google Analytics(分析)跟踪代码调试程序 新功能!
Chrome 内置的开发人员工具(比如 Resources
Firefox 实时 HTTP 标头
Firefox Firebug
Firefox 查尔斯
Internet Explorer Fiddler
Internet Explorer 查尔斯
Safari 内置“活动”窗口
Safari 查尔斯

安装并设置工具后,您可以打开要进行问题排查的网页,并在工具中查看 GIF 分析。首先,您需要确保相关网页确实在发送 __utm.gif 请求。只要您看到了相应请求,就可以确定 Google Analytics(分析)服务器正在从该网页收集数据。本部分的其余内容介绍了使用 Live HTTP Header 和 Firebug 的基本说明,以便您了解在网络浏览器中使用内置工具或插件是多么容易。

使用 Live HTTP Headers

  1. 下载并安装适用于 Firefox 的 LiveHTTPHeaders;重新启动浏览器。
  2. 打开 Live HTTP Headers(“工具” > “LiveHTTPHeaders”)。
  3. 点击 Generator(生成器)标签页。
  4. 访问您的网站(或任何已安装 Google Analytics(分析)跟踪代码的网页)。
  5. 验证是否对 urchin.jsga.js 发出了请求
  6. 检查是否对 __utm.gif 发出了请求。

使用 Firebug

Firebug 扩展程序提供了跟踪代码请求(urchin.jsga.js)以及 GIF 请求 (__utm.gif) 的结构更为明确的视图。以下步骤显示了如何使用 Firebug 查看 GIF 请求的详细信息。

  1. 下载并安装适用于 Firefox 的 Firebug;重新启动浏览器。
  2. 访问您的网站。
  3. 在 Firefox 中,依次选择“工具” > “Firebug” > “打开 Firebug” > “为此网站启用 Firebug”。
  4. 点击“网络”,然后点击“图片”。
  5. 重新载入网页,并检查列表中是否显示对 __utm.gif 的新请求。
  6. 在“参数”标签中验证请求的组成部分。

返回页首

使用 ga_debug.js 进行调试

除了标准 ga.js 之外,Google Analytics(分析)团队还部署了名为 ga_debug.js 的 Google Analytics(分析)JavaScript 替代版本。此脚本旨在帮助 Google Analytics(分析)用户排查安装问题。 如果您刚开始接触 Google Analytics(分析),或者想要将网站迁移到新的异步语法,此语法会特别有用。

此脚本会提供有关每个 GIF 请求的详细信息,并将在检测到跟踪代码中检测到问题时记录警告和错误消息。具体方法是将消息输出到 window.console 对象。然后,您可以使用以下工具之一查看这些错误:

  • Firebug(用于 Firefox)
  • 用于 Chrome 和/或 Safari 的内置工具
  • Firebug Lite(用于其他浏览器)

要使用 ga_debug.js 脚本,您可以修改您具有访问权限且可修改的网页的跟踪代码引用。为此,在该网页的跟踪代码中,将对 /ga.js 的所有引用替换为 /u/ga_debug.js。我们建议您,如果您针对某个大型网站使用调试脚本,那么我们建议您仅在测试环境中使用它。或者,如果您要调试一个较小的网站,建议您仅以这种方式测试部分网页,而不是整个网站。

重要提示:您不应修改自己的实际网站以适应此版本的 JavaScript。ga_debug.js 脚本比 ga.js 跟踪代码大,通常不会被缓存。因此,在您的生产网站上使用它会导致所有用户访问您网站的速度变慢。再次提醒您,这仅适用于您自己的测试目的。

如果您使用 Universal Analytics (analytics.js) 跟踪网站,则可以启用 analytics.js 的调试版本 analytics_debug.js,对跟踪代码进行问题排查。 如需详细了解 analytics_debug.js,请参阅 调试

使用 Google Analytics(分析)跟踪代码调试程序

Google Analytics(分析)跟踪代码调试程序是一款 Chrome 浏览器扩展程序,可为您启用 ga_debug.js,而无需您亲自更改代码。使用 ga_debug.js 可能是对您网站的跟踪行为进行问题排查和分析的最简单的方式。只需启用此扩展程序,您就可以检查生产网页是否存在错误,而无需修改代码本身中的跟踪引用。

若要使用此扩展程序,只需点击地址栏右侧的相应图标即可开启它。 然后打开 Chrome JavaScript 控制台,查看其中的消息。

  • 在 Windows 和 Linux 操作系统中,依次点击 [Page Icon] -> 开发人员 -> Javascript 控制台,或同时按 Ctrl-Shift-J。
  • 在 Mac 操作系统中,依次点击查看 -> 开发人员 -> Javascript 控制台,或同时按 Command-Option-J。

返回页首

GIF 请求参数

GIF 请求很长。以下示例仅为 GIF 请求的一部分:

http://www.google-analytics.com/__utm.gif?utmwv=4&utmn=769876874&utmhn=example.com&utmcs=ISO-8859-1&utmsr=1280x1024&utmsc=32-bit&utmul=en-us&utmje=1&utmfl=9.0%20%20r115&utmcn=1&utmdt=GATC012%20setting%20variables&utmhid=2059107202&utmr=0&utmp=/auto/GATC012.html?utm_source=www.gatc012.org&utm_campaign=campaign+gatc012&utm_term=keywords+gatc012&utm_content=content+gatc012&utm_medium=medium+gatc012&utmac=UA-30138-1&utmcc=__utma%3D97315849.1774621898.1207701397.1207701397.1207701397.1%3B...   

此表列出了通过 GIF 请求传入的许多参数。每次执行跟踪代码时,并非所有参数都会传入,因为有些参数仅适用于特定情况,如广告系列引荐或购物车。当使用此引用时,请记住您将查找应用于您正在调查的网页/请求的最常用变量。

变量 说明 示例值
utmac 账号字符串。在所有请求中显示。 utmac=UA-2202604-2
utmcc
Cookie 值。此请求参数将发送从网页中请求的所有 Cookie。

utmcn 开始一个新的广告系列会话。utmcn 或 utmcr 存在于任何给定请求中。更改广告系列跟踪数据;但不启动新会话
utmcn=1
utmcr
指示重复的广告系列访问。当对相同链接进行后续点击时,系统就会设置该变量。utmcn 或 utmcr 存在于任何给定请求中。
utmcr=1
utmcs
浏览器的语言编码。有些浏览器不设置此值,在这种情况下,此值会被设为“-”
utmcs=ISO-8859-1
utmdt
网页标题,是一个网址编码字符串。 utmdt=analytics%20page%20test
utme 可扩展参数 值已编码,用于事件和自定义变量。
utmfl
Flash 版本 utmfl=9.0%20r48&
utmhn

主机名,是一个网址编码字符串。 utmhn=x343.gmodules.com
utmhid

随机数字,用于关联 Google Analytics(分析)GIF 请求和 Google AdSense。 utmhid=2059107202
utmipc
产品代码。这是给定产品的 SKU 代码。

utmipc=989898ajssi
utmipn
产品名,是一个网址编码字符串。 utmipn=tee%20shirt
utmipr
单价。在物品级别设置。值为数字且仅使用美国货币格式。
utmipr=17100.32
utmiqt
数量。 utmiqt=4
utmiva
某个物品的不同版本。例如:大、中、小、粉红色、白色、黑色、绿色。字符串为网址编码。
utmiva=red;
UTM
指示浏览器是否启用了 Java 支持。1 表示启用。 utmje=1
UTM
为每个 GIF 请求生成的唯一 ID,用于防止 GIF 图片缓存。 utmn=1142651215
UTM
当前网页的网页请求。 utmp=/testDirectory/myPage.html
UTM
引荐,完整的网址。 utmr=http://www.example.com/aboutUs/index.php?var=selected
utmsc
屏幕颜色深度 utmsc=24-bit
UTM
屏幕分辨率 utmsr=2400x1920
UTM
指示请求的类型,包括:事件、交易、物品或自定义变量。如果 GIF 请求中不存在此值,则请求的类型为网页。 utmt=event
utmtci
账单邮寄地址所在城市 utmtci=San%20Diego
utmtco
账单邮寄国家/地区 utmtco=United%20Kingdom
utmtid
订单 ID,为网址编码字符串。 utmtid=a2343898
utmtrg
账单邮寄地址所在区域,为网址编码字符串。 utmtrg=New%20Brunswick
utmtsp
运费,单位和价格的值。 utmtsp=23.95
UTMtst
关联公司,通常用于电子商务中的实体商户。 utmtst=google%20mtv%20store
utmtto
总数。单位和价格的值。 utmtto=334.56
utmttx
税款。单位和价格的值。 utmttx=29.16
UTM
浏览器语言。 utmul=pt-br
utmwv
跟踪代码版本 utmwv=1

 

返回页首