F2転換率やリピート率を計算する方法

新規顧客の獲得コストは既存顧客の維持よりもコストが高いことが多いため、ECや小売のビジネスでは、獲得した新規顧客から1人でも多くのリピーターを生み出したいということがあります。

そこで、こういったビジネスでは初回の購買があった新規顧客のうち、どれぐらいの顧客が2回目の購買を行ったかを計算し、どの程度の顧客をリピーターにできているのかを理解します。

このような指標のことをF2転換率と呼ぶのですが、「F」はFrequency(頻度)、「2」は購買回数を表していて、以下の計算で求めることができます。

F2転換率 = 2回目の購買の総数 / 初回の購買の総数

こちらのノートではF2転換率や、購買のリピート率を計算する方法を紹介します。

利用データ

今回は、以下のように各行が1つの製品に対する注文を表している、スーパーストアの購買履歴データを使っていきます。

F2転換率やリピート率を可視化するためのステップ

  1. 注文日でソートする
  2. 顧客ごとにデータをグループ化する
  3. 顧客ごとの同日の注文は1行のみを残す
  4. 購買回数の列をデータに追加する
  5. F2転換率やリピート率を可視化する

1. 注文日でソートする

例えばF2転換率の計算にあたっては、2回目の購買の総数(顧客数)や初回の購買の総数を集計する必要があるため、現在の注文データに、その注文が「何回目」の購買だったかの情報を付与する必要があります。

そこで、まずは上記の計算ができるように、データを古い日付から新しい日付で並ぶようにソートします。

なおデータを古い日付から新しい日付で並べる詳しい理由については、後ほど詳しく説明します。

注文日の列ヘッダーメニューから、並び替え(ソート)、昇順を選択し、実行します。

日付が古い注文から順に並び替えることができました。

2. 顧客ごとにデータをグループ化する

続いて、各注文が各顧客にとって何回目の注文であるかを特定するために、顧客ごとにデータをグループ化します。

顧客IDの列ヘッダーメニューからグループ化を選択します。

注文のデータを顧客ごとにグループ化することができました。

3. 顧客ごとの同日の注文は1行のみを残す

一番最初のステップで、日付が古い注文から順にデータをソートしているので、現在のデータは顧客ごとに注文をした順に並んでいます。

従って、顧客ごとに行番号が振られた列を追加することができれば、それが顧客ごとの「何回目」の購買かの情報になるわけです。

これが、一番最初のステップでデータを古い注文から順にソートした理由です。

ただし、このまま行番号を振ってしまうと1つ問題があります。

それは今回のデータが「各行が1つの製品に対する注文を表している」ため、同じ日に異なる2つの製品の注文があったとき、行の数は2行になり、同じ日の購買にも関わらず、そのユーザーの購買回数が増えてしまうということです。

そこで、顧客ごとに同じ日の購買は1行のみ残すことで、購買回数を正しく計算できるようにしていきます。

注文日の列ヘッダーメニューからフィルタ、重複する行を除くを選択し、実行します。

このとき、フィルタは顧客IDでグループ化した状態で実行されるため、顧客ごとに同じ日の購買は1行のみを残すことができます。

4. 購買回数の列をデータに追加する

現在のデータに行番号を追加することで、各々の注文が、各顧客にとって何回目の注文なのかを判定することができるため、ステップメニューから、その他…、行番号を追加、を選択します。

計算を作成(Mutate)ダイアログが表示され、計算エディタにrow_number()という関数が入力されていることが確認できます。

row_numberは行番号を返す関数となるため、このまま実行します。

なお、このとき、新しく列を作成にチェックを付け、任意の列名(今回は「購買回数」)を設定します。

これで、注文データに、その顧客にとって何度目の注文だったかの情報を追加することができました。

5. F2転換率やリピート率を可視化する

データの準備が整ったので、いよいよチャートでF2転換率やリピート率を可視化していきます。

まずは購買回数ごとの購買数の分布を可視化していきます。

チャート・ビューに移動して、タイプにバーを選択し、X軸に「購買回数」、Y軸に「(行の数)」を選択します。

購買回数ごとの購買数の分布を可視化することができました。

まずは購買回数が「1」の値に注目していきます。

このとき、X軸である「購買回数」の「1」は1回目の購買を表しており、Y軸の「(行の数)」は購買の総数、言い換えれば顧客数を表しています。

ここで一点注意が必要なことがあります。

それは、ここでは1回「しか」注文されていない購買の総数を集計しているのではなく、1回「以上」注文している購買の総数を集計しているということです。

また、全ての顧客は1度は必ず注文していることになるので、この値は、これまでの総顧客数と言うこともできます。

また、購買回数の「2」は2回目の購買の総数を表しています。

従って、購買回数が「2」の値を購買回数が「1」の値で割ることでF2転換率を計算することができるわけです。

そこでチャートの機能の表計算を利用して、上記の計算をしていきます。

Y軸メニューから表計算を選択します。

計算のタイプに「割合(%of)」、値の集計方法に「最初の値(first)」、グループ化に「X軸」を適用します。

これで、1回目の購買の総数を100%としたときに、各購買回数に至っている顧客の割合を計算することができました。

例えば、今回のケースでは2回目の購買を行っている顧客の割合が31.18%であることから、F2転換率が31.18%であること、言い換えれば、新規顧客を獲得すると、31.18%の人は、2回以上リピートすることが分かります。

また、3回目の購買を行っている顧客の割合を確認すると11.27%であることから、全顧客のうち、11.27%の顧客が3回以上の購買に至っていることが分かります。

なお、このような見方は、1人の顧客を獲得したときに、どの程度の顧客が2回目、3回目とリピートしていっているのかを理解をする際には効果的ですが、2回目の購買に至っている顧客のうち、どの程度の顧客が3回目の購買に至っているのかといったことが分かりづらいということがあります。

そこで、例えば、2回目の購買があった顧客数のうちどの程度の顧客が、3回目の購買に至っているのかを計算・可視化する方法を次に紹介します。

表計算を設定アイコンをクリックします。

値の集計方法を「最初の値(first)」から「前の値(lag)」に変更します。

可視化されたチャートが変化したことが分かります。

購買回数の2回目に注目すると、先程と同じ31.18%であることが分かります。

2回目の購買の総数 / 初回の購買の総数

これはいずれのチャートでも上記の計算をしているためです。

ただし購買回数の3回目に注目すると、先程とは結果が異なることが分かります。

3回目の購買の総数 / 2回目の購買の総数

これは上記の計算結果が可視化されているためです。

今回の場合、2回目の購買に至った顧客のうち、どの程度の顧客が3回目の購買に至っているかを理解することができるわけです。

最後に、これらのチャートを1度に可視化する方法を紹介します。

チャートタブの+(プラス)ボタンをクリックして、新しいチャートを作成し、一番最初に作成した購買回数ごとの購買数の分布のチャートを作成します。

同じ要領で、表計算に「最初の値に対する割合(X軸)」を適用した行の数と、「前の値に対する割合(X軸)」を適用した行の数を追加します。

続いて繰り返しに(Y軸の列ごと)を選択します。

チャートのレイアウトは、列の数やフィットから変更が可能です。

Y軸の名称を変更したければ、Y軸メニューから列名の変更が可能です。

これで、同時に3つのチャートを可視化することができました。