Google Analytics Laboratory
仕様理解

GAでPV数から特定のイベント発生率を計測する方法

GAでPV数から特定のイベント発生率を計測する方法

今回はページごとのイベント発生率を計測する方法をご紹介します。

合計イベント数 / ページビュー数

という計算指標を作成すれば、特定のページで発生したイベントの発生率を計測できます。しかし対象ページで複数のイベントが発生していて、その中から特定のイベントだけのイベント発生率を計測したい場合は、上記の計算指標では思うように計測できません。

本稿ではそのような計測をする方法を2つまとめてみました。

  • カスタム指標と計算指標で計測する方法
  • スプレッドシートのアドオン(API)で計測する方法

 

この2つをご紹介致します。
クリックイベントのCTRをページごとに求めたい場合などでお役に立てるかもしれません。

※本稿でご紹介している内容を参考にご自身の環境に変更を加える際は自己責任でお願い致します。
記事の内容は2019年8月時点で確認している最新の情報をまとめておりますが、万が一記述内容に誤りがある場合はTwitterのDMなどでご連絡頂ければ幸いです。

特定のイベントに絞り込むとPVが0になる

カスタムレポートで検証

カスタムレポートでページごとの各イベントの合計数を計測する場合、下記のように問題なくレポートを作成できます。カスタムレポートによる検証その1

また、ページごとの合計イベント数とページビュー数も計測自体はできます。

ページビューを計測した時に記録されるページ情報とイベントを計測する時に記録されるページ情報が同じ値なので、「ページ」ディメンションだけで絞り込んだ場合は両方の指標が表示できます。
カスタムレポートによる検証その2

ですが、イベントカテゴリやアクション、ラベルなどのディメンションをセットしてページごとの各イベントごとの合計イベント数とページビュー数を計測しようとするとページビュー数は0になってしまいます。カスタムレポートによる検証その3

カスタムレポートの編集画面で特定のイベントカテゴリ等で絞り込むフィルタ設定をした場合でも同様にページビュー数は0になります。

カスタムレポートによる検証その4

※セグメントで絞り込んでも同様にページビュー数は0になります。

フィルタでイベントヒットに絞り込んでいるのが原因

GAのディメンションと指標はそれぞれ「スコープ」が定義されています。ページビューとイベントはどちらも「ヒット」スコープの指標です。

ヒットはユーザーが行動を起こした際にGAのサーバーに情報を送信するスコープです。

  • ページを表示したタイミングで発火するPV計測タグ
  • ページをスクロールして特定要素が表示されたタイミングで発火するイベント計測タグ
  • ページ内のリンクをクリックしたタイミングで発火するイベント計測タグ

これらは、同じページで別々のタイミングで発火する「ヒット」の計測ということです。

カスタムレポートのフィルタ設定等で特定のイベント(ヒット)に絞り込むと、指定したヒットを計測した際に含まれる情報のみ結果として表示されることになります。

ページごとのヒット送信のタイミング

イベントヒットを計測した際、ページやページタイトル、イベントラベルなどのディメンションは同じタイミングで計測できています。そのため、カスタムレポートで一緒に表示させたりフィルタで編集をしても表示することができます。

ではページビューはどうかというと、イベントヒットとは関係なくページビューヒットが計測されたタイミングでページ情報を格納しています。

ユーザーがイベントを発生させたタイミングで都度ページビューも計測しているわけではないので、前述のようにカスタムレポートでイベントヒットに絞り込んだ場合は0と表示されます。イベントヒット計測時に一緒に格納されたイベントラベルなどの情報であれば正常に表示できます。

このような理由から、「合計イベント数 / ページビュー数」という計算指標を作成してカスタムレポートを作成しても、特定イベントに絞り込むことでページビュー数が0になってしまう為、別の計測方法で算出する必要があります。

カスタム指標と計算指標で計測する方法

手順1:カスタム指標

「合計イベント数」にフィルタをかけて特定イベントの合計イベント数だけを求めるのではなく、最初から特定イベントだけのイベント数を計測するカスタム指標を作成します。

まず、GA管理画面の プロパティ > カスタム定義 > カスタム指標 の設定欄で下記のように整数で計測するヒットスコープのカスタム指標を作成します。

GA管理画面でカスタム指標を作成

次にGTMでイベントを計測しているタグにカスタム指標の設定をします。GTMでイベント計測タグに設定を追加

インデックス番号はGA管理画面でカスタム指標を作成した際に割り振られた番号を半角数字で入力します。そして指標の値の欄は半角数字で1を入力します。

これにより、特定のイベントAが計測される度に「イベントAのカスタム指標」が1ずつ計測されるようになります。

手順2:計算指標

カスタム指標を作成したら、次に計算指標を用意します。

GA管理画面の ビュー > 計算指標 の設定欄で下記のようにカスタム指標をページビューで割った数値を割合(%)で表示する計算指標を作成します。

イベント発生率の計算指標を作成

これでページビューを分母として、各ページで発生した特定イベントの発生率を各レポートで利用することができるようになります。

既に計測中のイベントにカスタム指標の設定を追加する際の注意点

既に計測しているイベントにご紹介したカスタム指標の設定を加える場合、実装してからしばらくの間は特定イベントの「合計イベント数」と「カスタム指標」の数値に乖離が起きることがあり得ます。

カスタム指標の設定を実装する以前にウェブサイトへ訪問したユーザーが居た場合、ウェブサイト及びユーザーの環境によっては、キャッシュによってカスタム指標実装より以前の設定が読み込まれることがあるようです。

この場合、合計イベント数は問題なく計測できますが計算指標は計測されません。このような数値が乖離する事象は時間を置けば解消されていきます。(もし長期に渡って乖離がある場合は別の要因が無いかご確認ください)

スプレッドシートのアドオン(API)で計測する方法

スプレッドシートでGoogle公式アドオンを利用する場合は非常にシンプルです。

下記のようにページビュー数と合計イベント数を別々のシートに出力し、集計するシートで計算式で「特定イベントの合計イベント数 / ページビュー数」の値を求めればOKです。

スプレッドシートでPV数とイベント数を別々に出力

また、スプレッドシートのアドオンでこのように取りまとめる他にもGA画面からページビュー数とイベント数を別々にCSVダウンロードし計算する方法もありますが、こちらは手間がかかりますね。

それぞれのメリットとデメリット

計算指標

計算指標で計測する場合は、GAのカスタムレポートで利用できる他、データポータルでの可視化もしやすくなります。スプレッドシートで別途集計する作業・運用を省いてGAをデータソースにするだけで直接イベント発生率を指標として用いることができます。

注意点としては、新たにイベントを作成する際は計算指標やカスタム指標に影響が無いように気をつけるべきかと思います。

スプレッドシートのアドオン

スプレッドシートのアドオンで計測する場合は、集計の工程がシンプルなのでどんな計算で表示されている指標なのかハッキリわかる点が良いと思います。

一方で、集計するスプレッドシートの管理や1つのスプレッドシートにつき200万セルの利用上限や関数へ留意する必要があるので、継続して運用していく必要があります。

データポータルのデータ統合では計算できない

データポータルではテーブルAとテーブルBを統合し1つのグラフにまとめる「データの統合」機能があります。

これを利用し、

  • 特定イベントに絞り込むフィルタをデータソースA
  • フィルタなどの設定をしていないデフォルトのデータソースB

このようなデータソースA,Bを「日付」「ページ」ディメンションを統合キーにして

  • データソースA:合計イベント数
  • データソースB:ページビュー数

上記を利用可能な指標としてセットし、特定ページの「合計イベント数 / ページビュー数」を求めようとすると合計イベント数がnullになってしまいました。

細かな設定を変えても、合計イベント数かページビュー数どちらかが正常に出力できなくなってしまうのでデータ統合だけではイベント発生率を求めることはできませんでした。

まとめ

GAでページごとに特定イベントがどれくらい発生しているのか知りたい、といった質問・相談に対する解決策として講じたのが今回ご紹介した2つの方法です。

コンバージョンはセッションごとに評価すべきですが、イベントをページごとに評価したいケースもあるかと思います。興味がある方はまずは試験的にカスタム指標と計算指標を試してみてはいかがでしょうか。