IT web開発

【GA4 / Google Analytics】参照元除外リストとクロスドメイントラッキング

2022年5月22日


GAの重要な機能である「参照元除外リスト」と「クロスドメイントラッキング」。
参照元除外リストとクロスドメイントラッキングと聞いて、ちょっと身構えてしまう人も多いかと思います。
よく聞くけど、どういった時に使うのかいまいちわからない人もいると思います。

  • 1つのセッション内でCVを計測したいが、途中で別セッションが発生してしまい、計測ができない。
  • 同一ユーザーとしてしっかり計測を行いたい。

 

こういった分析者の要望を満たすための機能としてこの2つの機能「参照元除外リスト」と「クロスドメイントラッキング」があります。
ここではこの2つの機能について説明していこうと思います。

ルートドメインとサブドメインのCookieについて

GAでは_gaというcookieを送ることでPVやクリックなどのイベントを計測します。
なので、このcookieを理解することがGAの本質を理解する近道になります。

 

通常のルートドメインとサブドメインのCookie

ルートドメインとサブドメインではcookieは違います。
デフォルトではそれぞれcookieが違います。
でも、ルートドメインやサブドメインでも同じcookieにしたい場合、;domain=ドメインを指定することでできます。
;domain=ドメイン このクッキーが指し示すドメインを指定します。デフォルトでは現在のドメインが指定されます。

 

UAのルートドメインとサブドメインのCookie

当然、UAでも同じようにデフォルトでは_gaのcookieはサブドメインとルートドメインで違います。
_gaのcookieはこっちのサーバではなく、Googleのサーバから発行されるものではあるので、上の話でいくとGoogleのサーバ側でdomain=ドメイン指定をしないといけませんが、
GTMの中でcookieDomainをtrueにすることでルートドメインのように上位のドメインにcookieを紐づけるような形になります。
これによって、サブドメインとルートドメインで_gaが同じcookieの値になります。

 

ルートドメインとサブドメインは通常発行されるcookieは違います。
https://quartet-communications.com/info/listing/technique/33730
しかし、GTMでcookieDomain autoとすることで、できる限り一番上のドメインのcookieと同じにしてくれます。

 

GA4のルートドメインとサブドメインのCookie

そしてGA4では自動的にその_gaのcookieはデフォルトでサブドメインとルートドメインで同じ値になります。

 

項目 説明
通常の1st party cookie デフォルトではルートドメインとサブドメインで別々の値が発行される
domain=ルートドメインを指定するとルートドメインのcookieに紐づく
UAの
1st party cookie「_ga」
デフォルトではルートドメインとサブドメインで別々の値が発行される
GAの直張りタグやGTMでcookieDomainをautoなどにすることで紐づく
GA4の
1st party cookie「_ga」
デフォルトでルートドメインとサブドメインで紐づく

 

参照元除外リストとクロスドメイントラッキングの
さまざまなパターン

同じプロパティの計測タグが入っているサイト間でのクロスドメイントラッキング

A→B→C
この動きを同じプロパティで追いたいのであれば、
同じプロパティをA,B
Aで_gaを発行 → Bに遷移する(この時、クロスドメイントラッキングを設定することで、_gaがBに渡される。BからAに戻る時、参照元除外リストにBを入れるとBからAへ戻ってくる時、サイトのリファラーがBになるのでB参照元になり、
セッションが切れてしまう。

通常Aサイト、Bサイト、Cサイトではドメインがそれぞれ違うのでcookieが違います。
なので同じGAプロパティを入れていたとしても、違うユーザーそして違うセッションとして扱われてしまいます。
これを同一セッションで、同一ユーザーで行動を見たいとなると、参照元除外リストとクロスドメイントラッキングが必要になります。

 

ポイント1 同一セッション

同一セッションで計測したい場合は、そのサイトを参照元除外リストに追加する必要があります。
A→B→Cのように遷移するのであれば、A、Bを参照元除外リストに追加する必要があります。

サイト構成によって変わりますが、BやCはAからしか遷移できないのであれば、必ずAに流入してから遷移していきます。
でもBやCからもオーガニック検索や、Google広告流入するのであれば、
B→C→Aであれば、BとCも参照元除外リストに入れないといけないですし、C→B→Aもそうです。

なので、それぞれのサイトを参照元除外リストに追加する必要があります。
これによって、流入元に参照元が引き継がれます。

 

ポイント2 同一ユーザー

クロスドメインで計測が必要になります。
それぞれのサイトから発行される_gaのcookieが違うので、同一ユーザーで計測するにはその_gaの値を同じにしてGAサーバに送信できるようにする必要があります。

こうするには、_gaを遷移先のドメインの_gaに上書き(_gaがなければその値で作成)して、GAに送信します。
これにより、クロスドメイントラッキングで設定したドメインに対して_gaの値を渡して計測を行います。
以下のパターンを想定します。
Google(オーガニック) → A → B → C
Aで_gaを取得して、Bに遷移すると_gaの値を渡してBで普通なら発行されるGAのcookie「_ga」を_gaパラメータから取得して保存して、GAサーバへ送信します。
そしてBからCへ遷移した時、Cで発行される_gaを、Bから遷移した時に取得した_gaの値で保存して、GAサーバへ送信します。
なのでそうなると、
Aサイトの_ga:AAA
Bサイトの_ga:AAA
Cサイトの_ga:AAA
になります。

 

そして_gaのcookieの保存期間がすぎたり、削除されると再発行されたりします。
今度はAではなく、Bサイトから流入して、
Google(オーガニック) → B → A → C
と遷移したとする。
Bで_gaでBBBで発行され、A遷移した時BBBが渡され、Aの_gaにはBBBが保存されGAサーバへ送信する。
そしてC遷移した時BBBが渡され、Cの_gaにはBBBが保存されGAサーバへ送信する。
なので、
Aサイトの_ga:BBB
Bサイトの_ga:BBB
Cサイトの_ga:BBB
になります。

※ SafariではITP2.3で1st party cookieのクロスドメイントラッキング(_gaパラメータのようにURLに付与してcookieを更新する方法)は、即効cookie削除なので、クロスドメインしても_gaの値は引き継がれないので同一ユーザーにはなりません。

 

遷移先にGAプロパティが入っていない場合

GAプロパティを入れれないので、当然計測はできません。タグを入れれないためです。なので決済ページの計測はできません。

クロスドメイン設定をこのサイトにしても、_gaのcookieがその決済ASPサイトのドメインのcookieの_gaに上書きしたとしても、そして存在していなくて格納しても、タグがASPには貼られていないので、送信されないし計測もされない。

そして自ドメインに戻ると、そもそも決済では計測されないので_gaを渡す必要はないので、クロスドメインにしなくてもいい。

 

複数のGAプロパティが入っている場合

プロパティが例えばAサイトやBサイトに2,3個のGAプロパティの計測タグが入っていたとしても、
UAやGA4で計測するcookie「_ga」は1st party cookieで同じなので、そのcookieの情報がそれぞれの計測プロパティに飛ばされます。
 

例えば1つのプロパティでクロスドメイントラッキングと参照元除外リストを設定していて、それ以外のプロパティではそういった設定をしていない場合、
当然ながら他のプロパティではクロスドメイントラッキングと参照元除外リストは維持されません。
cookieを各プロパティに送って、そのプロパティに参照元やクロスドメインの設定をしているので、判定はあくまでcookieを送ってプロパティに来たときにそれらの処理をするので、例え他プロパティで参照元とクロスドメイン設定をしていたとしても他には影響を及ぼしません。

 

シークレットウィンドウの場合

シークレットウィンドウを使っていると、
cookieはブラウザが閉じられると即効削除になります。

 
Googleのヘルプには
「シークレットモードでは、閲覧履歴やフォームに入力した情報は Chrome に保存されません。Cookie とサイトのデータは閲覧中は記憶されますが、シークレットモードを終了すると削除されます。新しいシークレットウィンドウを開くときに、サードパーティの Cookie をブロックするよう選択できます。」
と説明しています。

なので、cookieはブラウザが消されるたびに再発行となります。
 

GA4でのクロスドメイン/参照元除外設定

クロスドメイントラッキング設定

まずプロパティ > データストリーム > Webの該当ストリーム > 一番下のタグ付けの詳細設定をクリックすると以下の画面にいきます。
その中で「ドメインの設定」をクリックします。

 

そしてクロスドメイントラッキングをしたい他のドメインを入力し、保存します。

 

参照元除外リスト

上の設定で、今度は「ドメインの設定」ではなく、「除外する参照のリスト」をクリックします。

 

そして除外したい参照ドメインを入力し、保存します。

 

これでクロスドメイン、参照元除外の設定ができました。

-IT, web開発
-,

© 2022 Yosshi Blog Powered by AFFINGER5