サブスクリプションビジネスにおいて、MRRリテンション率は顧客基盤の健全性を示す重要な指標です。
この指標は、既存の顧客からのMRR(月間定期収益)がどの程度維持されているかを示すもので、解約やダウングレードによる収益の減少を把握するために使用されます。特にSaaSビジネスの事業担当者やカスタマーサクセスチーム、財務部門のリーダーにとって、この数値は事業の持続可能性を評価する上で欠かせません。
特に、新規獲得のコストが高いSaaS業界では、既存顧客の維持が収益性に大きく影響するため、継続的なモニタリングが不可欠です。
なお、MRRリテンション率は、以下のように、既存顧客から得られたMRRから、エクスパンションによる増収分の金額を取り除いた金額を前月のMRRで割ることで計算できます。
今回のはサブスクリプション型のビジネスの支払いデータを利用します。データはこちらのページからダウンロードできます。
このデータは、一行が一人の顧客の月ごとの支払い履歴を表していて、列には以下の情報があります。
今回は以下のようなテーブルを作成して、MRRリテンション率を計算していきます。
また、上記のテーブルを作成するために、今回は支払いデータに、支払い回数、エクスパンション/コントラクションの情報を2-4番目のステップで追加した状態から、MRRリテンション率を計算していきます。
なお、支払い回数の計算方法はこちらから、エクスパンションとコントラクションの計算方法はこちらから確認いただけます。
今回は、MRR、既存顧客からのMRR、エクスパンションを集計したいので、「支払い日」の列ヘッダーから「集計」を選択します。
集計のダイアログが開いたら、グループに「支払い日」を選択し、丸め処理に「月」を選択します。
MRR(月間定期収益)は、それぞれのユーザーが払った金額の月々の合計値になるため、値に、「支払い金額」を選択し、集計関数には合計値(SUM)を選択します。
続いて、列名をMRRに変更します。
続いて、既存顧客からのMRRを集計します。
既存顧客から得られるMRRは支払い回数が2回以上の顧客から得られるMRRになるため、支払い回数が2回以上の顧客の支払い金額の合計値を集計します。
値に「支払い金額」を追加し、集計関数に「条件付き合計値(SUM_IF)」を選択します。
すると、条件を指定するためのダイアログが表示されるため、列に「支払い回数」、演算子に「以上」、値に「2」と入力します。
続いて列名を「既存顧客からのMRR」に設定し適用し、実行します。
これで、既存顧客からのMRRを集計できました。
最後に値に「エクスパンション」を選択し、集計関数に合計値(SUM)を選択し、実行します。
MRRリテンション率を計算するための準備ができました。
「既存顧客のMRR」の列ヘッダーメニューから、「計算を作成」の「標準」を選択します。
計算を作成のダイアログが表示されたら、計算エディタに(既存顧客からのMRR- エクスパンション) / lag(MRR)
と入力します。
なお、lag関数は指定した列の前の行の値を取得する関数になるため、lag(MRR)
によって、前月の値、つまりは、前月のMRRを計算していることになります。
最後に、「新しく列を作成」にチェックがついていることを確認したら、列名を「MRRリテンション率」に設定して、「この列の後に作る」に「最後の列」を選択して実行します。
これで、「MRRリテンション率」を計算できました。