例えばWebプロモーションで、いわゆる「公式サイト」と「キャンペーンサイト(特設サイト)」を異なるドメインで構築・運用する、というケースがあります。この時アクセス数を集計するには、別々のGAタグを発行して設置するという方法もありますが、データ集計上、ひとつのGAで管理したい!というニーズもあるでしょう。はい、実際によくあります。そんなとき、ちょっとした設定で複数ドメインの統合集計(クロスドメイントラッキング)が実現出来ます。
知っているようで知らない、ググってもあんまり正しいリファレンスが無い! そんなTipsをご紹介します。
Google Analaytics 公式ヘルプ:クロスドメイン トラッキングを設定する
なるほどなるほどー。分かりやすくステップ毎に解説されていますので、この通りにやっていけば問題ない...はず!?
たとえば、example-1.com と example-2.com をトラッキングする場合は、example-1.com のすべてのページでスニペットを編集し、次のように example-1.com をドメイン名として指定します(太字部分)。 ga('create', 'UA-XXXXXXX-01', 'example-1.com'); example-2.com についても、すべてのページでスニペットを編集し、次のように example-2.com をドメイン名として指定します(太字部分)。 ga('create', 'UA-XXXXXXX-01', 'example-2.com'); example-1.com、example-2.com とトラッキング ID(UA-XXXXXX-01)は、それぞれ実際のドメイン名とトラッキング ID に置き換えてください。トラッキング ID については、すべてのドメインで共通のものを使用しないと、クロスドメイン トラッキングが機能しません。
が、しかし、どうもこの記述のままでは集計がされない...。。。
まさかGoogle大先生にマチガイがあるなんてあり得ないし!
と、頭を抱えることしばし。以下のカタチで実装すると、正解に辿り着きました。
<script> (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){ (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o), m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m) })(window,document,'script','//www.google-analytics.com/analytics.js','ga'); ga('create', 'UA-XXXXXXXX-X', 'auto', { 'allowLinker': true }); ga('require', 'linker'); ga('linker:autoLink', ['ドメインその1','ドメインその2'] ); ga('send', 'pageview'); </script>
まずは「create」の行に「allowLinker」という記述を追加してあげます。
続いて、linkerプラグインを読み込むためのrequireを記載。
そして最後に「linker:autoLink」の項目に、クロスドメインで集計したいドメイン名をカンマ区切りで記載します。
この記述をドメインその1のサイト、ドメインその2のサイトともにソースに記載してあげれば、晴れて同じGAビュー内での集計が可能になります。
後は前述の公式ヘルプに記載の通り、ビューの設定でフィルタをかけて、ディレクトリ/ページ名表記を"ドメイン名を含む"ように書き換えてあげれば完了です。
UTMパラメータなども引き継ぐことが出来ますので、広告キャンペーンの集計もバッチリ。
「まぁあとから設定すればいいやー」と言ってコーディングのフェーズで慌てないように、設計段階でしっかりとケアしておきましょう。