Google Analytics(GA)はデフォルトでもIPアドレスのデータを取得していますが隠されているため通常はそれを見ることが出来ません.一方で,カスタマイズによってデフォルトとは別にIPアドレスを取得することは可能です.その取得したデータを見て気づいたことなどを紹介します.
Google Analytics 4(GA4)で,phpファイルを使ってIPアドレスとタイムスタンプ(アクセス時間)を計測する方法は「Google Analytics 4でIPアドレスとタイムスタンプを計測してレポートで見る方法」を参照.
目次
1.データ取得と設定
本サイトでは,Google AnalyticsをカスタマイズすることによってIPアドレスを取得する方法として,
GA(analytics.js版)でIPアドレス・クライアントID等を取得する(PHPファイル使用版)
GA(analytics.js版)でIPアドレス・クライアントID等を取得する(外部サーバー使用版)
GA(gtag.js版)でIPアドレス・クライアントID等を取得する(PHPファイル使用版)
GA(gtag.js版)でIPアドレス・クライアントID等を取得する(外部サーバー使用版)
などを紹介してきました.
注意(2021年5月追加):本サイトの記事の多くで書かれているグローバルサイトタグ「gtag.js」のGoogle Analytics(例えば,「GA(gtag.js版)」など)とは,トラッキングコードがgtag.jsで計測環境はユニバーサルアナリティクスであることに注意してください(Google Analytics 4に関係する内容では,「Google Analytics 4」や「GA4」と書きます).詳しくはこの記事の最後の「analytics.jsとgtag.jsのGoogle Analyticsに関する補足説明」の節を参照してください.
これらカスタマイズによって取得したデータを見るためGoogle Analyticsのカスタムレポート機能で図1のようなレポートを作成します.つまり,種類「フラットテーブル」を使って,ディメンションにカスタムディメンションで取得した「IPアドレス」とその他にはデフォルトのディメンション「ネットワークドメイン,市区町村,デバイスカテゴリ,月(年間)」を選び,指標として「セッション」を選んでいます.
IPアドレスを取得するカスタマイズでGoogle Analyticsのカスタムディメンション機能を使っています.詳しくは上記の「GA(analytics.js版)でIPアドレス・クライアントID等を取得する(PHPファイル使用版)」などを参照してください.
カスタムレポートがよくわからない方は,衣袋氏の
アクセス解析もDIY! 見たいGAのレポートを自分で作る上級機能「カスタムレポート」[第62回]
などが参考になると思います.
上記のような設定で作られるカスタムレポートは図2のような感じになります.
2.IPアドレスとデフォルトの「市区町村」データの比較
図2ように取得したデータ(カスタムレポート)をエクスポートして(出力して)ちょっと調べてみました.データはちょっと古い(2015年)ですが,その一部をまとめたものが図3です.図3を見ると同じIPアドレスかつ同じネットワークドメインなのに,年月の違いで市区町村が異なっていることがわかります.
ネットワークドメインが「au-net.ne.jp」となっているので,このIPアドレスは(2015年当時は)携帯キャリアのauが管理しているものだと思われます.デバイスも「mobile」です.このように,携帯キャリアの管理するIPアドレスだと時期によってGoogle Analyticsの市区町村データが変わることが多々ある感じです(ソフトバンクでも同様なことが起きているのを確認しています).
Google Analyticsが,市区町村を判別するのにIPアドレスのデータを利用していると思います.つまり取得したIPアドレスから,Googleがシステム上に持っているであろう「IPアドレスと地域の対応表」を使って,市区町村を判別してGoogle Analyticsにそのデータが記録されていると思われます.したがって,この判別に使われていて「IPアドレスと地域の対応表」が更新されると同じIPアドレスでも市区町村が異なるということが起きるのだと思います.Googleがもっていると思われるこの「IPアドレスと地域の対応表」がどのようなものなのか,どのような頻度で更新されるのかは当然わかりません.
IPアドレスに紐付いている情報は日々変わることはなんら不思議ではありません.使用される方法・ルールはよくわかりませんが携帯キャリアが使用しているIPアドレスに関しては,それに紐付く情報(とくに地域)の変化はけっこう頻繁にありえるようだというのがこれまでの経験から得た感想です.
3.IPアドレスの所有者の情報を調べる
IPアドレスの値から所有している企業・組織を知ることもできます.例えば上記の図3で示したIPアドレスを
WHOIS Gateway
にて調べてみます.図4のようにIPアドレスを入力し,種類「ネットワーク情報(IPアドレス)」を選択して検索すると図5の結果が得られました.このIPアドレスは2020年の現在もKDDI(au)が所持しているようです(割当年月が「2011/03/15」なのでもうすぐ保有して10年になりそうです).
公開情報を利用してIPアドレスから所有者をしることもできるのですが,多くの場合はプロバイダの企業が表示されると思います.固定IPアドレスを持つ企業・組織のほうが少ないので(また固定IPアドレスを持っていても必ずその組織名が表示されるとはかぎりません).
このような調査などに関しては記事「IPアドレスの情報を利用してビジネスチャンスを広げる – 無料で出来そうなこととは?」などを参考にしてください.
4.データ管理
IPアドレスを取得するカスタマイズを紹介していてなんですが,昨今のネットに関連する個人情報保護の動きで,取得したIPアドレスなどの情報を厳格に管理する必要が生じる場合があります.日本では現状ではIPアドレスの情報はそのような対象になっていませんが,EU諸国ではGDPR(EU一般データ保護規則)によってEU諸国内の全ての個人のプライバシー保護をする必要があり,それはEUからアクセスできるサイトにも適用されます(GDPRはIPアドレスだけでなくCookieも対象なのでクライアントIDも関係します).詳しい情報は,他のサイトにお任せしますがカスタマイズによって取得したデータ管理も気をつけるべきでしょう(例えば,Googleの「Google は、適用されるデータ保護法を遵守します」というページでは,ブラジルのLGPDとアメリカ合衆国カリフォルニア州のCCPAとEUのGDPRをとくにピックアップして紹介しています).
なお,Google AnalyticsでもデフォルトでIPアドレスを取得していると述べましたが,Googleはそのデータを匿名化するための情報を提示しています(下記参照).
アナリティクスでの IP 匿名化(IP マスキング)
アナリティクスでの IP アドレスの匿名化の方法に関する技術的な説明
GDRPに関しては,Google Analyticsのアカウント設定の「データ処理修正条項」にて触れられています(図4参照).
2020年5月に,日本でも改正個人情報保護法が成立しました.IPアドレスがGDPRのような扱いにはなっていませんが,その取り扱いで注意することはあります.それに関しては,例えば以下の記事などが参考になると思います.
改正個人情報保護法が成立!cookieの取り扱いやGDPR・CCPAとの違いは?
「DMP事業者等からcookieやIPアドレスなどを受け取り、他情報と紐づけ個人データ・個人情報となり得る場合には、ユーザーの同意を得ることが義務づけられます。」とのこと.
補足
IPアドレスに関しては以下の記事などを参考にしてくだい.
IPアドレスの情報を利用してビジネスチャンスを広げる – 無料で出来そうなこととは?-
アクセスしてきたユーザーの組織情報をGoogle Analyticsに蓄積するサービスを提供している会社
analytics.jsとgtag.jsのGoogle Analyticsに関する補足説明
2020年10月にGoogleは,いままでのGoogle Analytics(ユニバーサルアナリティクス)とは大きく異なるGoogle Analytics 4(以下,GA4)を正式にリリースしました(参照:Google Analytics Solutions「Google新しい Google アナリティクスのご紹介」).2021年5月現在,Google Analyticsで新しくプロパティを作る場合はGA4の環境がデフォルトで作られるようになっています.従来まで計測環境は「ユニバーサルアナリティクスプロパティの作成」で作ることが現状もできます.
ユニバーサルアナリティクスプロパティ作成で使用するトラッキングコードには「analytics.js」形式と「gtag.js」形式の2種類が存在して,そのコード内にはトラッキングIDとして「UA-123456789-1」のような「UA-」で始まるIDが組み込まれています.一方で,GA4のトラッキングコードもグローバルサイトタグ「gtag.js」と呼ばれる形式のWebサイト用のトラッキングコードが存在していますが,そこに使われているトラッキングIDは「G-」で始まります.つまり,グローバルサイトタグ「gtag.js」には,GA4計測環境用とユニバーサルアナリティクス計測環境用の2種類があります.
本記事等で紹介している「GA(gtag.js版)」などは,ユニバーサルアナリティクス計測環境用かつトラッキングコードはグローバルサイトタグ「gtag.js」も用いている場合を指しています.
記事「Google Analyticsのトラッキングコードがグローバルサイトタグ(gtag.js)のみの表示になった」を書いた当時は,「analytics.js」をユニバーサルアナリティクス,「gtag.js」はグローバルサイトタグと呼んで区別していました(Googleの表記もそのような感じでした).このときの「gtag.js」へのトラッキングコード変更では,計測環境(プロパティ・ビューなどの構造)そのものは「analytics.js」でのものと同じであり,必要に応じてコードを変更しても計測データが引き継げる環境でした.ですが,今回のGA4のバージョンアップではまったく異なる環境になりデータは引き継げません.
<この記事は「デジマのあれこれ」にて2018年1月頃公開された記事を一部改良して移植したものを改訂しました>