【2020年版】Google タグマネージャーでクロスドメイン トラッキング設定に挑戦!

📅 July 27, 2020

⏱️ 13 min read

Yuki Ota

早稲田大学先進理工学部卒業後、スタートアップにてエンジニアとしてプロダクト開発および新規事業開発を担当。Webアプリケーションの開発やAI・機械学習モデルの実装、ビジネスKPIやアプリケーション監視などを通したプロダクト管理などを経験。Google Analytics個人認定資格(GAIQ)保有。

Yuki Ota

早稲田大学先進理工学部卒業後、スタートアップにてエンジニアとしてプロダクト開発および新規事業開発を担当。Webアプリケーションの開発やAI・機械学習モデルの実装、ビジネスKPIやアプリケーション監視などを通したプロダクト管理などを経験。Google Analytics個人認定資格(GAIQ)保有。

Google アナリティクス(Google Analytics)は、基本的に1つのドメインに紐付いてアクセスデータを収集します。例えば、zipunk.comに設置したGoogle アナリティクスは、特に設定をしない限りzipunk.com内のアクセスデータしか収集できません。

しかしながらここで、zipunk.comにECなどに用いられるカートシステムが導入されるというシーンを考えてみましょう。導入予定のカートシステムがcart.example.jpというドメインを持つ外部サービスだった場合、zipunk.comcart.example.jpという2つのドメインを統合して分析するにはどうすれば良いでしょうか?

そんなときに必要となる設定が、クロスドメイン トラッキングです。

クロスドメイン トラッキングは、Webサイトにおいて上記の例のようにドメインの異なる外部サービスを利用している場合に有効な設定です。その他のよく目にする例としては、「ECサイトの決済ページ」や「サロンの予約ページ」などが挙げられるのではないでしょうか。

このクロスドメイン トラッキングの設定は、Google アナリティクスの設定の中でも比較的ミスが発生しやすい設定なのではないかと考えています。 設定変更箇所も多く、打ち間違いなども発生しやすいので注意が必要です。

本記事では、クロスドメイン トラッキングの概要について説明したあとに、Google タグマネージャ(Google Tag Manager)を利用した設定方法を解説します。

この記事でわかること

  • クロスドメイン トラッキングの概要
  • Google タグマネージャを用いたクロスドメイン トラッキングの設定方法

1. クロスドメイン トラッキングとは

「クロスドメイン トラッキング」の意味するところは、ドメインが異なる複数のWebサイトをまたぐセッションを、1つのセッションとして計測するということです。言い換えれば、1つのGoogle アナリティクス トラッキングID(プロパティID, 例: UA-123456789-0)で、複数のWebサイトを統合して計測すること、と言うこともできます。

クロスドメイン トラッキング設定が効果的なシーンの例としては、以下のようなものがあります。

  • ホテルやサロンのHPを管理していて、「予約機能」は外部サービスを利用している
  • ECサイトを運営していて、「決済機能」は外部のサービスを利用している
  • テーマの異なる複数のメディアを運営していて、各メディアを行き来できるような構造になっている

このような場合に、クロスドメイントラッキング設定を行うことで、異なるドメインを行ったり来たりしたセッションであっても、それらをまるで1つのWebサイトであるかのように統合してユーザー行動を把握することができます。

次のセクションで、実際に設定する方法を紹介します。

2. 実際に設定しよう

さて、クロスドメイン トラッキングの概要を理解したら実際に設定を行いましょう。

ここで、本記事では Google タグマネージャ(GTM)を使ったクロスドメイン トラッキングの設定方法 を紹介していることに注意してください。

Google アナリティクスのトラッキングコードにはいくつか種類があり、使用している種類によって設定方法が異なります。それぞれ以下のドキュメントを参考にしてください。

トラッキングコード種別 ドキュメント
analytics.js (GTM) クロスドメイン トラッキングを設定する(analytics.js)
gtag.js gtag.js を使用するクロスドメイン トラッキング

また、具体的な設定方法に進む前に留意しておくべき点がいくつかあるので、次で確認しましょう。

2.1 設定の際の留意点

クロスドメイン トラッキングの設定を行う前に留意しておくべき点は、以下の2つです。

  • 統合して計測したいすべてのサイトに同一の「トラッキング ID」をもつアナリティクスタグを埋め込むこと
  • プロパティ単位もしくはビュー単位のどちらで管理するか事前に決めておくこと

まず1つ目の「トラッキング ID」についてですが、必ず計測対象のすべてのサイトに同じ「トラッキング ID(プロパティID)」をもつトラッキングコード忘れずに挿入してください。外部サービスであっても、メインサイトと同じ「トラッキングID」を持つトラッキングコードを挿入する必要があります。

クロスドメインの設定をしたつもりになっていても、「トラッキングコードIDが埋め込まれていない」、もしくは「同じトラッキングコードIDが埋め込まれていない」ことによって、実際には正しくクロスドメイントラッキングできていないという例をちらほら見かけるので、強調しておきます。

2つ目の留意点は、どのようにクロスドメイントラッキングによって計測されるアクセスを管理したいかを前もって決めておくことです。管理する方法は大きく以下の2つがあると考えています。

  • ① 1つのトラッキングIDを用いて、複数のビューを作成する
  • ② 複数のトラッキングIDを用いて、クロスドメイントラッキング専用のプロパティを作成する

Google がヘルプ記事においておすすめしているのは①の方法です。予約サイトやECカート機能など、メインサイトのサポート的な機能を担う外部サイトについてトラッキングする場合には、この方法で管理するのが良いでしょう。

一方で、複数のキュレーションメディア同士でのクロスドメイントラッキングを設定する場合には、各サイトが独立していると考えることができるので、②の方法のようにクロスドメイントラッキング用のプロパティを新たに作成することをおすすめします。

余談ですが、サブドメインのサイトについてクロスドメイントラッキングをしたい、かつanalytics.jsを使っている場合は、同じトラッキングコードを埋め込めば、自動的に計測されます。例えば、メインサイトがzipunk.comであり、ブログであるblog.zipunk.comにおけるアクセスと統合して計測したい場合は、どちらにも同一のanalytics.jsのトラッキングコードを埋め込むことで、自動的に計測されます。

2.2 設定の全体像

それでは、クロスドメイントラッキング設定に進みましょう。設定のステップは以下の通りです。

  1. Google タグマネージャで変数の設定を変更
  2. Google アナリティクスで参照元除外リストの追加
  3. Google アナリティクスで新たなフィルタを作成

2.3 STEP 1: Google タグマネージャで変数の設定を変更

まず最初に、Google タグマネージャの管理画面から、Google アナリティクス変数の設定を変更しましょう。

管理ダッシュボードトップから、「変数」メニューをクリックします。 

018-gtm-top

利用しているGoogleアナリティクス情報を持つ「ユーザー定義変数」を選択し、編集を開始します。

018-gtm-select-variable

018-gtm-start-editing

以下2点の設定を行います。

  • フィールド名allowLinker、値がtrueのフィールドを追加する
  • 自動リンクドメインにリンクするドメインを入力する

ここでは例として、クロスドメイン トラッキングの対象とするドメインとしてblog.zipunk.comcart.example.jpを考えます。

018-gtm-put-parameters

以上でGoogle タグマネージャ上で行う設定は終わりです。

ここで少し踏み込んで、allowLinkerという設定の意味を考えてみましょう。この設定はどのような作用を与えているのでしょうか?答えは、「ユーザーを識別する情報(cookie)」を遷移先の外部ドメインに共有するように設定している、といえます。Cookieについては、以下の記事を参考にしてみてください。

【今さら聞けない】Cookie(クッキー)の仕組みとGoogleアナリティクス・Google広告への影響

さらに踏み込んだ話ですが、上記で行ったようなGoogle タグマネージャー上のクロスドメイントラッキング設定は、以下の2通りの方法があります。

  • 「変数」から変更する方法 (本記事で説明した方法)
  • 「タグ」から変更する方法

「変数」にクロスドメイントラッキング設定を行うと、その変数を利用しているすべてのタグにクロスドメイントラッキングが反映されます。「タグ」から設定すると、そのタグにのみ設定が反映されます。状況によって使い分けると良いでしょう。

2.4 STEP 2: Google アナリティクスで参照元除外リストの追加

次に、Google アナリティクスの管理画面から「参照元除外設定」を行いましょう。

この設定を行う理由は、トラッキングしている外部ドメインからのアクセスが、参照元として現れてしまうのを防ぐためです。

まず「管理→トラッキング情報→参照元除外リスト」と進みます。

作成画面を開いたら、除外したい外部ドメインを記入しましょう。カンマ区切りで入力することはできないので、複数の外部ドメインがある場合には、1つずつ追加していきます。

ここでは、外部ドメインの例としてcart.example.jpを記入しています。

018-ga-external-domains

2.5 STEP 3: Google アナリティクスで新たなフィルタを作成

最後に、Google アナリティクスの管理画面から「ホスト名とリクエストURLを表示するフィルタ」を新たに作成しましょう。

このフィルタを作成することで、各ドメインでのページを区別して管理することができるようになります。

例えば、blog.zipunk.comcart.example.jpのどちらにも同じ/contactというページがあるとしましょう。つまり、以下のページが存在する状態です。

  • blog.zipunk.com/contact
  • cart.example.jp/contact

このとき、新たにフィルタを設定しておかないと、どちらのアクセスも/contactとして合算され、区別することができなくなってしまいます。必ず設定しておきましょう。

設定は方法は以下の通りです。フィルタの作成画面を開き、次のように記入しましょう。

  • フィルタ名: 任意 (例: 「ホスト名 + リクエストURI」)
  • フィルタの種類: カスタム詳細
  • フィールド A: ホスト名: (.*)
  • フィールド B: リクエストURI: (.*)
  • 出力先: リクエストURI: $A1$B1

018-ga-put-regexps

以上で設定は終了です!お疲れさまでした。

3. 正しく設定できているか確認しよう

まず、クロスドメイン トラッキングを設定することで、対象の外部ドメインに遷移した際に、以下の方に_gaパラメータが付くことを確認しましょう。

cart.example.jp/items?_ga=2.12341234.1234567891.1234512345-1234512345.1234512345

この_gaというクエリパラメータが付くことを確認することが第一歩です。

上記のクエリパラメータが付与されていることを確認した上で、正しく計測されているかを チェックしましょう。方法は以下の2通りの方法があります。

  • ①: 実際に外部ドメイン間を遷移してみて、正しく計測されているかレポートを確認する
  • ②: Google Tag Assistant Recordingsを使用する

詳しい方法は割愛しますが、計測できているか早めに確認しておきましょう。

ときたま、「_gaクエリパラメータが付与されている=正しくトラッキングされている」とするブログ記事を見かけたことがありますが、これだけでは不十分です。必ず、遷移先(ここではcart.example.jp)に、メインサイトと同様の「トラッキング ID」をもつトラッキングコードが埋め込まれていることを確認してくださいね。

まとめ

担当するWebサイトが、異なるドメインのWebサイトを行き来する仕様になっている場合には「クロスドメイン トラッキング設定」を行うことをおすすめします。

細かい設定作業も多く打ち間違いなどミスが起きやすいので、各ステップ丁寧に確認しながら設定を進めましょう!