Googleアナリティクスのフィルタに関する知見が貯まってきたので、ここで整理しておきたいと思います。
目次(ページ内リンク)
どういった状況でフィルタが使えるのか?
以下のような状況で、フィルタが活躍します。
- 自分のアクセスを除外したい。
- 開発サイトと本番サイトでログを振り分けたい。
- サイト別にログを振り分けたい。
- 計測するページをドメイン+ページにしたい。
設定する前におさえておくべき、フィルタの特徴・注意点
- フィルタが設定できるのは、ビュー単位
- フィルタは、同一アカウント内で使いまわせる。
- 複数のフィルタを設定した場合には、上から優先的にフィルタがかかる
- デフォルトは、URL(http://xx.x~~~~.com/index.html)でのフィルタリングは不可
- ドメイン(www.example.com)とページ(/index.html)は分けてフィルタ
- もしもの時に、1つ別に「フィルタなし」ビューを作成する
※フィルタ設定を失敗したときに、1つもログがとれていないという状況を回避
それでは、基本的な設定方法を紹介します。
基本編:自分のアクセスを除外する
自分のアクセスを除外したいというときには、このIPアドレスの除外フィルタを作成します。
ただ、自アクセス除外には注意点がいくつかあります。
- 自分のアクセスが計測されないため検証ができなくなる
- IPアドレスが変動するタイプだど上手く除外できない
- モバイルからのアクセスはIPアドレスが違うため除外できない
まずは、ツールでIPアドレスを確認します。
Current IP Check
checkip.dyndns.org/
XXX.XXX.XXX.XXXとある数字自分のIPアドレスです。
「アナリティクス設定>該当のビュー>フィルタ>新しいフィルタ」を開きます。
新規フィルタを作成し、「IPアドレスからのトラフィック」でIPアドレスを除外します。
今現在の計測状況は「レポート>リアルタイム>サマリー」から確認できます。
難しいですが、「計測されなくなった」ことを確認してください。
ドメイン名は「aaaa.com」ページ名は「/pc/」配下のみ計測する
いくつかのページを計測されている場合に特定のページのみをログ計測したい場合がこの設定が有効です。
計測ページはバラバラ
http://bbbb.com/pc/page1.html
http://aaaa.com/sp/index.html
http://aaaa.com/pc/index.html
↓
このURLのみ計測したい。
http://aaaa.com/pc/index.html
1つ目のフィルタは、ホスト名「aaaa.com」でフィルタし、2つ目のフィルタでリクエストURIを「/pc/」を含むでフィルタします。
フィルタの特徴として、複数のフィルタを設定した場合には、上から優先的にフィルタが適用されます。
開発サイトと本番サイトでログを振り分ける
1つのトラッキングコードで本番サイトと開発サイトの両方を計測している場合には、フィルタを使って、それぞれのサイトのログを別々のビューに貯めることができます。
例えば、以下のようサイトが存在する場合には、
本番サイト「localhost.com」
開発サイト「test.localhost.com」
それぞれのビューにフィルタ設定をします。
本番サイトビュー:(一致)ホスト名「localhost.com」に等しい
開発サイトビュー:(一致)ホスト名「test.localhost.com」に等しい
これを応用して、ドメインの異なるサイト別に、ログを振り分けることも可能です。
複雑なフィルタを作る場合
AND条件は、上で示したとおり、フィルタを重ね合わせればよいですが、OR条件のフィルタを作る場合には、正規表現を使う必要があります。
例えば、「/pc/」配下と「/sp/」配下を計測する場合には、 「|」(パイプ)でつないでこのように記載します。
フィルタ設定:(一致)リクエストURL「/pc/|/sp/」
その他、以下の10種類の正規表現が利用できます。詳細は、googleのヘルプに詳しく解説されているのでご覧ください。
|.*+?!()\[]
正規表現の概要 - アナリティクス ヘルプ
support.google.com/analytics/answer/1034324?rd=1
応用編「ドメイン名+ページ名」でURLのようなページ名で計測する
通常は、ドメイン名を除いたページ名のみを計測します。
http://2m3g1.com/1574.html
の場合には、
/wp/1574.html
と計測されます。
これを「ホスト名追加」フィルタを適用すると、「/wp/1574.html」というページ計測を「2m3g1.com/1574.html」と変更できます。
通常:「/wp/1574.html」
ホスト名追加フィルタ:「2m3g1.com/1574.html」
新しいフィルタで以下の設定をします。
フィールドA:ホスト名「(.*)」
フィールドB:リクエストURI「(.*)」
出力先:「$A1$B1」
実際の計測データは「レポート>リアルタイム>コンテンツ」から確認できます。
応用編「ドメイン名+ページ名」でフィルタする
以下のようにURLがある場合に、(1)(4)のみを計測したいという場合に、上記設定のOR条件とAND条件では難しくなります。
(1) http://aaaa.com/pc/index.html
(2) http://aaaa.com/mobile/index.html
(3) http://bbbb.com/pc/index.html
(4) http://bbbb.com/mobile/index.html
なぜなら、aaaa.comの場合は/pc/配下のみで、bbbb.comの場合は/mobile/配下のみというANDとORを組み合わせたフィルタは1つのフィルタではできないからです。
そこで使うのが、上で紹介した「ホスト名追加」フィルタです。
このフィルタは、ページ名を計測する「リクエストURI」をホスト名追加したもので上書きするため、その後は、その上書きした内容でフィルタできます。
「ホスト名追加」フィルタを追加した「後」に
リクエストURI:aaaa.com/pc/|bbbb.com/mobile
というフィルタを作成すると、(1)(4)のみフィルタすることができます。
応用編「ドメイン名+ページ名」でフィルタする
カスタムフィールドを使用すると、URL情報だけではなく、流入経路などなんでもANDとOR条件の組み合わせでフィルタできます。
例えば、流入経路「参照元/メディア」でyahooの自然検索(organic)と、googleの有料検索(cpc)のみをフィルタリングする場合には、
参照元:yahooまたはgoogle
メディア:organicまたはcpc
としてしまうと、yahoo/cpcやgoogle/organicといった余計なものまで抽出されてしまいます。
この場合には、カスタムフィールドを使用します。
一旦、「参照元+メディア」という情報をカスタムフィールド1に格納します。
続いて、カスタムフィールド1を正規表現一致させます。フィルタ一致項目を先ほどの「参照元+メディア」に変更し、yahoo/organicまたはgoogle/cpcを指定します。
フィルタ:(一致)カスタムフィールド1「yahoo/organic|google/cpc」
フィルタの設定後は、今現在のアクセス状況は「レポート>リアルタイム>トラフィック」から確認できます。
ぜひ、フィルタを正しく設定して、最適な計測を行ってください。