ARTICLE

RFM分析をExcelで行う手順|注文データの集計と計算例

目次

RFM分析は、最終購入からの経過日数(R)、購入回数(F)、購入金額(M)から顧客の購入傾向を整理する方法です。Excelでは、注文データを1注文1行に整え、同じ期間で顧客別に集計してから分類します。

この記事では架空の6注文を使い、関数で作った結果と元データを照合し、無料ツールへ渡す4列まで作ります。CRMやECから取り出した商品別の明細を、そのまま貼り付けて購入回数を誤るケースを防ぐ手順です。

最初に決めるのはスコアより集計ルール

IBMのRFM集計の説明でも、顧客IDで取引をまとめ、最新の取引日・取引回数・合計金額を顧客ごとの1行にします。計算前に、次の条件を固定します。

決める項目 この記事の計算例 実データでの確認点
対象期間 2026年1月1日〜9月25日、両端を含む 全顧客で同じ期間か
購入日 日付のみ。時刻は含めない 注文日・決済日・出荷日を混在させない
1回の購入 有効な注文IDを1件として数える 1注文が商品別の複数行になっていないか
購入金額 値引き・返品を反映した対象注文の金額 税・送料・返品の扱いを統一しているか
対象顧客 期間内に有効な注文が1件以上ある顧客 未購入者は別の一覧で扱う

返品の処理方法も記録します。たとえば「キャンセル・全返品の注文を除外し、一部返品は注文金額から差し引く」と決めたら、回数・日付・金額すべてにその条件を適用します。これは本記事の集計方針の例で、すべての業務に共通する会計ルールではありません。返品を返品日の別行で管理しているデータは、注文IDとの対応を整理してから使います。

商品明細を注文IDだけで重複削除すると、金額まで消してしまいます。商品ごとの金額なら注文単位で合計し、各商品行に注文総額が繰り返されているなら総額を1回だけ採用します。どちらの形式かを出力元で確認してください。

架空の6注文をExcelに置く

以下は実在の顧客を含まない説明用データです。「注文」シートのA1:D7に入力します。日付はExcelの日付値、金額は通貨記号や「円」を付けない数値にします。顧客ID・注文IDは文字列として扱います。

購入日(A列) 顧客ID(B列) 注文ID(C列) 購入金額(D列・円)
2026/01/10 C001 O001 12000
2026/03/01 C002 O002 8000
2026/06/15 C001 O003 18000
2026/08/20 C003 O004 45000
2026/09/05 C002 O005 7000
2026/09/20 C001 O006 20000

この時点で6行=6注文、購入金額の合計は110,000円です。注文IDの重複、顧客IDの空欄、文字列のままの日付、金額列の空欄があれば、先に修正します。

別の「集計」シートでH1に「開始日」、I1に「基準日」と書き、H2に 2026/01/01、I2に 2026/09/25 を日付値として入力します。A1:E1は次の見出しにします。

A列 B列 C列 D列 E列
顧客ID 最終購入日 購入回数 購入金額 R日数

A2:A4にC001、C002、C003を入力します。実データでは顧客ID列のコピーから重複を除きます。元の注文データ自体を顧客IDで重複削除しないでください。

顧客別のR・F・Mを計算する関数は?

以下はExcel 2019以降またはMicrosoft 365を想定します。例では6注文なので参照範囲を2〜7行にしています。実データでは全式の終端行を同じ行まで伸ばしてください。顧客IDは例のような英数字とし、条件式で特別な意味を持つ *・?・~ を含めません。

  1. 購入回数を数える。集計シートのC2に次の式を入れます。
=COUNTIFS(注文!$B$2:$B$7,A2,注文!$A$2:$A$7,">="&$H$2,注文!$A$2:$A$7,"<="&$I$2)

顧客ID・開始日・基準日の3条件をすべて満たす注文を数えます。COUNTIFSの公式説明では、各条件範囲の行数・列数を揃える必要があります。1注文1行なので、この件数がFになります。

  1. 最終購入日を求める。B2に次の式を入れ、表示形式を日付にします。
=IF(C2=0,"",MAXIFS(注文!$A$2:$A$7,注文!$B$2:$B$7,A2,注文!$A$2:$A$7,">="&$H$2,注文!$A$2:$A$7,"<="&$I$2))

MAXIFSは条件を満たす値の最大値を返します。日付の最大値が最新の購入日です。期間内の注文が0件なら空欄にし、日付として扱わないようにします。

  1. 購入金額を合計する。D2に次の式を入れます。
=SUMIFS(注文!$D$2:$D$7,注文!$B$2:$B$7,A2,注文!$A$2:$A$7,">="&$H$2,注文!$A$2:$A$7,"<="&$I$2)

SUMIFSで同じ3条件の金額を合計します。これがMです。Fだけ直近1年、Mだけ生涯累計といった混在を避けます。

  1. Rの日数を計算する。E2に =IF(C2=0,"",$I$2-B2) と入力し、表示形式を数値・小数点以下0桁にします。B2:E2を4行目までコピーします。

この例は日付のみのデータを前提にしています。購入日時が入っている場合は、購入日の列を別に作って =INT(元の日時セル) で日付に揃えてから使います。文字列の日時は、先にExcelの日付値へ変換します。

集計結果が正しいか、どこを照合する?

計算結果は次のとおりです。Rは2026年9月25日から最終購入日を引いた日数で、小さいほど最近購入しています。

顧客ID 最終購入日 F・購入回数 M・購入金額 R・経過日数
C001 2026/09/20 3 50,000円 5日
C002 2026/09/05 2 15,000円 20日
C003 2026/08/20 1 45,000円 36日
合計 — 6 110,000円 —

確認する順序は、①購入回数の合計が対象注文数と一致する、②購入金額の合計が対象注文の合計金額と一致する、③顧客を1人選び、最新日と回数・金額を元の注文で確認する、です。この例のC001なら12,000+18,000+20,000=50,000円、3回です。

期間外の注文を含む実データでは、元データ全体ではなく同じ期間・除外条件の注文と照合します。合計が合っていても、別顧客への付け替えは見つからないため、顧客単位の確認も必要です。

4列を無料ツールへ渡して分類する

集計が合ったら、Rの日数列ではなく、顧客ID・最終購入日・購入回数・購入金額の4列を使います。最終購入日の表示形式を yyyy-mm-dd、金額を通貨記号・桁区切りなしにし、A1:D4をコピーします。合計行や購入回数0件の顧客は含めません。

下のデータはタブ区切りです。そのままRFM分析ツールの入力欄に貼り付けても、同じ例を試せます。

顧客ID	最終購入日	購入回数	購入金額
C001	2026-09-20	3	50000
C002	2026-09-05	2	15000
C003	2026-08-20	1	45000
  1. ツールの集計開始日を 2026-01-01、基準日を 2026-09-25 にする。
  2. 上記の4列を貼り付け、初期の分類基準で実行する。
  3. C001はR5・F2・M2、C002はR5・F2・M1、C003はR4・F1・M2となることを確認する。
  4. 分布と顧客一覧を見て、必要な対象をCSVで保存する。

初期設定では、Rは30日以内が5、90日以内が4。Fは2回以上5回未満が2、1回が1。Mは30,000円以上100,000円未満が2、それ未満が1です。これはツールの仮の開始値であり、自社の優良顧客を保証する基準ではありません。購入周期・単価が異なる商品群を一緒に扱うかも確認します。

無料ツール Excelで集計した4列から顧客を分類する

顧客別の最終購入日・回数・金額を貼り付けると、購入傾向の分布と顧客一覧を確認し、CSVで保存できます。

注文の生データを集計する機能ではありません。この記事の手順で1顧客1行に整えて使います。

よくある失敗と、分類後に確認すること

失敗 起きること 修正する箇所
商品別の3行を3回の購入とする Fを過大に評価する 注文ID単位に集計する
Excelの参照範囲が途中で終わる 新しく追加した注文が漏れる すべての関数の終端行を更新する
ツールの期間だけ変える 表示期間とF・Mの中身がずれる Excelから同じ期間で再集計する
期間内1回購入を新規顧客と断定する 期間以前に買っていた顧客を誤分類する 全期間の初回購入日を別に確認する
高額購入だけで優良と断定する 返品や利益、継続状況を見落とす 注文内容や顧客との接点を確認する

RFMで分かるのは、定めた期間の購入傾向です。LTVの将来予測や、チャーンレートによる解約の実績集計とは分けて使います。Rが大きくても、購入周期が長い商品では自然な場合があります。

分類後は対象顧客を数件見て、何を案内すると役立つかを決めます。カスタマーサクセスの接点記録や問い合わせ内容も合わせれば、単に購入回数が少ない顧客と、利用に困っている顧客を区別して検討できます。毎月更新するなら、対象期間・除外条件・分類の境界を同じ記録に残し、基準を変えた月を明示してください。

よくある質問

RFM分析はExcelのどの関数で計算できますか?

顧客別の最終購入日はMAXIFS、購入回数はCOUNTIFS、購入金額はSUMIFSで集計できます。この記事はExcel 2019以降またはMicrosoft 365を想定し、1注文1行に整えたデータを使います。商品明細の行数を購入回数として数えないことが重要です。

RFM分析の集計期間は何か月にすればよいですか?

一律の正解はありません。通常の購入周期と施策の目的に合わせ、まず全顧客に同じ期間を適用します。期間を変えると購入回数と購入金額も変わるため、基準日だけを変えず元データから集計し直します。

RFMのスコアは5段階でなければいけませんか?

5段階は必須ではありません。分布や用途に応じて段階数と境界を決めます。本記事の無料ツールではR・Fを5段階、Mを3段階に分けますが、その初期値は業界標準ではなく変更可能な仮の開始値です。