トラッキングコードのカスタマイズ

ここで解説しているのは、ユニバーサル アナリティクス以前の古いコードについてです。

Analyticsのコード

Google Analyticsをカスタマイズするためには、そのコードの意味を理解することが重要です。具体的には、ページに埋め込む以下の部分のコードについてです。

var _gaq = _gaq || [];

_gaq.push( [ '_setAccount', 'UA-XXXXXXX-X' ] );
_gaq.push( [ '_trackPageview' ] );

( function()
{
    var ga = document.createElement( 'script' );
    ga.type = 'text/javascript';
    ga.async = true;
    ga.src = ( 'https:' == document.location.protocol ? 'https://ssl' : 'http://www' )
        + '.google-analytics.com/ga.js';

    var s = document.getElementsByTagName( 'script' )[ 0 ];
    s.parentNode.insertBefore( ga, s );
} )();

Google Analyticsのコードについては、Google Analytics | Google Developersで解説されています。個々のメソッドについては、Google Analytics Tracking Code - Google Analytics | Google Developersが参考になります。

従来の同期コード

var pageTracker = _gat._getTracker( 'UA-xxxxxxx-x' );
pageTracker._trackPageview();

トラッキングの追加

アウトバウンド リンク (outbound link)

外部サイトへのリンクでは、処理の完了前にページが切り替わると、イベントが記録されないことがあります。

ファイルのダウンロード

ファイルのダウンロードをトラッキングするには、「サイトからのファイルのダウンロード (PDF、AVI、WMV など) をトラッキングするにはどうすればよいですか」にあるように_trackPageviewメソッドを使用することで実現できます。しかしこの方法では、ダウンロードがページビューとしてカウントされてしまう欠点があります。

しかしこの問題はEvent Tracking Guide_trackEventメソッドによって解決できます。このメソッドの書式は、

_trackEvent( category, action, opt_label, opt_value )

のようになっており、HTMLコード内に

<a href="file.zip"
  onclick="javascript:_gaq.push( [ '_trackEvent', 'category', 'action', 'opt_label' ] );">
ダウンロード</a>
push - Tracking Code: The _gaq Global Object - Google Analytics | Google Developers

のように埋め込みます。ちなみに従来の同期コードでは、これを

<a href="file.zip"
  onclick="javascript:pageTracker._trackEvent( 'category', 'action', 'opt_label' );">
ダウンロード</a>
Tracking Code: Event Tracking - Google Analytics | Google Developers

のように記述していました。

サイト内検索

以下のメソッドを、検索キーワードを付加したURLを引数に呼び出します。

function trackQuery( query )
{
  var gaQueryParamName = 'q';
  var loc = document.location;

  var url = [
      loc.pathname,
      loc.search,
      loc.search ? '&' : '?',
      encodeURIComponent( gaQueryParamName ),
      '=',
      encodeURIComponent( query )
    ].join( '' );

  _gaq.push( [ '_trackPageview', url ] );
}

サイト内検索 (Google カスタム検索) の導入方法

認識できる検索エンジンの追加 (pageTracker._addOrganic)

レポートにアクセス元の検索エンジンを表わす項目がありますが、ここで解析できるのはあらかじめ登録されている検索エンジンに限られます。


検索エンジンからのトラフィック一覧

既定で認識できる検索エンジン
Google Analytics はどのような検索エンジンを認識しますか。 - Analytics ヘルプ

しかしトラッキングコードを修正することで、対応する検索エンジンを増加させることができます。参照元レポートに検索エンジンを追加するにはどうすればよいですか。 - Analytics ヘルプ

_gaq.push( [ '_addOrganic', 'new_search_engine', 'q' ] );

ユニバーサル アナリティクスではGoogle Analyticsの管理画面から設定でき、このようにコードを記述する必要はなくなりました。オーガニック検索ソースをカスタマイズする - アナリティクス ヘルプ

従来の同期コード

pageTracker._addOrganic( 'goo', 'MT' );
pageTracker._addOrganic( 'nifty', 'Text' );
pageTracker._addOrganic( 'excite', 'search' );
pageTracker._addOrganic( 'infoseek', 'qt' );
pageTracker._addOrganic( 'livedoor', 'q' );
pageTracker._addOrganic( 'biglobe', 'q' );
複数の技術系サイトから、まとめて検索