Looker StudioのGA4データで「初回訪問からX日以内」のユーザー行動を可視化する

Looker StudioのGA4データで「初回訪問からX日以内」のユーザー行動を可視化する

このブログ記事は、Looker Studioから、BigQueryのネイティブコネクタを使ってGA4がエクスポートしたテーブルに対する可視化を対象としています。それって何?と思った方は、「Looker StudioのBigQueryコネクタでGA4を可視化するときの注意点」をまずはご参照ください。また、「カスタムSQL」は利用していないので、この記事で行う、Looker Studioでの可視化を行うにあたり、SQLは書いていません。

 

Looker Studioでは、デフォルトの機能で、「特定の期間」のデータを可視化できます。ま、当然ですね。では、今日が仮に2月末日だとして、2月中のデータで、「ユーザーの最初のメディア」ごとに、「ユーザーあたりのセッション」にどのくらい違いがあるのかを調べたいとします。

モデル化して、「ユーザーの最初のメディア」がorganicであったユーザーが3人、cpcであったユーザーが3人、合計6人いたとして、可視化の対象となるデータの範囲は以下の網掛けの通りとなります。

 

すると、それぞれの「ユーザーあたりのセッション」は、以下の通りとなります。

  • ユーザーの最初のメデイアがorganic: 2.3 = 7/3 (3ユーザー、7セッション)
  • ユーザーの最初のメデイアがcpc: 2.0 = 6/3 (3ユーザー、6セッション)

 

この結果を見て、ちょっと変な感じがしませんか、organicの方が数値が高くなるバイアスがかかっている。そんな肌感覚を持てたら素晴らしいです。というのは、organicのユーザーは、初回訪問が1月中である場合が多く、初回訪問以降に訪問を繰り返す時間、言ってみれば、「サイトのファンになる時間」が十分あったことが考えられます。一方、ユーザーの最初のメディアをcpcとするユーザーの、DさんとFさんは、2月中に初回訪問をしています。それは比較的最近のことなので、まだ、十分な「サイトのファンになる時間」が持ててない可能性があります。その違いを無視してしまうと、Apple to Appleで比較したことになりませんね。

 

初回訪問からX日以内」のユーザー行動を可視化する

そこで、Looker Studioに計算フィールドを作成し、フィルタを適用して、以下の条件を適用したいです。

  • (A) 初回訪問から28日以内にユーザーが発生させたデータだけを対象とする

かつ

  • (B) 初回訪問から28日以上の「ファンになる時間を持てた」データを対象とする

上記の2条件を適用できれば、以下の薄オレンジの網掛けのユーザーだけが対象となります。(便宜上、28日を「4週間」としています。)この比較は非常にフェアです。ユーザーの最初のメディアがorganicのユーザーも、cpcのユーザーも「初回訪問から28日以内」、かつ「初回訪問から28日間の”ファンになる時間があった”場合」に発生した訪問だけがカウントされるからです。

初回訪問からX日以内にユーザーが発生させたデータだけに絞り込むフィルタ(フィルタA)

(A)の、初回訪問からX日以内にユーザーが発生させたデータだけに絞り込むフィルタは、まず、計算フィールドで指標を1つ作成し、それに対して、フィルタを適用して、実現します。

計算フィールドでフィルタ対象とする指標を作成する

まずは、計算フィールドで指標を作成します。以下に貼り付けた画面コピーを参照してください。

この計算フィールドは、ユーザーの初回訪問日時が記録されている時間(=フィールド名:First Touch Time)と、イベントが発生した時間(=フィールド名:Event Time)の差分を取り、それを日の粒度で取得しています。計算内で使われているEvent Timeと、First Time Touchの末尾に「(JST)」がついているのは、UTCをJSTに読み替えているためです。タイムスタンプの読み替えについては、こちらの記事(「BigQueryにエクスポートされたGA4データのLooker Studio上の時系列ディメンション」)を参照してください。

この計算式の結果の例としては、1月1日に初回訪問したユーザーが、1月2日に発生させたイベントは1(初回訪問から1日経過しているから)、2月10日に発生させたイベントは、40(初回訪問から40日経過しているから)という値が返ります。

フィルタ(その1)を作成する

上記の指標を対象に、以下のフィルタを作成し、適用します。これで、初回訪問から28日以内に発生したデータだけに絞り込むことができました。

 

このフィルタを適用すると、以下の青のデータが対象となります。初回訪問から28日間以内のデータだけに絞られますが、28日間の「ファンになる時間」が確保されていないユーザー(Cさん、Dさん、Fさん)もまだ、含まれています。

 

初回訪問から28日間の「ファンになる時間」があったデータだけに絞り込むフィルタ(フィルタB)

こちらのフィルタは、一発で作成できます。今が2月末日の前提ですから、初回訪問日が2月1日より前であれば、28日間のファンになる時間を確保できます。

フィルタ(その2)を作成する

フィルタは以下の通りとなります。

 

作成したフィルタ(その1)、(その2)を以下の通りに適用します。

 

すると、2つのフィルタはAND条件で適用されますので、模式図上は、以下の範囲を対象とするフィルタが適用できます。

 

2つのセグメントを厳密に、Apple to Appleで比較したいとき、ぜひ、このテクニックを使ってみてください。

 

 

宣伝

「Looker Studioなんて、機能がそんなに多いわけじゃないし、マスターするのは簡単だよ」とか、「Looker Studioでまともなグラフを作ろうとおもったら、データソースをBigQueryとしてカスタムSQLを掛けなきゃ無理だよ」思っていた方も、多少は、「そうでもないかもな?」と思っていただけたのではないかと思います。

Looker Studioの勉強でしたら、ぜひ、こちらをどうぞ。画像をクリックすると、Udemyにジャンプします。

 

そうは言っても、この機会に、やっぱりSQLを勉強しなくちゃだよな。と思った方はこちらをどうぞ。