「GA4とBigQueryを連携した方がいいですか?」
と聞かれることがあります。
答えは、知りたいこと次第です。
BigQueryは、GA4より上位の分析ツールだから使うわけではありません。
GA4の画面で答えられる問いなら、その方が速い。
私がBigQueryを使うのは、GA4を見ているうちに、画面の集計だけでは答えにくい問いが出てきたときです。
最近の採用サイト分析では、その境界がかなりはっきりしました。
最初の問いは単純でした。
SNSから来た人は、問い合わせにつながっているのか。
GA4で十分だった問い
まず、GA4で確認できることがあります。
- SNSから何人来たか
- どのページがランディングページだったか
- どのページを見たか
- SNSセッション中に何件CVしたか
ここまでは、GA4のレポートや探索で確認できます。
今回、直接CVは0件でした。
これだけならBigQueryはいりません。
問題は、その数字を見たあとに出てきた問いです。
SNSから来た人は、その後本当に戻ってきていないのか?
後日、Organic Searchで再訪していないか?
初回はSNSだった人が、CVまで何回セッションしているか?
アプリ内ブラウザと通常ブラウザで、その後の行動は違うのか?
このあたりから、BigQueryを使う意味が出てきました。
私が実際にBigQueryで調べたこと
今回の分析では、GA4のイベントデータをユーザー単位で並べ、次のような問いを調べました。
| 問い | GA4画面 | BigQueryで深掘り |
|---|---|---|
| SNSから何人来た? | ○ | 不要 |
| SNSセッション中のCVは? | ○ | 不要 |
| SNS接触後に再訪した? | △ | ○ |
| 何日後に再訪した? | △ | ○ |
| SNS接触後に自然検索した? | 追いづらい | ○ |
| 初回SNSユーザーの後続セッションを並べたい | 追いづらい | ○ |
| ブラウザ群別に後続行動を比較したい | 条件次第 | ○ |
BigQueryが強いのは、集計済みの結果を見ることより、対象ユーザーを決めてその後を組み立て直すことです。
BigQueryでは「ユーザーの列」を自分で作れる
GA4のBigQuery Exportには、イベント単位のデータがあります。
user_pseudo_id、イベント日時、ページ、source / mediumなどを使い、
特定条件のユーザーを抽出する。
そのユーザーのイベントを時系列に並べる。
セッションを組み立てる。
初回接触と後続接触を比較する。
といったことができます。
もちろんSQLは必要です。
でも私にとって重要だったのはSQLを書くことではなく、
「この問いなら、どの単位でデータを並べれば答えられるか」
を考えることでした。
0件の「その後」を見たかった
SNS接触ユーザーは約500人。
直接CVは0件。
そこでBigQueryでその後を追うと、募集情報を見た人、研修情報を見た人、予約ページまで進んだ人、後日再訪した人がいました。
さらに、SNS接触後に自然検索で戻ったと確認できるユーザーも少数いました。
BigQueryを使ったことで「SNSは成果がある」と証明できたわけではありません。
変わったのは、問いの解像度です。
「CVしたか?」
から、
「CVしなかった人は、その後どう動いたか?」
へ進めました。
GA4の数字を再現するためだけに使うと、つらい
BigQueryを触ると、GA4画面と数字を一致させたくなります。
でもGA4のレポートとBigQuery Exportは、同じデータを完全に同じ処理で表示しているわけではありません。
BigQuery ExportではGA4が収集したイベント単位のデータを扱い、GA4画面と比較するときはDevice IDベースのエクスポートである点も考慮が必要です。
GA4の標準レポートには、Reporting identityやモデリングなど、レポート側の処理があります。
Googleも、両者に差が生じる場合があることを案内しています。
だから、異常な差は調べますが、GA4の画面を1件単位でコピーすることをBigQueryの目的にはしません。
その時間で、GA4画面では答えられなかった問いを分析した方が価値があります。
BigQueryが必要になりやすい4つの場面
実務上、私は次のようなときにBigQueryを検討します。
1. セッションをまたいで見たい
初回流入からCVまで、何回サイトへ来たか。
SNS接触後に何日で戻ったか。
2. 特定ユーザー群の「その後」を見たい
募集概要を見た人だけ。
Instagramから初回来訪した人だけ。
予約ページまで来た人だけ。
3. 独自条件を組み合わせたい
「SNS接触かつモバイル、30日以内に再訪、後日Organic」といった条件です。
4. 大量データを定型加工したい
複数指標を定期的に加工する、大規模サイトで独自の集計基盤を作る、といったケースです。
反対に、月次でセッション・流入元・CVを見るだけなら、BigQueryを入れる必要はないことも多いです。
「高度な分析」より「必要な分析」
BigQueryを使うと、できることは増えます。
だからこそ、目的がないと分析が終わりません。
私は、
判断したいことを決める
→ GA4で答えられるか確認する
→ 足りない部分だけBigQueryで深掘る
という順番にしています。
今回も、BigQueryを使いたかったわけではありません。
「SNSから直接CVしない人の、その後を見たい」という問いが先にありました。
ツールは、その問いに必要だったから選んだだけです。
BigQueryが必要かどうかは、サイト規模ではなく、問いの粒度で決める。
これが、実際に使ってみて一番しっくりきている判断基準です。
関連する知見
高度なツールありきではなく、判断したい問いから分析方法を選びます。
