January 26, 2016

Google アナリティクスのスパムには、フィルタとセグメントの合わせ技で立ち向かえ

Googleアナリティクスの『スパム』が昨年ごろから流行しているのをご存知でしょうか?
参照元やキーワードなどに様々なデータを残し、不審なサイトへのアクセスを誘導する迷惑行為です。
多くのサイトでフィルタによる除外が紹介されていますが、フィルタの課題点に触れつつ、セグメントを組み合わせた対処法をご紹介していきます。

※全てのケースに当てはまる保証はありませんので、設定は自己責任でお願いします。
※2016/01/26現在で確認している情報です。最新情報は公式のドキュメント等で確認してください。

どんな風に表示されるか?

ある日、サイトのアクセスをチェックすると、

ga1.png

「おっ、アクセス上がってるじゃん!やった!」
と、急増したアクセスに大喜び。
ところが・・・


「どこからの流入だろう?検索キーワードは?」
と早速、参照元を調べてみると・・・

ga2.png

「с.новым.годом.рф」
ん、なんだ、この謎のドメインは・・・。
気になりますが、この時にむやみに不審なURLへアクセスしないように注意しましょう。

検索してみて、スパム情報をチェック

Google検索で以下のように「googleanalytics + アクセスのあった不審なドメイン名」で調べてみるかなりの確率でスパム報告の情報がでてきます。
こういう情報をいち早く見つけてまとめてくれる方々はすごいですね、感謝です。

ga3.png

というわけで、スパム確定です。これはリファラースパムと呼ばれるものですが、その他にも「オーガニック検索」や「Direct」でアクセスしてくるスパムもいるので要注意。

まずは、ビューの設定をチェック

Google アナリティクスのビュー設定に、もともとスパムを除外する機能があります。
ただ、上述したようなスパムの多くはこの設定では防ぎきれません。
それでも、ある程度 数を減らせるのでまずはこの設定を確認しましょう。

ga4.png

「アナリティクス設定」>「ビュー設定」>「ボットのフィルタリング」
という箇所に、
「既知のボットやスパイダーからのヒットをすべて除外する」
というチェックがあるので、チェックした状態にして保存します。

フィルタを使った対処法

防ぎきれないスパムは、フィルタを使えば集計から除外することができます。
フィルタの設定については、様々なサイトで紹介されているので、この記事では割愛して以下をご紹介します。

リファラースパム!?Google Analyticsでのアクセス数の伸びに注意! | 株式会社 矢谷印刷所
Googleアナリティクスで98%以上のスパム記録を除外する方法! | AnalyzeFindOut~アクセス解析を調べる

フィルタの対処法での課題点

ただフィルタの方法だけでは、いくつか困った点があります。

一度設定すると、設定前の集計には戻せない

フィルタはデータの集計時点でアクセス除外を行うので、フィルタで除外されたデータ(スパムを含んだアクセス)を確認することはできなくなります。
そのため、うっかり間違ってスパムでないものをフィルタしてしまうと大変です。
まあ、この問題はフィルタをかける前の「すべてのウェブサイトのデータ」のビューを残しておくことで解消できます。

一度入ってしまったデータは、フィルタをかけても除外されない

フィルタは設定後のデータに反映されるものですので、結局のところ既に入ってしまったデータは後述のセグメントの方法で除外して確認するしかありません。

スパムごとにフィルタ設定をするのが面倒くさい
プロパティを跨いで設定を引き継ぐことができない

問題はこれなんです。
怪しい参照元などを除外しても、次から次へと新しいスパムが登場します。
その度にフィルタを増やしていくのがまあ面倒なんです。

実はフィルタ設定をするときには「既存のフィルタを適用」として、1度設定したフィルタを別のビューにも適用することができます。
ただし、これは「同じプロパティ内」だけで可能な設定なのです。

1サイトだけならまだいいですが、だいたい皆さん複数サイトを運営していますよね。
ほとんどの場合1サイトごとに1プロパティを使用していると思いますので、新しいスパムが出る度にサイトごとにフィルタ設定を逐一更新していかなくてはならない。。

これはかなり面倒!やってられん!!

セグメントを使った対処法

そこで、セグメントを使った対処方法をご紹介します。

セグメントの特性

正確には「アドバンス セグメント」というようですね。詳しい説明は割愛しますが、フィルタと違って集計するデータで除外をするのではなく、閲覧しているデータの中で絞込を行う機能です。

そのため、比較的簡単に設定を調整できることと、過去のデータにも適用できるという利点があります。
更にはアカウント(ユーザーという意味でのアカウント)ごとにセグメント設定を保存できるので、プロパティを跨いで使用することができるのです!

また、セグメントは本来データのグルーピングとして使うためのものなので、以下のようにスパムを含む「すべてのセッション」と比較して参照することも可能です。

ga5.png

セグメントの設定方法

「レポート」の「ユーザー」の画面などで「+セグメント」をクリックします。

ga9.png

セグメントの画面が開いたら「新しいセグメント」をクリック。

セグメント名に「スパム除外」を入力。
「条件」を開き、以下のように除外したい条件を設定していく。

  • 「ホスト名」「含まない」「(not set)」
  • 「参照元」「含まない」「с.новым.годом.рф」
  • 「参照元」「含まない」「googlemare.com」
  • 「参照元」「含まない」「o-o-8-o-o」
  • 「キーワード」「含まない」「copyrightclaims.org」
  • 「参照元」「含まない」「happy.new.yeartwit.com」

ga10.png

上記は一例です。
ご自分のサイトのスパムを見つけ次第、必要な参照元などを足していって下さい。
リファラースパムに関しては、このようなまとめもあります。
[見つけ次第更新] リファラースパムリスト Google Analytics

セグメントの対処法での課題点

他のセグメント、例えば「モバイル トラフィック」を使いたいといった時に、複数のセグメントを組み合わせ(AND)でデータを絞り込むことはできないため、「モバイル トラフィック」セグメントはスパムを含んだ状態になってしまいます。
解決方法としては、「モバイル トラフィック」のセグメントをコピーして同じ条件を保ちつつ、「スパム除外」のセグメントと同じ条件を足した新しいセグメントを作成するしかありません。
そのため、たくさんのセグメントを活用している方にはこの方法は難しいかもしれません。

また先述のように、セグメントは「アカウント(ユーザー)」ごとの設定のため、複数人で運営している場合は同じ設定を使ってデータを確認しないと、見る人によってバラバラの数値になってしまいます。
これはセグメントを他のアカウントへ共有することで解決できます。

セグメントを他アカウントへ共有する

セグメントの下矢印をクリックしてメニューを開くと、「共有」とでてきます。

ga6.png

すると、URLが表示されるので、そのURLをメール等で共有します。

ga7.png

共有された人はURLにアクセスすると、以下のように「セグメントの設定が共有されました。」と出るので、「任意のビュー」を選択して「作成」を押して完了です。

ga8.png

実際に私が使っているセグメントが以下です。
ご自由に取り込んでいただいてOKですが、適用後にデータの確認を必ず行い、自己責任にてご利用下さい。
https://www.google.com/analytics/web/template?uid=MjwMcsGySyOGMFKQvXvOuQ

まとめ

というわけで、フィルタの対処法でも、セグメントの対処法でもそれぞれ課題はあります。
私はある程度、多くのスパムを防げる方法ではフィルタ設定を最初にかけるようにして、その後見つけたものは随時セグメントの設定をアップデートして使っています。
それぞれの特徴を掴んで、うまく使い分けましょう。

« Git初心者・中級者へ捧げるGitを学ぶためのまとめ | Home | 開業 1周年 »