GA4でイベントごとのイベント数を集計し値を確認する方法についての解説。これには前提となるイベント・セッション・ユーザーのそれぞれのスコープ(以下、「スコープ」と「単位」は同じ意味で用いる)を理解しておくことも重要なため合わせて解説する。
当記事の要約
- イベント数の推移を追うだけであればカスタマイズしたイベント レポートを作成
- セッション スコープとユーザー スコープのキーイベント数の推移は計算指標で算出可能
- カスタムイベントのイベント スコープの集計はパラメータに1を付与
イベントとスコープの理解
GA4ではすべてのサイトへのアクセス情報を「イベント」という最小単位で処理する。イベントには「イベント スコープ」が適用され、これはGA4でデータを記録する際の最も基本的な単位となる。そのため、イベントの数をそのまま集計した場合、それは「イベント スコープ」での集計となり、「セッション スコープ」や「ユーザー スコープ」での集計にはならない。この点を理解した上で、特定のスコープ(セッションやユーザー)で集計を行う場合は、適切にスコープを指定してイベントを集計する必要がある。イベントをセッションやユーザー単位で集計するとは、仮にイベントが複数回カウントされていた場合に、イベントという最小単位を「セッション」という1つのまとまりの中で「1回」とみなすことを意味する。同様に、イベントをユーザー スコープで集計する場合は、「ユーザー」という単位の中で複数回発生した同じイベントを「1回」とみす。これにより、ユーザー単位でイベントを集計することが可能になる。
そのため、一般的には「完了ページ到達」をコンバージョンとするにあたっては「セッション」単位でカウントするのが普通である。イベント単位で集計してしまうと図にもあるようにリロードした際にその都度コンバージョンとしてカウントされてしまい、それは意味を成すカウントとはならないため。
イベント数をセッション・ユーザー スコープで集計するにはどうすればよいか?
イベント数をセッション スコープやユーザー スコープで集計するには、ディメンションにイベント名を設定し、指標に「セッション」と「アクティブ ユーザー」を並べることで、そのイベントが発生したセッション数とユーザー数(GA4でユーザー数を集計する際は、通常「アクティブユーザー数」を用いる)を集計することが可能になる。この組み合わせは、セッションやユーザースコープの計算結果がイベントスコープと組み合わせられているわけではないため、スコープの違いによる不整合は発生せず、組み合わせとしても問題はない。それを可視化したレポートが標準レポートのイベント レポートとなる。
【標準レポート】イベント レポート
標準レポートとしてデフォルトで用意されているイベント レポートを用いることが、特定イベントの発生件数の推移を確認する上で最も見やすい。折れ線グラフとして表示させたいイベント名にチェックし、赤枠で囲ってある[グラフに表示]をクリックすることで該当のイベント名だけの推移を確認することができ大変見やすい。ただしデフォルトのイベント レポートは「アクティブユーザーあたりのイベント数」や「合計収益」などが含まれているため、新規でカスタマイズしたレポートを作成することを推奨する。この際、元々のイベント レポートはデフォルトのレポートとして何もいじらない状態にしておきたいため、必ず新規でレポートを作成すること。
参考:[GA4] イベント レポート – アナリティクス ヘルプ
カスタマイズしたイベント レポート
・イベント名
指標
・イベント数
・セッション
・アクティブ ユーザー
レポートのフィルター(必要であれば)
・必要なイベント名を設定
ちなみにここには「レート」の指標を置くことはできない。理由はディメンションにイベント スコープを設定しているため、セッション スコープの集計結果を組み合わせることはできない。
参考:[GA4] 詳細レポートを作成する – アナリティクス ヘルプ
【Looker Studio】セッション スコープのキーイベント数を集計
Looker Studioではキーイベントに限り、個々のセッション スコープとユーザー スコープのキーイベント率をデフォルトで選択することができる。ここから計算することでイベント スコープのイベント数からセッション スコープとユーザー スコープのイベント数を集計することが可能になる。通常、キーイベントはセッション スコープで集計することが多くなるため、この計算指標はかなり使用頻度が高い。
同様にユーザー スコープのキーイベントレートからキーイベントが発生したユーザー数を以下の式で算出することができる。
集計結果は一致する。
参考:計算フィールドの追加、編集、トラブルシューティング – Looker Studioのヘルプ

キーイベントとは一般的に目標の完了を意味する「コンバージョン」のことを指し、GA4においても過去は「コンバージョン」の名称であったが2024年3月に「キーイベント」へ名称が変更された。GA4ではすべてイベント単位で処理され、そのイベントの中でも重要なイベントをキーイベントとすると...
【必須】カスタムイベントの集計はパラメータに「1」を設定
独自のイベントを新規で追加設定した場合に、そのままではそのイベント数を集計するにあたり集計がしずらくなるため、パラメータに数値の「1」を追加する。これはイベントを設定する際は必須ともいえるので必ず設定すること。この設定をすることで、個々のイベントと対になる指標「1」が紐づくためイベントごとの集計が容易になる。
パラメータのデータを「指標」化
パラメータを送信しただけでは、どのようにGA4がそのデータを扱えばよいのか検知できないため、そのパラメータをディメンションとして定義するのか、指標として定義するのかを設定する必要がある。ここでは指標としてパラメータ「1」を定義する。
「指標」化した値は探索ではカスタムから選択可能になる。
参考:[GA4] イベント パラメータ – アナリティクス ヘルプ
【SQL】各スコープのイベント数を集計
BigQueryにおいて各スコープのイベント数を集計するには、セッション スコープであればユニークなセッションID(user_pseudo_id + ga_session_id)をカウントし、ユーザー スコープであればユニークな user_pseudo_id をカウントすればよい。
DECLARE event_names ARRAY<STRING>;
SET event_names = ['〇〇', '〇〇', '〇〇'];
CREATE TEMP FUNCTION date_from() RETURNS STRING AS ('20241001');
CREATE TEMP FUNCTION date_to() RETURNS STRING AS ('20241231');
WITH
SCOPE_01 AS (
SELECT
ymd,
event_name,
COUNT(1) AS _event,
COUNT(DISTINCT CONCAT(user_pseudo_id, '-', CAST(ga_session_id AS STRING))) AS _ssuu,
COUNT(DISTINCT user_pseudo_id) AS _acuu
FROM (
SELECT
PARSE_DATE("%Y%m%d", event_date) AS ymd,
event_name,
(SELECT value.int_value FROM UNNEST(event_params) WHERE key = 'ga_session_id') AS ga_session_id,
user_pseudo_id
FROM
`<project>.<dataset>.events_*`
WHERE
_TABLE_SUFFIX BETWEEN date_from() AND date_to()
AND
event_name IN UNNEST(event_names)
)
GROUP BY
ymd,
event_name
)
SELECT
*
FROM
SCOPE_01