·A/Bテスト / CVR / 客単価 / 売上分析 / ECサイト

A/Bテスト|CVRで勝っても売上で負ける理由

A/Bテストの勝敗を購入率(CVR)だけで決めると、客単価(AOV)が落ちたパターンを採用してしまうことがあります。率は上がったのに売上が伸びない、という結果はここから生まれます。本記事では負ける形を3つに分けて整理します。客単価が下がっている場合、母数が足りず勝敗そのものが変動に埋もれている場合、そして割引テストで後から来るはずだった購入を前倒ししている場合です。あわせて、採用した後に売上で検算できるようにするために、テスト開始前にやっておく準備も扱います。

A/Bテスト|CVRで勝っても売上で負ける理由

A/Bテストで差が出たら、購入率の高かったパターンを採用する。この手順自体は広く使われていますが、採用した後で売上が伸びないことがあります。判定に使った指標が購入率だけだと、客単価の下落が結果に反映されないためです。負ける形を3つに分けて見ていきます。

この記事のまとめ#

  • 購入率と客単価を掛けた値が、1セッションあたりの売上(RPS)になります
  • 購入率で勝ったパターンでも、客単価が下がっていればRPSでは負けます
  • 購入率も客単価も日ごとに振れるので、出た差が変更の効果とは限りません
  • 割引を含むテストは、後から来るはずだった購入をテスト期間に前倒しします
  • 採用の条件は、テストを始める前に指標・期間・母数の下限の3つで決めておきます

1.購入率で勝ったパターンの、客単価が下がっている#

購入率と客単価は独立に変動するので、片方だけで勝敗を決めると、もう片方の下落が判定から抜け落ちます。

1回の訪問が生んだ売上をRPS(1セッションあたりの売上)と呼びます。RPSは、購入率と客単価を掛けた値と一致します。購入率が1.6%で客単価が20,000円なら、RPSは320円です。売上そのものは、このRPSにセッション数を掛けたものです。

ここで、購入率だけを判定に使うとどうなるかを見ます。架空の化粧品ECで、商品ページの見せ方を2パターンでテストしたとします。

判定に使う指標パターンA(現行)パターンB(変更)
購入率(CVR)1.6%2.0%
客単価(AOV)20,000円12,000円
RPS320円240円

購入率ではパターンBが1.25倍で、購入率だけを見ればパターンBの勝ちです。ところが客単価はパターンBのほうが8,000円低くなっています。掛け合わせたRPSはパターンAが320円、パターンBが240円。購入率で勝ったパターンが、1回の訪問あたりの売上では80円負けています。同じ訪問数を集めたなら、売上の差はそのまま80円かける訪問数になります。

客単価が下がる理由は、パターンの中身にあります。安い商品を上に置いた、まとめ買いの導線を外して単品を目立たせた、割引を前面に出した。どれも購入率を押し上げる方向に効き、同時に1回の注文額を下げます。購入率が上がったこと自体は、変更が効いた証拠として正しく読めます。売上まで届いたかは、購入率とは別の指標を見ないと分かりません。

判定に使う売上の定義も、先に決めておく必要があります。GA4の「購入による収益」は、購入・アプリ内購入・サブスクリプションの合計から払い戻しを差し引いた金額として定義されています[1]。返品率がパターンによって変わるテストでは、払い戻しを引く前の値と引いた後の値で結論が入れ替わることがあります。

(架空の化粧品ECで、商品ページの2パターンを購入率・客単価・RPSの3指標で対照した比較表。パターンAは購入率1.6%・客単価20,000円・RPS320円、パターンBは購入率2.0%・客単価12,000円・RPS240円。購入率ではパターンBが1.25倍だが、客単価は8,000円低く、RPSではパターンAが80円上回ることを示す。イメージ)

2.その差は、変更したから出たとは限らない#

同じ内容を2つに分けて配信しても数値には差が出るため、変更して出た差が効果かどうかは、変動の幅を知るまで決まりません。

購入率も客単価も、日によって振れます。週末と平日で買われる商品が変わり、高額注文が1件入るだけで、その日の客単価は変わります。この振れ幅を確かめる方法が、何も変えずに走らせるテストです。同じ内容のパターンを2つに分けて配信し、それでも出てしまう差を測ります。

ここで効いてくるのが母数です。購入率の分子は注文件数で、客単価の分母も注文件数です。訪問が何万件あっても、注文が両パターン合わせて数十件しかなければ、1件の増減で率が大きく変わります。注文20件と注文26件の間に出た「30%の改善」は、変更の効果と、その週にたまたま入った6件との区別が付きません。

(何も変えずに同じ内容を2つに分けて配信した14日間の、日次購入率の推移を2本の折れ線で示した図。両者は同じ内容にもかかわらず日ごとに上下し、ある日は片方が1.41倍まで開き、別の日には逆転している。変更しなくてもこの幅の差が出ることを示す。イメージ)

自社サイトの変動幅が分かると、テストの読み方が変わります。何も変えずに1.41倍まで開くサイトで、変更して1.3倍の差が出ても、それは変動の内側です。逆に、変動が1.1倍に収まるサイトで1.3倍の差が出たなら、変更の効果として読める見込みが立ちます。判定の前に必要なのは、他社の目安ではなく自社サイトの振れ幅のほうです。

3.テスト期間の売上に、後から来るはずだった購入が入っている#

割引やキャンペーンを含むテストは、テスト期間の中に将来の購入を移動させるため、期間内の売上だけでは採用の可否を判定できません。

10%オフを出すパターンと出さないパターンを比べれば、割引側の購入率は上がります。ただしその購入の一部は、割引がなくても数週間後に発生していた注文です。テスト期間の売上には、その分が前倒しで積まれています。テストを止めた後の数週間で、同じ顧客が買わない期間が来ます。

この形は、テスト期間を切り取った表には出てきません。期間の終わりで集計を止めると、前借りした分は売上として計上され、返済にあたる部分は集計の外に落ちるためです。

(架空の化粧品ECで、2パターンの週平均注文件数をテスト期間中と終了後の4週間で比べた2系列の棒グラフ。パターンAはテスト期間中105件・終了後98件でほぼ横ばい。パターンBはテスト期間中152件から終了後61件へ落ちている。割引を含むパターンBが期間中に注文を前倒ししていたことを示す。イメージ)

見分けるには、テストが終わった後も同じ基準で売上を追い続けます。テスト期間中の週平均と、終了後4週間の週平均を並べ、割引を出した側だけが落ちていないかを見ます。落ちていれば、テスト期間に積まれた売上の一部は、後から来るはずだった購入だったことになります。広告の予算配分でも同じ形が出るため、Google広告の予算A/Bテストで採用の条件を決める話も合わせて確認できます。

4.採用の条件を、始める前に1つ決めておく#

判定の材料を後から選べる状態にしておくと、都合の良い指標が選ばれるため、条件はテスト開始前に確定させます。

決めるのは3つです。1つ目は判定に使う指標で、購入率単独ではなくRPSに置きます。2つ目は集計する期間で、テスト期間と、終了後を含めた期間の両方を最初から決めます。3つ目は母数の下限で、この件数に届かなければ判定しない、という注文件数を先に置きます。

そのうえで、後から売上で検算できるようにする準備が1つあります。パターンごとに別のutm_campaignを振っておくことです。A/Bテストのツールは、どの訪問者にどちらのパターンを見せたかを自分の中に持っていますが、その区分は自社の売上集計の側には渡ってきません。流入の時点でキャンペーン名を分けておけば、テストが終わった後でも、パターンごとの売上を自社側の集計から出し直せます。この準備がないと、テスト期間が過ぎた時点でパターンごとの売上を遡る手段がなくなります。utm_campaignの設計はUTMキャンペーン別の売上効率の見方で扱っています。

RevenueScopeの解決策

テストツールが答えているのは「どちらのパターンの購入率が高いか」までです。採用を決める側が知りたいのは「どちらのパターンがいくら売ったか」で、この2つは同じ質問ではありません。後者に答えるには、パターンという単位で売上が集計されている必要があります。

RevenueScopeは、自社サイトに着地した購入を集計し、チャネル行を開くとutm_campaign別にセッション・売上・RPS・客単価(AOV)・購入率(CVR)を表示します。パターンごとにutm_campaignを分けてあれば、その内訳がパターンごとに分かれて表示されます。テストツールの中にしかなかったパターンの区分が、売上の側にも残ることになります。

GA4でもキャンペーン別の内訳は出ますが、そこで主役になるのはセッション数とコンバージョン数です。RevenueScopeがキャンペーン単位で最初から出すのは、この記事が判定に使うRPSと客単価のほうです。

架空の化粧品ECで、テストに使ったキャンペーンの実績(イメージ)

内訳セッションRPS客単価購入率
メール(チャネル)6,000280円15,556円1.8%
┗ 商品ページ_A3,000320円20,000円1.6%
┗ 商品ページ_B3,000240円12,000円2.0%

※上の表は説明のために置いた一例です。デモ画面が持っているのは見本ECのサンプルデータ(日々更新)なので、開いても同じ数値は出てきません。

商品ページ_Aは1回の訪問あたり320円、商品ページ_Bは240円。購入率で勝っているのは商品ページ_Bのほうですが、訪問が生んだ売上では80円届いていません。この2つをメールとして足し合わせると280円になり、客単価は15,556円になります。280円で売れたパターンはなく、15,556円で買った人もいません。テストの結果を決めるのは、足し合わせる前の2つのほうです。

購入率は、キャンペーン単位ではセッションを基準に算出します。テストツール側の割り当て人数を基準にした購入率とは分母が異なるため、2つの数値は一致しません。突き合わせるのは値そのものではなく、パターンの間の順序です。

FAQ#

よくある質問#

Q. 購入率だけで判定してはいけないのですか?

A. 購入率だけに効くパターンであれば、それで判定できます。価格の見せ方・まとめ買いの導線・割引のように、客単価にも効くパターンでは、購入率と客単価を掛けたRPSまで見ないと売上の向きが決まりません。

Q. A/Aテストは毎回やる必要がありますか?

A. 毎回は必要ありません。自社サイトの変動幅は季節や商品構成で変わるので、大きく変わったときに測り直せば、その後のテストの判定に使えます。

Q. 注文件数が少ない店では、A/Bテストはできませんか?

A. 判定の精度が落ちるため、母数の下限を先に決めておく形になります。件数が足りないうちは、テストの数を増やすより、変更の幅が大きいパターンから順に試すほうが差を読み取れます。

Q. 前倒しが起きたかどうかは、どう確かめますか?

A. テスト期間中の週平均と、終了後4週間の週平均を並べます。割引を出した側だけが落ちていれば、テスト期間の数値に前倒し分が入っていた可能性があります。

まとめ#

A/Bテストで購入率が上がったのに売上が伸びない理由は、3つに分かれます。1つ目は、購入率を押し上げたパターンが同時に客単価を下げている場合です。判定をRPSまで広げると、この形は表に出ます。

2つ目は、出た差が変更の効果ではなく変動の内側にある場合です。同じ内容を2つに分けて配信すれば、自社サイトがどれだけ振れるかを測れます。3つ目は、割引を含むテストが後から来るはずだった購入を期間内に前倒ししている場合です。終了後の週平均まで並べると、割引を出した側だけが落ちていることがあります。

いずれも、テストが終わってから調べ直すには材料が要ります。パターンごとにutm_campaignを分け、判定の指標と期間と母数の下限を始める前に決めておけば、採用した後でも売上の側から検算できます。テストツールの中に閉じた区分は、テストを止めた時点で追えなくなります。

どの広告が売上を生んでいるか、一目でわかる

月5,000セッションまで、AIアナリストもずっと無料。クレジットカード不要。最短5分で導入。

あなたのサイト(例: yourshop.com) を分析する準備ができました

クレジットカード不要·最短5分で計測開始

参考文献#

関連記事