かずきち。の日記

サーバサイドエンジニアのつぶやき

GTMのデータレイヤーを使って、自宅のIPアドレスを弾いたアクセス解析を読み込み遅延で設定する方法

自宅からのアクセスを除外して、ユーザーアクションを抽出する

ウェブ解析を行っていると、最初はアクセス数がわかっただけで満足をしてしまう。
なんせGoogleが優秀なものだから、分析できた「つもり」になる。


引用:
https://www.ibnet.ne.jp/column/web/201009/index.html

しかし肝心なことはサイトを閲覧してもらって、何人が商品の購入・広告のクリックにいたったかを把握しないと意味がない。
そこで今回はウェブサイト中で何人に広告が表示され、かつ自宅からのアクセスを除外してカウントする仕組みを実装する。


引用:
https://news.yahoo.co.jp/expert/articles/5087bb9f768b602a63f411b5522680c72d8b398f


今回はウェブページの閲覧だけでなく広告の表示等までも詳細に抽出していく。

GTM(Googleタグマネージャー)を使って、自宅を除外したIPアドレスからに対して、アクセス解析開始と広告の表示を行う

tagmanager.google.com
引用:
https://tagmanager.google.com/

まずはGoogleタグマネージャーにアクセスする。
これはタグの配信を利用者の状況に合わせて配信する仕組みを提供するもので、自宅からのアクセスは除外などの設定をすることができる。

まずはサイドバーから配信したいタグを登録する。
アクセス解析のタグや広告配信のタグなど人によってそれぞれなので、サイトに埋め込みたいタグを登録する。

次に自宅を除外したアクセス元からのタグ配信設定を行う

次に閲覧開始時に遅延読み込みでアクセス解析を開始したいのでトリガーを設定する。
ページビューが発生した際にアクセスとしてカウントする仕組みである。

しかし自宅からのアクセスはアクセス解析にカウントしたくないので、自宅からのIPを除外する必要がある。
かつ自宅からのアクセスの場合、広告を表示しないように設定をする。

https://www.ugtop.com/spill.shtml

ここにアクセスすると、あなたのIPアドレスというものが表示され

123.123.1.1

のように自宅のIPアドレスが表示される。
これは自宅からのアクセスを示すもので、世界のインターネットに繋がるすべての端末にこのIPアドレスが割り振られていて
インターネットのサイトなどはこの数字をもとにどこからのアクセスかを認識している。

この数値をもとに国別アクセス、地域別アクセスが詳細にカウントされる。


ここで問題になるのが自宅からのアクセスをアクセス解析から除外することである。

もう少しわかりやすく説明しよう。


引用:
https://twitter.com/situmonobasan

まちなかでアンケートされるときに
「最近3ヶ月以内にこの中のお菓子食べましたか?」
「最近3ヶ月以内に、コンビニでお茶をかったことはありますか?」
みたいなフィルタリングをされることがあると思う。
しかし、あのフィルタリングはかなり人力でアンケート会社が個人の購買履歴にアクセスできれば、いちいち事前質問をする必要などない。
インターネットの場合はフィルタリングが得意で、大阪に住んでいて、3ヶ月以内にネットショッピングでお茶を買っていない人のようなフィルタリングがあっと言う間に行え、簡単に彼らにアクセスができるのである。

今回は自宅や会社からのインターネットアクセスを除外する

まずはタグマネージャーにアクセスする。

tagmanager.google.com
引用:
https://tagmanager.google.com/

タグマネージャーというのは特定の条件を満たしたときにだけ、タグを発火させる仕組みのこと。
さっきの例で言えば…

「大阪に住んでいて」「3ヶ月以内に」「インターネットショッピングでお茶を買っていない」という条件下でのみタグを発火させる。
タグを発火させるが分かりづらい人は「タグを発火させる」=「条件に合致した人にだけ特定のアラートを出すことである。」

ここでは111.111.11.11というIPアドレスが除外したいアクセス元だった場合に
IPアドレスのデータレイヤーに111.111.11.11の場合にアクセス解析タグを発火させない設定を行う。
そうすると1111.11.11からのアクセスではGoogleアナリティックスタグは発動せずに、アクセス解析は行われない。
また同様に自宅から・社内からのアクセスの場合は広告非表示にすることすることができる。
ここまででIPアドレスのアクセスを除外する方法の解説だった。

次はアクセス解析を開始するタイミングを遅延させる設定が必要

アクセス解析するIPの除外方法は解説できたが、今度はタグの発火タイミングを遅延させる方法である。

support.google.com
引用:
https://support.google.com/tagmanager/topic/7679108?sjid=2189355034293018754-AP

そのためには配信トリガーを理解しなくてはいけなく、ユーザがどのタイミングでどんなタグを求めているのかを考えながらタグ配信を行うと良い。
なるべくユーザにはコンテンツを早く表示して、広告をあとから表示、アクセス解析をあとから開始のほうがいいというわけである。

アクセス解析を複雑化するとタグのバージョン管理が複雑になる

ウェブページを高機能化するとタグが複雑化して、ロールバックする必要がある。
その際にGoogleタグマネージャーは大変協力で大手タグの遅延配信に対応しているので、
複数サイトを運営している大企業はこの手のツールを使ってサイトを管理している。
また大企業の場合タグ管理ツールを協力会社に最小権限で払い出すことができるので、セキュリティの観点からも
タグマネージャーでサイトのタグ管理をするのは非常に簡素化できる。

正しくタグマネージャーを設置できたか確認する

埋め込んだタグが発動することを「発火」する。
と表現をし、実際にタグマネージャーでタグが動いているかを確認をする方法を紹介する

タグマネージャーの自身の管理タグIDを選んだら下にある「Fired」の項目を見る。
ここで2Timesなどと発火回数が表示されるので、ここで起動していることが確認されれば問題ない。
ここでNot Firedの場合は設置方法にミスがある場合がある。