GA4 Hacks

現役データアナリスト2名がGA4に関するナレッジを発信するブログです。

GA4のカスタムディメンションがBigQueryで確認できないときの確認方法

GA4のカスタムディメンションは設定されていない?

GA4の画面上でイベントを設定して、UI上ではイベントが設定されていても、BigQueryで探しても出てこないということはありませんか。

[GA4] BigQuery Export スキーマ

https://support.google.com/analytics/answer/7029846?hl=ja

こちらにも記載されていないとの記載があります。

 

しかし、UI上では「カスタムディメンション」と呼ばれていても、実はBigQueryでは別の名前、「イベント パラメータ」「ユーザー プロパティ」という名前で格納されています。

 

イベント パラメータ=「params」「value」「string(文字列値) or int(整数値)」

ユーザー プロパティ=「properties」「value」「string(文字列値) or int(整数値)」

 

GA4カスタムディメンションのBigQuery上での格納され方

イベントパラメータ

フィールド名

データ型

説明

event_params

RECORD

このイベントに関連付けられたパラメータを格納する繰り返しレコード。

event_params.key

STRING

イベント パラメータのキー。

event_params.value

RECORD

イベント パラメータの値を格納するレコード。

event_params.value.string_value

STRING

イベント パラメータの文字列値。

event_params.value.int_value

INTEGER

イベント パラメータの整数値。

ユーザー プロパティ

フィールド名

データ型

説明

user_properties

RECORD

setUserProperty API によって設定される、ユーザー プロパティの繰り返しレコード。

user_properties.key

STRING

ユーザー プロパティの名前。

user_properties.value

RECORD

ユーザー プロパティの値を格納するレコード。

user_properties.value.string_value

STRING

ユーザー プロパティの文字列値。

user_properties.value.int_value

INTEGER

ユーザー プロパティの整数値。

 

BigQueryのサンプルデータ

GA4のBigQueryデモアカウントevents_20210131

こちらはGA4のBigQueryデモアカウントデータです。デモアカウントではカスタムディメンションは設定が見えないので上記では記載がないですが、event_namesの中のイベント名が設定したものになっているはずです。

 

GA4でのカスタムディメンションの数を取得する際のクエリ

データが入っているかどうかを確認したい場合にはある特定のユーザーのevent_namesを検索し、上の画像のように格納されているかを確認したのち、以下のクエリを参考にしてデータの取得してみてください。

-- Example: Query total value for a specific event name.
--
-- Queries the total event value for all 'purchase' events.

SELECT
  SUM(
    (
      SELECT COALESCE(value.int_value, value.float_value, value.double_value)
      FROM UNNEST(event_params)
      WHERE key = 'value'
    ))
    AS event_value
FROM
  -- Replace table name.
  `bigquery-public-data.ga4_obfuscated_sample_ecommerce.events_*`
WHERE
  event_name = 'purchase'
  -- Replace date range.
  AND _TABLE_SUFFIX BETWEEN '20201201' AND '20201202';

 

-- Example: Query total value for a specific event name.
--
-- Queries the total event value for all 'purchase' events.

SELECT
  SUM(
    (
      SELECT COALESCE(value.int_value, value.float_value, value.double_value)
      FROM UNNEST(event_params)
      WHERE key = 'value'
    ))
    AS event_value
FROM
  -- Replace table name.
  `bigquery-public-data.ga4_obfuscated_sample_ecommerce.events_*`
WHERE
  event_name = 'purchase'
  -- Replace date range.
  AND _TABLE_SUFFIX BETWEEN '20201201' AND '20201202';

GA4のevent_params集計