Google Analyticsで検索順位を調べるフィルタ設定

1ヶ月ほど前に、Googleの検索結果のリファラーが変わるというアナウンスがありました。

下のビデオは、GoogleのMatt Cutts(マット・カッツ)氏の新しいリファラーに関する解説です。

新しいリファラーに付くストリングスを取得して、アクセスを発生させたキーワードが検索結果で何位だったのかを、Google Analyticsを使って調べることができます。

すでに、いくつかのブログで設定方法が紹介されていますが、知らない読者さんもいることでしょうし、このブログにも残しておきたいので、解説することにします。

情報ソースは、How To Monitor Your Rankings Using Google Analytics Advanced Filter Segmentation – blogstormです。

Google Analytics(以下、GA)が、すでにインストールしてあり、ある程度GAの操作に慣れている前提で話を進めます。
したがって、ところどころ細かな説明を省いています。

全部で3つのフィルタを設定しますが、まず検索結果を解析するための専用のプロファイルを準備します。

GAを設定すると、プロファイルが最初に1つ自動的に作成されます。
この最初のプロファイルには、いかなるフィルタも設定するべきではありません。

もしなんらかのトラブルが発生して解析データが取得できなかった場合は、トラブル期間のデータが永遠に失われます。

万が一に備えて、フィルタを設定する時は別のプロファイルを作って、そちらに設定するようにしてください。

データが取れなかった事態が発生しても、最初のプロファイルはそのままなので影響を受けません。

0.専用のプロファイル作成(事前準備)

既存のドメインに新しいプロファイルを追加します。

対象サイトの列にある「新しいプロファイルを追加」リンクをクリックします。
プロファイルの新規作成画面が出ます。

Google Analyticsで新規プロファイルを作成

  1. 「既存のドメインのプロファイルを追加」を選択
  2. 「ドメインを選択」で、解析対象のドメインを選択
  3. 任意のプロファイル名を入力(ここでは「Google Organic with Ranking」)
  4. 「タイムゾーンの国または地域」を自分の状況に合わせて選択

作成すると、トップページに今追加したプロファイルが表示されます。

ステータスに警告マークが出ているはずなので、ステータス確認をしておいてください。

Google Analyticsでトラッキングコード未確認の警告

1.オーガニックからのトラフィックだけを収集するフィルタの作成

オーガニック(自然検索)からのアクセスだけを取得するフィルタを作ります。
「Google Organic with Ranking」のプロファイル設定画面から、フィルタを追加します。

Google Analyticsで新規フィルタを作成

  1. 「プロファイルに新しいフィルタを追加」を選択
  2. 任意のフィルタ名を入力(ここでは「Only Organic」)
  3. 「フィルタの種類」で、「カスタムフィルタ」を選択
  4. ラジオボタンは「一致」を選択
  5. 「フィルタフィールド」は、「キャンペーンのメディア」を選択
  6. 「フィルタパターン」は、「organic」を入力
  7. 「大文字と小文字の区別」は、「いいえ」のまま

2.Googleからのトラフィックだけを収集するフィルタの作成

Googleからのアクセスだけを取得するフィルタを作ります。

1と2のフィルタの組み合わせで、Googleのオーガニック検索だけのデータを取得するようになります。
AdWordsからのアクセスや、Yahoo!など他の検索エンジンからのアクセスが除外されます。

厳密に言えば、今回目標としているGoogle検索の順位を調べるフィルタには、1と2のフィルタは必須ではないかもしれません。

理由は後ほど説明しますが、念のために設定しておくことにします。

Google Analyticsで新規フィルタを作成

  1. 「プロファイルに新しいフィルタを追加」を選択
  2. 任意のフィルタ名を入力(ここでは「Only Google」)
  3. 「フィルタの種類」で、「カスタムフィルタ」を選択
  4. ラジオボタンは、「一致」を選択
  5. 「フィルタフィールド」は、「キャンペーンのソース」を選択
  6. 「フィルタパターン」は、「google」を入力
  7. 「大文字と小文字の区別」は、「いいえ」のまま

3.SERPの順位を取得するフィルタを作成

検索結果の何位に表示されたかを取得するフィルタを作ります。

新しいリファラーには、「cd=x」というストリングスが付きます。
cdは、(おそらく)「Click Detail」を表し、「=」の後に順位を示す数字が入ります(「x」の部分)。

cd=3なら3位、cd=8なら8位です。

PPCからのアクセスや他の検索エンジンのリファラーには「cd」は存在しないと思われますが、絶対とは言い切れません。

ですので、1と2を設定してGoogleからのオーガニック検索であることを厳格に指定しました。

Google Analyticsで新規フィルタを作成
※クリックで拡大

  1. 「プロファイルに新しいフィルタを追加」を選択
  2. 任意のフィルタ名を入力(ここでは「Google Organic with Ranking」)
  3. 「フィルタの種類」で、「カスタムフィルタ」を選択
  4. ラジオボタンは、「アドバンス」を選択
  5. 「フィールド A -> 引用 A」は、「キャンペーンのキーワード」を選択し、「(.*)」を入力
  6. 「フィールド B -> 引用 B」は、「参照」を選択し「(\?|&)(cd)=([^&]*)」を入力
  7. 「出力先 -> 構成」は、「ユーザー定義」を選択肢「$A1 | click detail: $B3」を入力
  8. 「フィールド A は必須」は、「はい」を選択
  9. 「フィールド B は必須」は、「はい」を選択
  10. 「出力フィールドを上書き」は、「はい」を選択
  11. 「大文字と小文字の区別」は、「いいえ」を選択

これで完成です。

プロファイルの作成後まもなくしてデータの収集が始まるので、まだ解析データは集まっていません。

しばらくすると、「ユーザー」⇒「ユーザー定義」でデータを見ることができるようになります。

Google Analyticsでランキングを確認
※クリックで拡大

タテの棒「|」(正式名称はパイプライン)の前が検索キーワードで、後の「click detail:」に続く数字が検索結果での順位です。

新しいリファラーは、まだ一部の検索に対してだけしか導入されていないので、データの集まりが悪いでしょう。
キャプチャには見えませんが、1位に「(not set) 」という表示があるはずです。
これは変更前のリファラーからのアクセスで、「cd」が存在しないので順位を取得できません。

徐々に新しいリファラーが広がってくるはずなので、今のうちに準備しておくといいでしょう。

なお、冒頭のMatt Cutts氏のビデオから判断すると、ユニバーサル検索によって同じ順位に複数の結果が並んだ場合は、cdで取得した数字と実際のSERPでの順番がずれることがあるようです。