Sitemap
VELTRA Engineering

Posts from the VELTRA Engineering team. www.veltra.com

Googleオプティマイズで多数のページをリダイレクトテストする

「リダイレクトテスト」機能では不可能。どうする?

7 min readMar 16, 2020

--

2020年5月に「高度なリダイレクト」機能が追加され、多数のページのA/Bテストがリダイレクトテスト機能でできるようになりました。本記事のタイトルおよび本文は、2020年3月時点の情報であり、古くなっています。ご注意ください。
Press enter or click to view image in full size

ベルトラのイワモトです。「人生は選択の連続である」と誰かが言ったそうですが、確かに、A定食にすべきかB定食にすべきかなど、難しい選択を迫られる場面はよくあります。

さて、Googleオプティマイズは、ウェブサイトのA/Bテストが簡単にできる便利なツールです。「リダイレクトテスト」機能を使うと、新デザインページへのリダイレクトによるA/Bテストが実現できます。

しかし、2020年3月現在のリダイレクトテスト機能では、リダイレクト先が静的URLでしか指定できず、1ページしかテストできません。たとえば「商品0001の新ページ」はテストできますが「商品0001~商品9999の新ページ」はテストできないのです(※)。

※リダイレクトを /products/0001 → /products2/0001 のようには指定できるのですが、/products/{product_id} → /products2/{product_id} のようには指定できないためです。

それでも、Googleオプティマイズで多数のページをリダイレクトテストする方法があります。以下、詳しくご紹介します。

1. エクスペリエンスの作成

まず、エクスペリエンスを作成します。Googleオプティマイズでは、各種テストやパーソナライゼーションを総称して「エクスペリエンス」と呼んでいます。

作成する際は、下記の2点に気をつけます。

  1. 「エディタページ」には新デザインページのURLを指定します。ビジュアルエディタの操作対象として使われるだけなので、どの商品でも構いません。現行デザインのURLにすると、ビジュアルエディタ上でリダイレクトが効いてしまい、操作しづらくなります。
  2. 「テストのタイプ」は「A/Bテスト」を選択します。「リダイレクトテスト」を選択しないのがポイントです。

2. パターンの追加

次に、パターンを追加します。現行デザインは「オリジナル」パターンとしてデフォルトで登録されているので、新デザイン用のパターンだけを追加すればOKです。実際には、パターン名を決めるだけです。

3. パターンの編集

続いて、手順2で追加したパターンを編集します。ここでビジュアルエディタが使われます。

3–1. 要素の選択

ビジュアルエディタが開いたら、head要素を選択します。

Press enter or click to view image in full size

3–2. 要素の編集

「要素を編集」ボタンを押し、「JavaScriptを実行」を選択します。

Get Takashi Iwamoto’s stories in your inbox

Join Medium for free to get updates from this writer.

コード入力欄が開いたら、リダイレクト用のコードを入力します。

Press enter or click to view image in full size

適切なコードの内容はサイトやページによって異なります。ここでは下記のようにします。

if (location.href.includes('/a/')) {
// Hide body
var css = 'body {display:none}';
var style = document.createElement('style');
style.appendChild(document.createTextNode(css));
element.appendChild(style);
// Redirect
location.href = location.href.replace('/a/', '/a2/');
}
  • URLに「/a/」が含まれる場合だけリダイレクトする
  • 現行デザインがちらっと表示されるのを避けるため、bodyを非表示にする
  • リダイレクト先は、現行デザインページの「/a/」を「/a2/」に変えたもの

プルダウンは「開始タグの後」を選択するのがよいと思います。「終了タグの後」より若干早く処理されるためです。

3–3. 編集内容の保存

「適用」ボタン、「保存」ボタン、「完了」ボタンを順に押し、編集内容を保存します。これでビジュアルエディタが終了します。

4. ターゲティングURLの編集

次に、ターゲティングURLを編集します。現段階では、手順1で選んだ新デザインページが仮設定されています。

Press enter or click to view image in full size

これを、正しいターゲットである「リダイレクトテストを実施したい現行ページすべて」に変更しなければなりません。

変更するには、鉛筆アイコンを押して編集画面を開き、下記のように編集します。

  1. 「URL」「次の正規表現に一致」を選ぶ
  2. 現行ページにマッチする正規表現を入力する
Press enter or click to view image in full size

編集したら「ルールの確認」欄で、現行ページのURLが正しくマッチするかどうか確認します。問題なければ保存しましょう。

保存すると「 エディタページが URL ターゲティング ルールと一致しません。」と警告されます。が、気にしなくて大丈夫です。

Press enter or click to view image in full size

5. その他の設定

あとは必要に応じて、新デザインの表示確率、ターゲティングユーザー、テスト目標などの項目を設定します。このあたりはGoogleオプティマイズの通常の使い方なので省略します。

6. テストの開始

設定が完了したら「開始」ボタンを押します。いよいよテスト開始です。

現行ページのURLにアクセスすると、手順5で指定した確率で、新デザインページにリダイレクトされます。されなかった場合は、Cookieを削除し、再度アクセスしてみてください。

Cookieを削除するのが面倒なら、ブラウザのシークレットウィンドウでアクセスするのが簡単です。ウィンドウを閉じるとCookieが自動的に削除されます。

おわりに

今回は、Googleオプティマイズの「A/Bテスト」機能を使って多数のページをリダイレクトテストする方法をご紹介しました。将来的に「リダイレクトテスト」機能で可能になることを期待しますが、それまでは今回の方法で実施するのがよいと思います。

なお、この方法は下記ページの内容と原理的には同じです。下記ページでは、ビジュアルエディタに指定するJavaScriptコードが「フラグ変数を設定するだけ」になっています。フラグが立っていたらページ側のスクリプトでリダイレクトする寸法です。この辺は好みの問題でしょう。

Happy A/B testing!

--

--

Takashi Iwamoto
Takashi Iwamoto

Written by Takashi Iwamoto

AI・運用・OSS開発が好きなITエンジニア/共著『[入門]LLMアプリ開発』/AWS Community Builder (Cloud Operations)/ex-AWS