クライアントIDとは?表示させるメリットは?

クライアントIDとは、ユニバーサル・アナリティクスにおいて、個々のブラウザの閲覧を紐づけるためのIDで、各ブラウザのCookieの中に格納されているIDになります。
ユニバーサル・アナリティクスでは、このクライアントIDが同一のときに同一ユーザーの訪問と判断します。

しかし、ユニバーサル・アナリティクスにおいて、これらユーザーごとの閲覧行動を標準で見ることができるレポートが準備されていません。ユーザーごとの閲覧行動を見えるようにするには、トラッキングコードのカスタマイズが必要になってきます。

コンバージョン数が非常に多いサイトでは、個々の行動を細かくチェックすることはできませんが、コンバージョンが日に数回しか発生しないような規模・形態のサイトの場合、コンバージョンユーザーを1人ずつ取り出して、過去の閲覧行動をチェックする、ことによって今度のアクションプランに役立てることができるようになります。

設定方法

Googleアナリティクスの設定

こちらは、ほとんど設定する項目はありません。1箇所だけ、「アナリティクス設定」からカスタムディメンションを作成します。「プロパティ」の設定項目の中から「カスタム定義」「カスタムディメンション」を選択し、

  • 名前:クライアントID
  • 範囲:ユーザー

といった情報でカスタムディメンションを作成します。作成後、今作ったカスタムディメンションのIDが割り振られます。あとで用いるのでメモしておきましょう。

Googleタグマネージャーの設定

タグマネージャーは多くの設定が必要になります。いつでも、元の状態に戻せるように、現在の状態をエクスポートして保存しておいたほうがいいかもしれません。なお、ここでの説明は、Ver2のGoogleタグマネージャー(マテリアルデザイン化された新しいUIのGoogleタグマネージャー)を対象に説明しますが、Ver1のGoogleタグマネージャーを使っている方も適宜読み替えていただければ問題ありません。

「変数」の追加

必須ではないですが、この後の作業をやりやすく、またGoogleタグマネージャーの管理をしやすくするために下記のVariablesを追加してください。

変数の種類 変数名
定数 GoogleAnalyticsTrackingID UA-123456-7
定数 GoogleAnalyticsTrackerName MyTracker

なお、TrackingIDは実際にご利用中のGoogleアナリティクスのプロパティのTrackingIDを指定してください。GoogleAnalyticsTrackerNameは任意の値で問題ありませんが、ここでは「MyTracker」としています。

既存のユニバーサル・アナリティクス・タグの更新

まずは、既存のユニバーサル・アナリティクスのタグを、上記で作成した変数を使用する形に変更しておきましょう。

ユニバーサル・アナリティクスのタグの タグを設定トラッキングID の箇所に

{{GoogleAnalyticsTrackingID}}

を指定し、 その他の設定 内の 高度な設定 にある トラッカー名を設定する にチェックを入れ、 トラッカー名 欄に先ほど作成した変数

{{GoogleAnalyticsTrackerName}}

を指定します。もし、 Track Type がPage View以外のユニバーサル・アナリティクスタグ(例えば、イベントトラッキングであったり、Eコマースのトランザクション用のタグなど)が存在するのであれば、それらも全て同様の変更を行ってください。

この時点では、Googleアナリティクスに送信されるデータは何も変わっていないはずです。必要であれば、この時点でデバッグを実行し、変更前と同じ動作をしているか?(タグを破壊してしまっていないか)を確認しておきましょう。

クライアントIDを取得するためのカスタムHTMLタグを追加

新規にタグを追加します。 プロダクトを選択 で「Custom HTML tag」を選択し 配信するタイミング では、現在ユニバーサル・アナリティクスタグを読み込んでいる条件と同じものを指定します。
タグ名 には「ユニバーサル・アナリティクス - クライアントIDの読み込み」などと入れ、 HTML に下記のスクリプトを入力します(ここの内容は基本的に変更する必要はありません)。

<script>
  (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
  (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
  m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
  })(window,document,'script','//www.google-analytics.com/analytics.js','ga');

  ga('create', '{{GoogleAnalyticsTrackingID}}', 'auto', {'name': '{{GoogleAnalyticsTrackerName}}'});
  ga(function() {
    var tracker = ga.getByName('{{GoogleAnalyticsTrackerName}}');
    dataLayer.push({
      'event': 'clientIdLoaded',
      'clientId': tracker.get('clientId')
    });
  });
</script>

このスクリプトでは、Googleアナリティクスのライブラリを読み込み、最初に作成したトラッカー名を用いて、Googleアナリティクスのトラッカーを作成します。Googleアナリティクスのトラッカーの作成が完了しああとに、トラッカーを取得し、dataLayer変数にクライアントIDとイベント変数をpushしています。

変数の追加

先ほどは定数の変数を作成しましたが、今回はdataLayer変数を使った変数を作成します。

項目 設定値
変数の種類 データレイヤーの変数
変数名 clientId
データレイヤーの変数名 clientId
データレイヤーのバージョン Version 2
デフォルト値を設定 チェックあり
デフォルト値 Unknown

トリガーの追加

新たに、ユニバーサル・アナリティクスのページトラッキング用に用いるトリガーを作成します。ページトラッキング時にクライアントIDを取得するためには、変数の「clientId」が利用可能なタイミングでなければいけません。clientIdが利用可能なタイミングはイベント変数「clientIdLoaded」で管理しているので、こちらを用います。

では、トリガーの追加画面で下記のトリガーを登録してください。

項目 設定値
イベントを選択 カスタムイベント
イベント名 clientIdLoaded
正規表現一致を使用 チェックなし
トリガー名 clientIdLoaded

ユニバーサル・アナリティクスのページビュータグを更新

変更箇所はトリガーの指定と、カスタムディメションの指定の2箇所になります。

まず、トリガーを現在のものから、上で作成したトリガー clientIdLoaded に変更します。これで、このタグが呼び出されたタイミングで、変数 clientId が有効になります。

次に、 その他の設定 内の カスタムディメンション で、 カスタムディメンションの追加 ボタンをクリックし、カスタムディメションclientIdを指定します。インデックスには、最初にGoogleアナリティクスでカスタムディメンションを作成したときにメモしたid(数値)を入力し、 ディメンションの値 には、変数を用いて、

{{clientId}}

を入力し、タグを保存します。

動作確認

以上で、GoogleアナリティクスのカスタムディメンションにクライアントIDを登録するための設定作業が完了します。正しく設定できているか、Debugモードで確認します。確認はGoogleタグマネージャのデバッグ機能を用いて行うこともできますが、Chromeの拡張機能 Tag Assistantを使い、Googleアナリティクスに送信されたデータを確認するのがオススメです。カスタムディメンションのパラメーター名は、「cd1」や「cd2」といった名前になっているので、

  • 送信されたデータに、パラメーター名「cd1」「cd2」といった名前のものが存在するか(数字部分は定義したカスタムディメンションのIDに置き換えてください)
  • その値は「cid」というパラメーター名の値と同じものであるか

あたりをチェックすればOKです。また、イベントトラッキングなどカスタムしたGoogleアナリティクスタグが存在する場合は、それらの動作についても確認していただき、問題なければ本番環境にパブリッシュして完了です。

Googleアナリティクス側の画面でのレポートについては、元の記事(ユニバーサル アナリティクスでクライアント ID を表示して、個々人の行動分析をするには )を参考にカスタムレポートなどを作成してみてください。
また、コンバージョンしたユーザーのクライアントIDだけを表示させるカスタムレポートを作成し、コンバージョンユーザーのクライアントIDを確認し、アドバンスセグメントで、クライアントID指定で絞り込んで、流入元、閲覧ページ、ページごとの遷移順序、ページごとの滞在時間、過去の訪問状況などを見ていくと、施策を打つ上で有効な手がかりが見つかるかもしれません。

まとめ

Googleタグマネージャーに移行してしまい、クライアントIDを設定する方法が分からなかった方、クライアントIDを設定する方法が分からなくてGoogleタグマネージャーへ移行していない方、どちらにとっても朗報です。
この機会に、Googleタグマネージャーを利用していない方は移行してみてはいかがでしょうか?