ユニバーサルアナリティクスでのカスタム指標活用例

1.はじめに:なぜ今カスタム指標か?なぜ今ユニバーサルアナリティクスか?

カスタム指標についての記事がインターネット上に少ないと前々から感じこのような記事を書くことにしました。「なぜ、このタイミングでユニバーサルアナリティクスのカスタム指標なんだ?」と、思われる方もいらっしゃるかもかもしれません。

最近は「Google アナリティクス4」が本格的に「始まりの始まり」を迎えました。製品としては発展途上の状況ですが、アナリティクスのヘルプコミュニティ界隈ではだいぶ質問も増えているようです。ユニバーサルアナリティクスではセッションが重要視された設計でしたが、Google アナリティクス 4ではおそらくヒットや商品スコープが重要になっていくのではないかと個人的に考えています。

BI等の他のツールでGoogel アナリティクスの集計をするのが増えてきておりますし、Google Analytics4はBigQueryでの分析を前提に設計されているようですのでデータ整備の工数をできるだけ少なくするためにカスタム指標を使う必要が出てくるのではと考えています。データをダウンロードするのもよいのですが、目的のデータを出すために、複数のレポートを参照し結合させるよりは、(カスタム指標で)ほしい指標をほしい内容で取っていおいて計算できるようにしておくことは有益だと思います。

記事の内容はユニバーサルアナリティクスのものになりますが、Google Analytics4でも同じような設計になるはずだと考えて(信じて)おり、Google Analytics 4が未だベータ版のような感じなので製品として完成しているユニバーサルアナリティクスで今のうちに予習をしておくことも重要だと思います。

以上の理由から今ユニバーサルアナリティクスのカスタム指標について、一度ドキュメントにしておくことは意義があるのではないかと考えるようになりました。

2.本記事の前提

  • 対象のGA:ユニバーサル アナリティクス
  • 実装方法:Google タグマネージャでの実装(トラッキングタグの改修での取得については公式リンクを参照ください)
  • レベル:Google タグマネージャーでイベントやカスタムディメンションの設定をしたことがある方向け
  • 実装内容:①ヒットスコープの事例では、ページの詳細分析、②商品レベルの事例では、購入(トランザクション)の詳細分析
  • ※本記事を参考にしたことによるいかなる結果についても、筆者は一切の責任を負いません。もし内容に間違い等ございましたら、後学のためにご指摘いただけましたら幸いです。

3.カスタム指標について

3-1.カスタム指標とは

GAで独自の指標を取得するための設定のこと。

3-2.カスタム指標のメリット

メリットはこちらの記事にもあるように、「計算指標で活用できる」、「ページを細かく分析できる」というところにあります。

筆者は、計算指標に活用できるというだけでなく、ExcelやBI上でもしたい計算が比較的短い時間でできるので重宝しています。BIの使用頻度が増えている昨今では、カスタム指標で取得したい値をほしいデータ型(整数、小数、時間)で取っておいて、要件に合わせて自由に計算できるのが計算指標で使用できるということよりも大きなメリットだと思います。また、ページを細かく分析できるということに関しては、設計によってはかなり効率的にデータを閲覧したり、計算したりできます。

3-3.カスタム指標の範囲(スコープ)

スコープとはGoogle アナリティクスにおけるそれぞれの項目の範囲のことです。詳細については、公式にも記載がございますので、是非ご確認ください。 カスタム指標のスコープはヒットレベルと商品レベルのみです。ヒットレベルではブラウザからGoogle アナリティクスのサーバーにデータが送信されるタイミング(ページビュー、イベントやトランザクション(商品購入))で計測されます。商品レベルでは、トランザクションのタイミングで、その購入に含まれる個別の商品種類ごとにデータを計測できます。

3-4.カスタム指標の制限

プロパティごとに無償版では20まで(有償版は200まで)設定可能

4.ヒットレベルでのカスタム指標

それでは本題に入ります。まず、ヒットレベルでカスタム指標を活用するケースを考えてみます。ヒットレベルのカスタム指標に関しては、こちらの内容をかなり参考にし、実際に筆者が設定した内容をご紹介します。

4-1.ヒットレベルでのカスタム指標を使用する想定ケース

  • 検索エンジンから集客したページに点数をつけたい
  • どのページでどの共通バナーがクリックされているかを把握したい
  • 他ページにどれくらいユーザーを誘導しているかを把握したい

→それぞれアナリティクスのレポートを複数駆使すれば、カスタム指標を使わずとも分析できるものばかりですが、分析工数やBIとのデータ連携を考えるとカスタム指標で計測した方が効率的です。

今回はこのようなデータをカスタム指標で取得しました。

4-2.レポートの例

実際に上記の設定をして出したレポートがこちらです。

一部、計算指標を含みますが、複数のディメンションの掛け合わせや、複数のレポートを閲覧しなくてもページの特徴を把握できるのがわかります。例えば、戦略的デジタルマーケティング分析(TOPページ)や記事紹介ページは他ページ誘導率が低いため、ユーザーがページ遷移をしづらい何らかの原因があるかもしれません。また、Search Engine TrafficとDirect Trafficを比較することで、各ページの流入のきっかけの違いを確認することもできます。通常、こうした内容を把握するためには、ランディングページと参照元の掛け合わせが必要となりますし、その場合、ひと目での比較がしずらくなります。

4-3.設定のポイント

それでは、設定のポイントについてまとめます。

4-3-1.Google アナリティクスでの設定

レポート画面を「管理>カスタム定義>カスタム指標」の順で遷移し、それぞれのカスタム指標を設定します。特に、「フォーマットタイプ」(整数、小数、% 等)は注意をしながら選択をしましょう。

「インデックス」の番号はタグマネージャーでデータ送信の設定をする際に使用しますので、場合によってはカスタム指標名とインデックスの番号、フォーマット、ヒットタイプはExcel等にまとめた方が良いと思います。

4-3-2.Google タグマネージャーでの設定

タグマネージャーでは、ページビュータグやイベントタグの「詳細」の部分で、カスタム指標のインデックスとカスタム指標で計測する値を設定していきます。

4-3-2-1.タグの設定

動的に値を設定する場合には、データレイヤータグをサイトのソースコードに書き出す必要がありますので、その場合は、システムベンダー様等サイトのコードを管理をしている部署や会社に相談も必要です。本記事では、動的な値の取得については、後述の商品スコープの事例で一部サンプルを示します。

4-3-2-2.トリガーの設定:Internal LinkClick(サイト内リンク計測)の設定例

サイトドメインを含むURLのクリックで発火。

タグマネージャでは、スクロール率や、要素の表示など、コーディングをしなくても取得したいデータを取れる設定(組み込み変数)が内蔵されていますので、目的に合わせてこれらを活用しましょう。

場合によっては、カスタムJavaScript変数を使用して1から取得したい値をコーディングする必要も出てきます。設定のポイント関しては以上となります。大きくカスタムディメンションと変わることはありません。設定時には、公開前にプレビューモードでデータが正しく取得されるかを確認することを推奨いたします。

5.商品レベルでのカスタム指標(拡張eコマース)

ここからは、拡張eコマーストラッキング設定で使用できる商品レベルでのカスタム指標の活用例を扱います。(本記事では、ECサイトから対象をずらして、ホテル予約サイトで拡張eコマースを使用する例を考えます。)

5-1.商品レベルのカスタム指標とは?

商品レベルのカスタム指標では拡張eコマーストラッキングのトランザクションヒットが送信されるタイミングで、単数または複数の個々の商品の情報を、トランザクションに属する形で計測できます(下記にイメージ図)。実装時は、この関係を理解しながら、設定をしていかないと混乱してしまうと思います。

5-2.商品レベルでのカスタム指標を使用する想定ケース

では前述の通り、ホテル予約サイトで拡張eコマースのカスタム指標を使用するケースを考えていきます。

  • 宿泊プランだけでの売上
  • オプションの売上
  • 宿泊日数
  • 宿泊人数
  • 大人の人数
  • 子供の人数
  • 予約部屋数
  • 特殊な税金(入湯税、宿泊税)

※拡張eコマーストラッキングで取得できる項目ををすべて使用するのは稀だと思いますので、わざわざカスタム指標で取得しなくてもデフォルトの商品レベルの指標で数値を取っておくという考え方もありです。しかし、その場合、レポート上の項目名と取得している実際の数値が異なったり、拡張eコマースの標準のレポートの集計に影響が出る可能性があるので、カスタム指標で任意の値を取得するのが良いのでは考えます。拡張eコマースで取得できる項目については、公式もご参照ください。

5-3.レポートの例

それでは、レポートの例を見ていきます。今回の例ではトランザクションIDごとに、商品レベルのカスタム指標を紐付け予約内容によって様々な角度で予約内容を区分けできるようにしています。もちろん、組み方によってはBIに接続した際に有効活用可能です。

5-4.設定のポイント

続いて設定のポイントについてまとめます。

5-4-1.Google アナリティクスでの設定

カスタム指標を設定しましょう。今回は範囲(スコープ)は商品を選択します。例ではフォーマットタイプがすべて「整数」になっていますが、費用系は「通貨」が良いと思います。その際は、Google アナリティクス側での通貨の設定が日本円になっていることをご確認ください。

また拡張eコマースを使用しますので、ビューのeコマースの設定でeコマースと拡張eコマースが有効になっていることの確認をしましょう。(特に、ビューが複数ある場合にはデータを適用したいすべてのビューでの設定を忘れないようにしてください。)

5-4-2.データレイヤータグ

拡張eコマースでは、サイトのソースコード上でデータレイヤータグを使用し、動的な値(つまり、取引内容によって変動)を書き出したものをGoogle タグマネージャに送信して計測をします。タグの設置場所はHTMLの headタグ内の、Google タグマネージャタグよりも上が公式では推奨されています。

タグのサンプルは下記です。カスタム指標を商品(product)レベルで設定している例です。 Qiita にも同様のタグを掲載しておきました。

  1. <script>
  2.     dataLayer.push({
  3.         “ecommerce”:{
  4.         “purchase”:{
  5.         “actionField”:{
  6.         “id”:”xxxx-xxxx-xxxx”,//購入ID
  7.         “revenue”:,//収益
  8.         “tax”:
  9.     },
  10.     “products”:[{//購入商品の種類に応じてノード数は変動させる
  11.         “id”:””,
  12.         “name”:””,//商品名
  13.         “price”:,//個別の商品の料金(price*quantityで合計値と等しくなるように。そうしないとレポート上での「商品の収益」の値がおかしくなる)
  14.         “quantity”:,//商品の個数
  15.         “metric1”:,//カスタム指標1(priceやquantity異なり、商品全体の総数を書き出すようにする)
  16.         “metric2”:,//カスタム指標2
  17.         “metric3”:,//カスタム指標3
  18.         “metric4”: //カスタム指標4
  19.     },{
  20.         “id”:””,
  21.         “name”:””,
  22.         “price”:,
  23.         “quantity”:,
  24.         “metric1”:,
  25.         “metric2”:,
  26.         “metric3”:,
  27.         “metric4”:
  28.     }]
  29. }
  30. }
  31. });
  32. </script>

データレイヤーの設定では注意点が3点あります。

まず、1点目ですが公式ヘルプでは、IDや商品名のみが必須項目となっていますが、priceとquantityに必ず何らかの数値を入れるようにします。数値が入っていないと、データが正しく飛ばないことがあります。特に、値段のつかないオプションの選択であっても必ず結果には0を入れるようにしましょう。

2点目は、商品ごとの売上(GA上で「商品の収益」)の算出についてです。GAのレポート上(おそらく生ログで落とした場合も)では商品を複数購入した場合には、総額が商品の収益として算出されるため、レポートでは商品の収益はpriceとquantityが自動で掛けられて算出されます。price × quantityがその商品の売上と等しくなるようにデータレイヤーに書き出します。

3点目は、カスタム指標には総額を書き出すことです。商品のpriceには商品の単価を出力しているのですが、カスタム指標にはquantityの数が掛け合わせられません。ですので、カスタム指標に入れる値は、priceとは異なり、総額を入れるようにします。例えば、同じ宿泊プランを3つ選択した場合の消費税が3つ分で2,100円なら値には2100(700でない)と入れるようにします。

5-4-3.Google タグマネージャーでの設定

Google タグマネージャーではGoogle アナリティクス設定変数の「拡張eコマース機能を有効にする」と「データレイヤーを使用する」にチェックを入れます。今回、カスタム指標は “metric1”という名称でGAに値を渡すように設計していますので、その他の設定は不要です。別の名称でデータレイヤーに記述する場合には、Google アナリティクス設定変数のカスタム指標の項目で設定する必要し、かつ、データレイヤー変数に格納された値をGoogle タグマネージャー上で取得する必要があると思います。(筆者が検証したのは、今回の”metric1”の形式となります。)

6.参考リンクまとめ

  • ◎カスタム ディメンションおよび指標
  • ◎カスタム ディメンションとカスタム指標
  • ◎Google Analytics Custom Metrics for eCommerce Insights