ブラウザを特定するclient ID と同一ユーザーを特定するUser ID を表示して、個人の行動分析をより正確に行うには

データ収集と集計仕様

投稿日:2014/9/12 作成者:衣袋 宏美

ユニバーサル アナリティクスでオプションとして利用できる「User ID 機能」は、同一人物による様々なデバイスやブラウザからの利用を繋げて、本当のユーザー行動を明らかにする機能だというのが売りですが、いま一つ中途半端な機能であることは、まず下記の記事をご覧になって頂きたいと思います。

User ID 機能は同一人物の異なるClient IDを結び付けることで実現する仕組み
User ID 機能は毎ページUser ID情報を付与し続けないといけない残念な機能
User ID 機能を使っても本当のユーザーの動きは分からない
User ID 機能を利用して見ることのできるレポートとは
User ID 機能を有効にするためのトラッキングコード

この標準の「User ID 機能」よりもユーザー行動をより正確に把握し、ユーザー理解をするために、匿名の個々人のデータを可視化するのがよい解決法です。その第一段階として、下記の記事では、clientId という個々のブラウザ(人ではなくて)の閲覧であることを紐付ける IDをカスタム ディメンションに入れてカスタム レポートで視覚化するという方法を紹介しました。
ユニバーサル アナリティクスでクライアント ID を表示して、個々人の行動分析をするには

本記事では、これにさらに User ID 情報をカスタム ディメンションに入れてカスタム レポートで視覚化するという方法を紹介します。どういうメリットがあるかと言えば、標準の「User ID 機能」はページレベルでしかユーザーを紐付けてくれませんが、カスタム ディメンションを使えば、ユーザーレベルでその後同一性を紐付けることが可能になるので、一度ログインしてUser ID 情報をカスタム ディメンションに格納すれば、その後ログインしなくても同一性を保持でき、利用行動が自動的に繋がるということ、また自動的にはできませんが、手動で遡って同一性を繋げることも可能になります。

それでは始めましょう。

 

●実装方法
User ID 情報を取得する通常のトラッキングコードのカスタマイズと同時に、同情報を別途カスタム ディメンション(ユーザーレベルの)にも格納します。ここではカスタム ディメンションの2番目を使うこととします。

User ID情報は、閲覧者がログインした際にしか取得できませんので、ログインした場合に下記の2行のトラッキングコードが動作するようなプログラムも一緒に記述する必要があります。当然各サイトによって環境が異なるので、ここで動的に動作させるプログラムは個別に開発して下さい。ここでは省略していますので、下記の2行を単に追加記述しても動作しません。

下記では、2カ所ある「xxxxx」という文字列に個々のUser ID 情報が最終的には格納されるようにします。1行目は標準の「User ID 機能」を利用するために必要なカスタマイズ部分で、本記事の目的からいえば必須ではありませんが、標準の機能で見ることのできる情報との違いも確認したければ、記述しておいても損はないでしょう。

2行目がUser ID 情報をカスタム ディメンションの二つ目に格納するための、トラッキングコードになります。なおカスタム ディメンションはアナリティクス設定で使用することを宣言しておかなければいけませんが、その方法はここでは解説しません。

ga('set', '&uid', 'xxxxx');
ga('set', 'dimension2', 'xxxxx');

 

●集計対象元の閲覧行動データ
今回の例におけるレポート表示対象とした閲覧行動データは図1のグレイに塗った部分になります。
 

図1:元データ

図1:元データ

 

上から時系列にセッション別のデータの塊だと思って下さい。一番上の行を例にとって説明すると、clientIDを取得しているカスタム ディメンション1(列B)の値は「14144583.1408839247」で、このブラウザからの訪問ではログインしていない(列Cは「×」)ので、User ID 情報は取得できないため、列D及び列Eの部分には何の値も格納されません。そしてこのセッションのページビュー数は2(列Fの値)だということを示しています。

User ID 情報を格納する列Dについては、レポート上では確認できずGoogle アナリティクスが裏で保有している値で、列EはUser ID 情報をカスタム ディメンション2に格納して、カスタム レポートなどで確認できる値という見方をして下さい。

カスタム ディメンション2に一旦格納したUser ID 情報の方は、その後、訪問番号7や8のケースのように、ログインしなくても、値としてはユーザーレベルで保持するので、標準のUser ID 機能では保持しない情報(列D)も、同一ユーザーであるという情報をカスタム ディメンション2に保持(列E)しながらデータを繋げることができるというのが、標準の「User ID 機能」だけでなくカスタム ディメンションも追加利用する理由です。

 

●レポート表示
では、この前提でレポートを見てみましょう。カスタム ディメンションで取得したデータは標準のレポートでは、セカンダリ ディメンションを使って表示させるか、カスタム レポートを作って、そのレポートを見るしか方法はありませんので、カスタム レポートを作成しておくのがよいでしょう。

カスタム レポートは最低でもclientId とUser ID の紐付けが可能なレポートは作成しておきましょう。そうしておけば、あるブラウザでログインして、特定のclientId と特定のUser ID の紐付けができたら、過去に遡ってユーザー行動を(手動で)繋げることもできますから、この紐付け情報がわかるレポートを作成しておくのは必須です。

 

図2:clientId とUser ID の紐付けが可能なレポート

図2:clientId とUser ID の紐付けが可能なレポート

 

図2をご覧いただければ分かりますが、clientId とUser ID の紐付けが直接可能な、図1の訪問番号3,4,5の3行のB列とE列の組合せが抽出されてレポートになっているわけです。clientId 別にセッション数やページビュー数をまとめたカスタム レポートが図3になります。

 

図3:clientId 別のカスタム レポート例

図3:clientId 別のカスタム レポート例

 

さらに図4のように、特定のclientId を選択し、訪問時間と閲覧ページの組み合わせで見るレポートを作成するなどすることで、より個別のブラウザ別の行動に展開してみることもできます。

図4はclientId が「152628891.1410015751」(図3の2行目)の2セッション、5ページビューの閲覧時間とページ明細になります。図4赤枠部分がはじめのセッションで9/7のゼロ時に2ページ閲覧し、図4青枠部分が同9時に3ページ見ているという明細です。

 

図4:特定のclientId の訪問時間と閲覧ページの組み合わせ

図4:特定のclientId の訪問時間と閲覧ページの組み合わせ

 

ここではレポート例を表示しませんが、プライマリ ディメンションにカスタム ディメンション2番目に定義したUser ID 情報を持ってきて、そこに紐づく複数のclientID の閲覧行動をまとめて見れば、一人のユーザーの閲覧行動を繋げてみることができるということになります。

ただ残念なのは、誰(User ID )がいつ、どのデバイスやブラウザ(clientID )からどのチャネルで訪問し、どのページをどの順番で見たのかを簡単に一望できるカスタム レポートを作ることができません。

そのようなカスタマージャーニー分析をするには、生データに近いものが出力できないと自由に問題意識に応じた加工ができないので、やはりなるべく生データに近いデータがあった方がベターです。次回はそれに近いレポートを作成する方法を紹介します。

 

お知らせ