• Google AnalyticsのIP匿名化はga.jsとanalytics.jsで設定方法を分ける

Google AnalyticsのIP匿名化はga.jsとanalytics.jsで設定方法を分ける

公開日: 執筆:佐藤

Google AnalyticsでIPアドレスを匿名化するには、サイトが読み込む計測ライブラリを先に確認します。ga.jsでは_gat._anonymizeIp、analytics.jsではanonymizeIpを設定します。名前と記述方法を混ぜてはいけません。

どちらも、最初のページビューやイベントを送る前に設定します。コードを追加しただけで完了とせず、ブラウザーから送られるリクエストにaip=1が付いているかを確認してください。

最初にga.jsとanalytics.jsを見分ける

ページのHTMLとブラウザーの通信を開き、読み込んでいるJavaScriptファイルを確認します。

読み込むファイル 設定名 送信前の記述
ga.js _anonymizeIp _gaq.push(['_gat._anonymizeIp']);
analytics.js anonymizeIp ga('set', 'anonymizeIp', true);

ga.jsのコードにga('set', ...)を加えても、同じ命令としては扱われません。反対に、analytics.jsのコードへ_gaq.push()を加えても、作成したanalytics.jsのトラッカー設定にはなりません。

サイト内で二つのライブラリを並行して使っている場合は、それぞれの送信を別に確認します。一方へ設定したことを、もう一方にも適用されたと考えないでください。

ga.jsでは最初のtrackPageviewより前に設定する

ga.jsの公式API説明は、非同期コードで_gat._anonymizeIpをキューへ追加する方法を示しています。

<script>
var _gaq = _gaq || [];
_gaq.push(['_setAccount', 'UA-XXXXX-Y']);
_gaq.push(['_gat._anonymizeIp']);
_gaq.push(['_trackPageview']);
</script>

順序は、アカウントの指定、匿名化、ページビュー送信です。_trackPageviewのあとへ匿名化を追加すると、最初のページビューは設定前に送られる可能性があります。

イベントやeコマースの送信コードが別のテンプレートにある場合も、同じトラッカーへ匿名化を設定したあとに送られるかを確認します。共通ヘッダーだけを見て終えず、実際に使うページで送信順を調べます。

analytics.jsではcreateのあと、sendの前に設定する

analytics.jsの導入説明は、createでトラッカーを作り、sendでページビューを送る順序を示しています。その間にanonymizeIpを設定します。

<script>
ga('create', 'UA-XXXXX-Y', 'auto');
ga('set', 'anonymizeIp', true);
ga('send', 'pageview');
</script>

analytics.jsのField Referenceでは、anonymizeIpは真偽値で、プロトコルパラメーターはaip、すべてのヒット種別で使えるフィールドです。

複数のトラッカーを作る実装では、どのトラッカーへsetするかを確認します。既定のトラッカーへ設定しただけで、別名のトラッカーにも同じ値が入るとは限りません。プロパティID、トラッカー名、送信命令を一組として調べます。

IP匿名化は保存前の一部をゼロにする

Google AnalyticsのIP匿名化に関する公式説明によると、この機能は収集ネットワークでIPアドレスを受け取ったあと、保存と処理の前にアドレスの一部をゼロにします。IPv4では最後のオクテット、IPv6では最後の80ビットが対象です。

たとえば、IPv4アドレスの末尾がゼロになるため、地域情報の精度は少し下がります。匿名化を有効にした前後で市区町村などの値が変わり得ることを、レポート利用者へ伝えます。

この説明は、ブラウザーから収集ネットワークまでIPアドレスが使われないという意味ではありません。匿名化が行われる場所は、Google Analyticsの収集ネットワーク内です。

また、この設定が行うのは、記録前にIPアドレスの一部をゼロにすることです。個別の法令、契約、プライバシーポリシー、利用者への説明が、この一設定だけで満たされるとは判断できません。サイトが収集する項目、目的、保存先、権限、説明内容は別に確認します。

aip=1と最初の送信順を確認する

公開前の確認では、ブラウザーの開発者ツールを使います。

  1. ページを開き、ga.jsまたはanalytics.jsのどちらを読み込むか確認する
  2. HTMLまたは実行コードで、匿名化設定が最初の送信より前にあるか確認する
  3. Google Analyticsへ送るリクエストを開く
  4. リクエストにaip=1が付いているか確認する
  5. ページビューだけでなく、イベントなど実際に使う送信も確認する
  6. ライブラリ、プロパティID、確認ページ、確認日、担当者を記録する

レポートで自分の地域が粗く見えることだけを、設定確認の代わりにしてはいけません。通信のパラメーターを見れば、どのページのどの送信へ設定されたかを直接確かめられます。

制作会社や解析担当者へ設定を委託する場合も、サイト側で使用ライブラリとプロパティIDを把握します。コードを変更する担当、プライバシーポリシーを確認する担当、公開を承認する担当を分け、確認記録を共有してください。

最初の一手は、対象ページを一枚開き、読み込むファイル名を確認することです。ga.jsなら_gat._anonymizeIp、analytics.jsならanonymizeIpが最初の送信前にあるかを見て、aip=1まで確かめます。

戻る