• A/BテストでSEOへの影響を抑えるにはcanonicalと302転送を使い分ける

A/BテストでSEOへの影響を抑えるにはcanonicalと302転送を使い分ける

公開日: 執筆:佐藤

A/Bテストで複数のURLを使うなら、変化ページから元ページへrel="canonical"を指定します。元URLから変化URLへ利用者を移す場合は、恒久的な301転送ではなく、一時的な302転送を使います。

canonicalと302転送は、どちらか一方を選ぶものではありません。canonicalは検索エンジンへ代表URLを示し、302転送は利用者を一時的に別URLへ移します。さらに、Googlebotだけをテストから外さず、終了後はテスト用のURLと仕組みを残さないことが必要です。

開始前に元URLと変化URLの役割を決める

A/Bテストは、一つのページについて複数の版を用意し、利用者の反応を比較する方法です。Googleのウェブサイトテストに関する案内は、各版が固有のURLを持ち、元URLを訪れた利用者の一部を変化URLへ移す方法として説明しています。

一方、多変量テストは一つのURLを使い、見出し、写真、ボタンなどの組み合わせを動的に変えます。一つのURL内で表示だけを変えるテストに、変化URL向けのcanonicalや転送は必要ありません。最初に、テストが複数URLを使うのか、一つのURL内で完結するのかを確かめます。

たとえば、サービス案内の元ページをhttps://example.com/service/とし、見出しを変えたページをhttps://example.com/service-test/に置くとします。これは説明用の仮例です。元ページは公開を続け、変化ページはテスト期間だけ使います。

開始前に、元URL、変化URL、計測する行動、開始日、終了の判断、テストを外す担当者を一枚へ記録します。テストを開始する人と、URLやサーバー設定を元へ戻せる人が違うなら、終了作業まで先に割り当てます。

変化URLから元URLへcanonicalを指定する

複数URLを使うテストでは、各変化ページのhead要素から元ページへcanonicalを指定します。

<link rel="canonical" href="https://example.com/service/">

この指定は、変化ページが元ページに近い内容であり、元URLを代表として扱ってほしいことを検索エンジンへ伝えます。変化ページへ移動した利用者を元ページへ戻す転送ではありません。

Googleは、A/Bテストの変化URLをまとめる目的では、noindexよりrel="canonical"を勧めています。目的は元ページまで検索結果から外すことではなく、複数の版を元URLの変化としてまとめることだからです。

canonicalは、ページを公開しなくてもよい印ではありません。検索エンジンが変化URLを取得できなければ、指定したcanonicalも確認できません。変化ページのURL、HTML、canonicalの向きを、テスト開始前に一組ずつ確認します。

利用者を変化URLへ移すなら302転送を使う

元URLへ来た利用者の一部を変化URLへ転送する場合は、302転送を使います。RFC 2616の302 Foundは、要求された資源が一時的に別のURIにあることを示し、今後の要求では元のURIを使い続けるよう定めています。

301転送は、移転先を恒久的なURLとして扱うときに使います。短期間のテストで301を使うと、元URLを変化URLへ置き換える意図として検索エンジンへ伝わります。テスト中だけ移すなら、転送の期間とHTTPステータスを一致させます。

転送を使わず、同じURLのHTML内で版を切り替えるテストもあります。その場合、302を追加する理由はありません。canonicalと同じく、302も「A/Bテストだから必ず入れる設定」ではなく、複数URL間で利用者を移すときの設定です。

Googlebotだけ元ページへ戻すとクローキングになる

検索への影響を避けようとして、Googlebotには常に元ページを見せ、通常の利用者だけを変化ページへ送ってはいけません。Googleは、利用者とGooglebotへ異なる内容を見せるクローキングに当たる例として、この方法を挙げています。

テストを実施するか、どの版を表示するかを、ユーザーエージェントだけで決めないでください。Googlebotも、通常の利用者と同じ条件でテスト対象になり得る状態にします。

検索エンジンへ見せる内容を整える仕事と、利用者の反応を比較する仕事は分けます。前者はcanonicalと一時転送でURLの関係を示し、後者は同じ振り分け条件と計測方法で比較します。

Content Experimentsを使ってもSEO設定は別に確認する

Google Analytics Content Experimentsは、Google Analyticsで設定済みの目標を使い、複数のページ版を異なる訪問者へ表示して比較する機能です。2012年7月23日には、すべてのGoogle Analytics利用者が使えるようになりました。

Content Experimentsは、どの版が目標達成につながったかを測る道具です。変化URLのcanonicalや、サーバーが返すHTTPステータスを確認する仕事とは別です。計測機能を設定しただけで、検索向けのURL管理も完了したと考えないでください。

説明用の仮例なら、サービス案内を見たあとに問い合わせ完了へ進んだ割合を同じ目標で比べます。テスト途中の数字だけで版を決めず、利用するテスト機能が十分なデータを集めたと判断するまで待ちます。必要な期間は、訪問数や目標達成率によって変わるため、一律の日数にはできません。

終了したら採用内容を元URLへ反映してテストを外す

テストが終わったら、採用する内容を元URLへ反映します。そのあとで、不要になった変化URL、振り分け処理、テスト用スクリプト、マークアップを外します。

信頼できる結論を得たあとも、テスト用の構成を残す理由はありません。Googleは、必要以上に長く続くテストを、検索エンジンを欺く試みと判断する可能性があると案内しています。ただし、終了までの日数を一律には定めていません。訪問数と目標達成数を見て、信頼できる結論を得た時点で終えます。

これらの設定は、検索への影響を抑えるためのものです。影響が必ずゼロになると保証するものではありません。まず一ページについて、元URL、変化URL、canonical、転送方法、計測目標、終了条件、撤去担当者を書き出してからテストを始めてください。

戻る