2012年3月29日木曜日

Google Analytics イベントトラッキングガイド | MOL


Event Tracking Guide – Google Analytics – Google Code

コンテンツ

イベントトラッキングのセットアップ

イベントトラッキングのセットアップは簡単な2ステップが必要です。

  1. ga.js のトラッキングコードが設定されているかどうか確認してください。セットアップについての詳しい説明はTracking Sitesをご覧ください。
  2. イベントトラッキングで追跡したい各ページのオブジェクトもしくは要素に対して、 _trackEvent() メソッドをそのオブジェクトから呼び出してください。後述のガイドラインでこのメソッドを使ったベストプラクティスを説明します。

イベントトラッキングのレポートを見るには、『コンテンツ』の『イベントトラッキング』を選択します。
このメソッドをビデオやガジェットもしくはページのオブジェクトのソースコードに挿入してください。 _trackEvent() メソッドの仕様は以下です。

_trackEvent(category, action, optional_label, optional_value)

カテゴリ (必須)
追跡したいオブジェクトグループの名前

アクション (必須)
この文字列は各カテゴリー内で一意の名前であり、オブジェクトに対してのユーザーの行動を分かりやすく定義したもの

ラベル(オプション)
イベントデータを細分化したい場合、使用する文字列

バリュー(オプション)
ユーザーイベントに対して数値データを付与する整数

イベントトラッキングの構造

イベントトラッキングのデータモデルは、GAレポートで要素にマッピングされた項目を表示します。

  • カテゴリ
  • アクション
  • ラベル
  • バリュー
  • 暗黙的なカウント

サイト上でビデオの再生リンクのイベントをトラキングする場合、どのように使用すればよいのか簡単な例を用いて説明します。

Play

このシナリオのイベントレポートには、カテゴリは『Videos』、アクションには『Play』、ラベルには『Baby's First Birthday』が表示されます。これらの項目については後ほど説明します。イベントトラッキングを実装する際、この解析モデルをガイドとして利用でき、簡単ににユーザーの行動をセグメント化できることを頭の隅に置いておいてください。

カテゴリ

イベントトラッキングにおいて、『カテゴリ』はトラッキングするオブジェクトのグループ名を表します。 _trackEvent() メソッドの最初のパラメータで、必須です。

『カテゴリ』はイベントトラッキングレポートの概要ページのトップカテゴリに表示されます。これはカテゴリがイベントトラッキングの階層構造の中でルート要素であることを表していて、あなたは必要に合わせてカテゴリのグループを変更できます。一般的にカテゴリを分類するためにUIエレメントに基づいた同じ名前を複数回使用することになるでしょう。

例えば、一つのビデオインターフェイスにおいて3つの異なるユーザー行動をトラッキングする場合はこうなるでしょう。

pageTracker._trackEvent("Videos", "Play", "Gone With the Wind"); pageTracker._trackEvent("Videos", "Pause", "Gone With the Wind"); pageTracker._trackEvent("Videos", "Stop", "Gone With the Wind"); 

また、このビデオが何回ダウンロードされたか調べたい場合は以下のようにすれば良いでしょう。

pageTracker._trackEvent("Videos", "Downloaded", "Gone With the Wind");

この場合、イベントラッキングの『概要』には1つのカテゴリ(Videos)しか表示されてないでしょう。また、ビデオオブジェクトに対するユーザー行動の指標のセットを確認できます。


アメリア·イアハートはどのように背が高かった

しかしながら、2つ以上のオブジェクトをイベントトラッキングしたい場合、コードを実装する前にレポート上でどのように分類したいのか考慮する必要性があります。例えば、ある一人のユーザー行動ではなく、すべてのユーザー行動の総数を知りたいと思ったとき、『Videos』カテゴリ以下にある、すべてのビデオを別々にトッラキングすればよいだろう。

一方で、ビデオの種類(映画やPV等)によってカテゴリを分類したいかもしれない。またダウンロードは別にカテゴリ分けしたいかもしれない。

  • Videos – Movies
  • Videos – Music
  • Downloads

このシナリオの場合、イベントトラッキングの『概要』にて3つのカテゴリのイベント総数を決定できる。『イベント数』はあなたが実装したカテゴリのすべてのイベントを表示する。しかしながら、あなたはDownloadsを抜いてVideosだけのイベント数を見ることできないだろう。なぜなら、詳細なイベント数はそれぞれのカテゴリでまとめられているから。

イベントトラッキンは柔軟性が高い一方で、あなたは同じようなWebオブジェクトで _trackEvent() メソッドを呼ぶ前に何よりも、あなたが望むレポートになるように設計すべきでしょう。もし、同じカテゴリ名を複数のページで使用する場合、それが正しいかどうか気をつける必要性が出てきます。例えば、ビデオをトラッキングするのに『Video』を使用し、その後、そのことを忘れて複数形の『Videos』を使うと2つの異なるカテゴリを持つことになります。加えて、すでにトラッキングしてしまったカテゴリ名を変えようとしたとき、変更以前のオリジナルのデータは新しいカテゴリ名にまとめられません。つまり、あなたは同じページの要素をトラッキングするのに2つのカテゴリを持つことになります。

アクション

イベントトラッキングにおいて、『アクション』は _trackEvent() メソッドの2番目のパラメータを参照しこれもまた必須です。

pageTracker._trackEvent("Videos", "Play", "Gone With the Wind");

一般的に、アクションのパラメータにはトッラキングしたい要素に対するイベント・行動のタイプを記述します。例えば、あるひとつの『Video』カテゴリにおいてこのパラメータで特定のイベント数を計測したい場合、以下のようなイベントが考えられます。

  • ビデオのロードに要した時間
  • "Play" ボタンのクリック数
  • "Stop"ボタンのクリック数
  • "Pause"ボタンのクリック数

カテゴリと同様に、『アクション』にどのような名前を付けるかはあなた次第でありますが、イベントアクションがどのように振る舞うのか2つの特徴を押さえておきましょう。

すべてのアクションはその親のカテゴリから独立してリストされる。
これはイベントデータでセグメントできるということである。
ユニークなイベントはユニークなアクション名によって決まる
カテゴリを超えて同じアクション名が使えるが、ユニークイベントの算出方法に影響する可能性がある。詳細はImplicit Countの項目を参照していただきたい。

サイト内で広範囲に設置したイベントトラッキングの最適なレポートをアーカイブするためにも以下のことを気をつけましょう。


l.ongは、プラズマ続く方法

アクション名はレポートデータと関連したものでなければならない
イベントトラッキングは異なるカテゴリの2つの同じアクション名のデータを合計します。例えば、もし"Click"とアクション名を"Downloads"と"Videos"カテゴリ内で使ったとすると、アクションレポートのトップには"Click"という名前ですべての行動が記録されます。カテゴリレポートの次のレベルで"Click"の詳細は見ることできますが、イベントトラッキングコードに"Click"というアクション名を見境なく実装すれば、そのセグメントのレポートは役にたたなくなってしまうでしょう。もしサイト全体で広範囲にイベントトラッキングしようとするのならば、カテゴリに関連づけられたアクション名を考慮すべきです。例えば、"Click"はガジェット系のインタラクションを表すためにとっておき、また"Play" "Pause"や"Stop"はビデオプレーヤー用のインタラクションに取っておいてもよいでしょう。

全体で使うアクション名はインタラクションをまとめられるか区別できるようなアクション名にすべきです。
例えば、あなたのサイトのすべてのビデオに"Video"カテゴリの"Play"というアクション名をつけます。このモデルでは、アクションレポートのトップには"Play"アクションの合計数が表示され、"Pause" や "Stop"のような他のアクションとどのくらい違うのか確認できます。

しかし、1つのVideosカテゴリー内で2つの異なるビデオプレーヤのUIについてもっと情報が欲しいとも思うでしょう。新たにカテゴリを作らずに異なるChromeのプレーヤを区別できます。このレポートではサイト上のすべてのビデオのデータを合計するするメリットも失うことなく2つのスタイルのプレーヤを区別できます。

videoTracker._trackEvent("Videos", "Play - Mac Chrome"); videoTracker._trackEvent("Videos", "Play - Windows Chrome"); 

アクションは必ずしも"action"を意味しません
アクションのパラメータにはどんな文字列でも指定できます。ある状況では、実際のイベントもしくはアクション名はその名の意味するものでもないので、アクションパラメータにほかの要素をトラッキングする情報を使用しても問題ありません。例えば、ページのダウンロード数を調べたいとき、ダウンロードイベントのアクションパラメータにドキュメントのファイルの種類を記述することができる。このシナリオでは、"Downloads"カテゴリ内にpdf、doc、 xlsのようなファイルの種類を確認できます。

ユーザアクションごとにユニークイベントが増加する
ユーザは特定のアクション名の付いた要素にインタラクションすると、最初のインタラクションはそのアクション名の1ユーザーとしてカウントされます。続いて同じアクション名のついた行動をしてもそのアクションのユニークイベントにはカウントされません。これは、たとえユーザがオブジェクトから離れたとしても、もしくはほかの同じアクション名のオブジェクトを操作しても、ユニークイベントはカウントされません。

レポートにおいて2つの注目すべき点があります。まず最初に、ユーザが別々のカテゴリにある2つの異なるビデオプレーヤの"Play"のボタン操作したとします。アクションレポートのトップには2つのプレーヤを操作したにもかかわらず1つのユニークイベントしか記録されていない点です。次に、各々のカテゴリのアクションレポートには1つのユニークアクションが記録されている点です。確かに、カテゴリ/アクションごとにユニークイベントは1回しか起きていません。詳細はImplicit Countをご覧ください。

ラベル

イベントトラッキングモデルの _trackEvent() メソッドの3番目のパラメータである。このパラメータはオプションです。ラベルを使うことで、上記例のビデオの映画タイトルやダウンロードファイルのファイル名のような詳細な情報を記述することができます。


PBAメンバーはエボナイトから直接買うことができます
pageTracker._trackEvent("Downloads", "PDF", "/salesForms/orderForm1.pdf");

カテゴリ、アクションと同様に、ラベルはすべてのラベル名を表示するレポートインターフェイスを持ちます。ラベル名はページのオブジェクトに対するユーザ操作レポートの項目を追加する方法として考えるべきです。例えば、あるページに5つのトラッキングしたいビデオプレーヤがあるとします。各々のプレーヤは"Videos" カテゴリの"Play" アクションとして記述できますが、ラベルにはレポートで区別して表示するために異なるラベルを(映画のタイトルなど)記述することができます。

pageTracker._trackEvent("Videos", "Play", "Gone With the Wind"); pageTracker._trackEvent("Videos", "Play", "Huckleberry Finn");

イベント値

"Value" は _trackEvent() メソッドで使える4番目のオプションのパラメータです。このパラメータは文字列というより整数値という点で他と異なるので、ページオブジェクトに対しては数値を割り当てなければなりません。例えば、プレーヤのロードする秒数や、ビデオプレーヤの特定の操作をドル価値に当てたものなど測定できます。

pageTracker._trackEvent("Videos", "Video Load Time", "Gone With the Wind", downloadTime);

このイベント値は数値として解釈され、レポートには各々のイベントカウント(下記 Implicit Count参照 )の合計値が表示される。このレポートはカテゴリの平均値もまた測定できます。上記のコードにおいて、 _trackEvent() メソッドはビデオのロードが完了すると"Video Load Time" アクションが呼び出される。ビデオのタイトルはラベルによって決まり、各々のロード時間が正確に計測される。"Videos"の全ての"Video Load Time" アクションの平均値を確認することができる。あなたのサイトで5つのビデオダウンロードがあったとする。ダウンロード時間は以下の通りだ。

レポートインターフェイスは以下の通りで数値は秒数を表している。

# Visits w/Events Value Average Value
5 53 10.6

現時点で負の値はサポートされていません。

暗黙的カウント Implicit Count

イベントトラッキングにおいて、各々のページオブジェクトに対するインタラクションはカウントされ、ユーザーセッションに関連付けられています。レポート上、イベント総数はページオブジェクトに対するインタラクションの合計で計算される。一方で一回のユーザーセッションもしくは訪問で複数回のイベントを持つ場合、これは1訪問もしくは1ベントとしてカウントされます。

例えば、あるユーザーがビデオの同じボタンを5回クリックすると、ビデオの合計イベント数は5で、ユニークイベントは1ということになります。

以下の表によれば、カテゴリ内のレポート上でデータがのどのようにまとめらるのか分かるでしょう。この例では、同じカテゴリ名で2つの異なるビデオプレーヤがあり、ラベルによって区別されます。これらのプレーヤはFlash UI上で、"Play"や"Stop"などのアクション名を共有しています。


Event trackingfor "Videos" category
Action Type Label: "Gone With the Wind" Label: "Mr Smith Goes to Washington" Totals
Play 10 visits w/Event 5 visits w/Event 15 unique events "Play"
Pause 2 visits w/Event 8 visits w/Event 10 unique events "Pause"
Stop 2 visits w/Event 3 visits w/Event 5 unique events "Stop"
Totals 14 unique events for GWTW 16 unique events for Mr Smith 30 unique events for category "videos"

上記の表は、別々のユーザーセッション・訪問において、"Gone With the Wind"と"Mr Smith Goes to Washington" のインタラクションが独立して発生していると想定しています。しかしながら、以下の表はどのようにアクションが計測されるのか、もう少し複雑で典型的な(一回の訪問に対して、ユーザがあるビデオの"Play"ボタンを押し、さらにもう一つ別のビデオの"Play"ボタンを押したりするような)例を用いて説明しています。ユニークイベント総数はラベルを超えて"Play"アクションのユニークイベント総数に対して影響します。アクションのラベルごとのユニークイベントは17であるけれども、これは関連するディメンションごとのユニークイベントの合計であることを注意してください。それで、"Videos"カテゴリ内のユニークイベントの合計数は16になり、訪問数も16になります。

Event Tracking Calculation for "Play" Action
Action Type Label: "Gone With the Wind" Label: "Mr Smith Goes to Washington" Totals
Play 10 visits w/event 10 unique events "Play"
Play 5 visits w/event 5 unique events "Play"
Play 1 visit w/event on BOTH movies (two clicks on "Play") 1 unique event "Play"
Totals 11 unique play events for GWTW 6 unique play events for Mr Smith 16 unique events for category "Videos" and 16 unique events for action "Play"

実装上の注意事項

イベントトラッキングを実装する際に以下のことを覚えておいてください。

直帰率への影響

一般的に『直帰』というのは1ページだけの訪問と言われています。Google Analyticsにおいて、直帰は1回のGIFリクエストがトリガーとなって明確にセッションとして記録されます。それは、あるユーザーがあなたのサイトに来て、出て行く時に2回目のリクエストをAnalyticsサーバーにリクエストしないようなセッションです。しかしながら、イベントトラッキングが実装するのなら、あなたはこれらのイベントトラッキングコードが実装されているページの直帰率の変化に気づくでしょう。これらは原因はイベントトラッキングがGIFリクエストを発生させるためです。

例えば、ビデオプレーヤを埋め込んだページがあるとしましょう。通常このようなページは直帰率が高いです。加えて、このページにはイベントトラッキングコードは実装されていません。もし、その後このプレーヤにイベントトラッキングコードを実装したのなら、このページの直帰率は減少するはずです。なぜなら、Google Analyticsはユーザのビデオプレーヤに対するインタラクションを記録し、サーバにGIFリクエストを送信しているのです。したがって、実際に直帰している人の割合は変わっていないけれども、ビデオプレーヤのイベントトラッキングが読み込まれるため、このような振る舞いは直帰とは見なされないのです。

このように、イベントトラッキングを実装したページの『直帰』とは普通とは微妙に違うことを意味します。1ページだけの訪問とはトラックイベントを含まないことです。


ページロード時に自動的にイベントトラッキングを実装するような場合、直帰率がゼロになることありますので、非常に注意しなければなりません。このようなケースはTimeTrackerの例や同様なユーティリティ的な実装に起こります。

イベント毎のセッション時間

一回の訪問(ユーザーセッション)で、トラッキングできるGATCリクエスト(イベントもPVも含めて)の最大数はおおよそ500です。プログラム的にイベントを生成する場合は覚えておかなければなりません。注意すべきことは、一回のセッションでリクエスト数が限界に近づくにつれて、イベントはトッラキングされないかもしれません。例えば、このようにすべきです。

  • 再生している毎秒ごとにイベントは発生させたり、連続的に発生するイベントトリガーを生成するようなスクリプトは避けるべきです
  • マウスの動きを過度にトラッキングすることは避けるべきです。
  • 細かくカウントするようなタイムラップの仕組みは避けるべきです。

さらにセッションの仕組みについての情報が欲しければ、このトピックを参照してください。

関連すると思われるエントリ

Tags: google analytics



These are our most popular posts:

ルーティング イベントの概要

Handled 状態がルーティング イベントに生成する動作に加えて、Handled の概念は、 アプリケーションの設計方法およびイベント ハンドラ コードの記述方法にも影響します。 Handled は、ルーティング イベントによって公開される ... read more

JavaScriptの記述方法

JavaScriptの記述方法、HTMLへの記述する場合、外部ファイルを参照する場合などの 解説. ... 「onmouseover」と「onmouseout」はイベントと言われそれぞれマウスが重なっ た時と外れた時に実行するプログラムをに記述しています。 「this」はオブジェクト名 ... read more

VB6 イベントを作る - RaiseEvent, WithEventsなど

今回はイベントを自作する方法を説明します。 ... この回の要約. ・イベントはPublic Event EventName のように宣言する。 ・イベントを発生させるにはRaiseEventを使う。 ... しかし、最終的にはこの部分でMaxで指定された値を超えるかどうか判断してイベント を発生させるなどの処理を記述する必要があるので、とりあえず上記のようにして あります。 read more

Silverlight のイベントの概要

部分クラスと XAML の分離コードを組み合わせて使用する方法の詳細については、「 分離コードと部分クラス」を参照してください。 部分クラス内のイベント ハンドラーは、 対応するイベントが使用する CLR デリゲートに基づき、メソッドとして記述します。 イベント ... read more

0 件のコメント:

コメントを投稿

登録 コメントの投稿 [Atom]

<< ホーム