top of page

RFM là gì? Phân khúc khách hàng hiệu quả cho Data Analyst

11 giờ trước
11 phút đọc

RFM (Recency, Frequency, Monetary) là phương pháp phân khúc khách hàng dựa trên ba yếu tố: thời gian mua hàng gần nhất, tần suất giao dịch và tổng giá trị chi tiêu. Đây là công cụ thiết thực giúp analyst xác định nhóm khách có giá trị cao, dự đoán hành vi mua hàng và tối ưu ngân sách marketing.


Trong thực tế, một khách hàng mua 10 lần trong tháng qua rõ ràng có giá trị khác người mua một lần cách đây 6 tháng. RFM giúp bạn lượng hoá sự khác biệt đó thành điểm số cụ thể, từ đó phân nhóm khách hàng một cách khách quan. Nhiều doanh nghiệp ecommerce và retail sử dụng RFM để thiết kế chiến dịch retention, giảm tỉ lệ churn và tăng Customer Lifetime Value.


Mục lục


Ba chỉ số Recency Frequency Monetary trong mô hình RFM Analysis

I. RFM là gì?


RFM là viết tắt của ba từ tiếng Anh: Recency (mức độ gần đây), Frequency (tần suất) và Monetary (giá trị tiền tệ). Đây là mô hình phân tích giúp analyst đánh giá và xếp hạng khách hàng dựa trên dữ liệu giao dịch thực tế [1].


Mô hình RFM xuất phát từ nguyên tắc đơn giản: khách hàng mua gần đây, mua thường xuyên và chi nhiều tiền là những người có khả năng quay lại cao nhất. Thay vì nhìn toàn bộ danh sách khách hàng như một khối đồng nhất, RFM cho phép bạn chia nhỏ thành các phân khúc có hành vi tương đồng.


Ví dụ, một cửa hàng thời trang online có 50.000 khách. Nhóm "Champions" (R=5, F=5, M=5) chỉ chiếm 5% nhưng đóng góp 40% doanh thu. Nhóm "At Risk" (R=1, F=4, M=4) từng là khách VIP nhưng đã không mua trong 6 tháng. Với insight này, team marketing thiết kế chiến dịch win-back chỉ cho nhóm At Risk, tiết kiệm ngân sách hơn gửi khuyến mãi cho toàn bộ 50.000 người.


Sơ đồ phân khúc khách hàng dựa trên điểm RFM segmentation

II. 3 chỉ số cốt lõi trong RFM Analysis


Mỗi chữ cái trong RFM đại diện cho một góc nhìn về hành vi khách hàng. Hiểu rõ ba chỉ số này giúp bạn thiết kế logic scoring phù hợp với mô hình kinh doanh.


1. Recency – Mức độ gần đây


Recency đo khoảng thời gian từ lần mua gần nhất đến hiện tại. Đơn vị thường dùng là ngày.


Công thức:Recency = Ngày phân tích – Ngày giao dịch cuối cùng


Khách hàng mua càng gần đây (Recency thấp) thì điểm R càng cao. Ví dụ, người mua hôm qua có R=1 ngày được chấm 5 điểm, người mua cách đây 180 ngày có R=180 chỉ được 1 điểm.


Tại sao Recency quan trọng? Khách hàng còn nhớ thương hiệu, trải nghiệm mua sắm và sản phẩm. Họ dễ phản hồi email marketing, dễ mua thêm sản phẩm bổ trợ (cross-sell) hơn người đã lâu không tương tác.


2. Frequency – Tần suất mua hàng


Frequency đếm tổng số lần giao dịch của khách hàng trong khoảng thời gian phân tích (thường 6 tháng hoặc 1 năm).


Công thức:Frequency = Số đơn hàng của khách trong kỳ


Khách có Frequency cao là người trung thành, đã hình thành thói quen mua sắm. Họ ít churn hơn, dễ upsell hơn và có chi phí thu hút lại (re-engagement cost) thấp.


Trong nghiên cứu so sánh giá trị thực tế và giá trị điểm RFM, Frequency được xác nhận có mối tương quan mạnh với giá trị khách hàng dài hạn [1]. Một khách mua 10 lần trong năm rõ ràng có giá trị lớn hơn người mua 1 lần, kể cả khi giá trị đơn hàng tương đương.


3. Monetary – Giá trị chi tiêu


Monetary đo tổng số tiền khách hàng đã chi trong kỳ phân tích.


Công thức:Monetary = Tổng giá trị các đơn hàng của khách


Chỉ số này phản ánh khả năng chi tiêu và đóng góp doanh thu thực tế. Khách có Monetary cao thường là target cho các chương trình loyalty, sản phẩm cao cấp hoặc dịch vụ premium.


Lưu ý: Monetary nên được phân tích kết hợp với Frequency. Một khách chi 10 triệu trong 1 đơn hàng duy nhất khác với người chi 10 triệu qua 20 đơn. Người thứ hai có Frequency cao hơn, thường ổn định và dễ dự đoán hơn.


Bảng dữ liệu mẫu phân tích RFM với ba chỉ số Recency Frequency Monetary

III. Cách tính điểm RFM và phân nhóm khách hàng


Sau khi có giá trị R, F, M cho từng khách, bước tiếp theo là chuyển đổi thành điểm số (scoring) và phân segment.


1. Phương pháp Quintile/Quartile


Cách phổ biến nhất là chia mỗi chỉ số thành 5 nhóm (quintile) hoặc 4 nhóm (quartile), xếp hạng từ 1 đến 5 (hoặc 1 đến 4).


Ví dụ với thang 5:

  • Recency: chia khách hàng thành 5 nhóm theo thời gian mua gần nhất. Nhóm có Recency nhỏ nhất (mua gần nhất) được điểm 5, nhóm Recency lớn nhất (lâu không mua) được điểm 1.

  • Frequency: nhóm có số đơn hàng nhiều nhất được 5 điểm, ít nhất được 1 điểm.

  • Monetary: nhóm chi tiêu cao nhất được 5 điểm, thấp nhất được 1 điểm.

Mỗi khách sẽ có RFM Score dạng 3 chữ số, ví dụ 555 (Champions), 311 (Lost Customers), 522 (Potential Loyalist).


2. Phân segment theo RFM Score


Sau khi có điểm, bạn gom khách vào các phân khúc. Dưới đây là 11 segment phổ biến:


  • Champions (555, 554, 545, 544): Mua gần đây, mua thường xuyên, chi nhiều. Đây là nhóm VIP.

  • Loyal Customers (543, 534, 444, 435): Mua đều đặn, đáng tin cậy.

  • Potential Loyalist (542, 533, 532, 442): Khách tốt, cần nuôi dưỡng để trở thành Loyal.

  • New Customers (551, 541, 531): Mua gần đây nhưng Frequency thấp.

  • Promising (541, 531, 521, 441): Có tiềm năng phát triển.

  • Need Attention (443, 344, 343, 333): Tần suất và giá trị trung bình, nhưng Recency giảm.

  • About to Sleep (433, 334, 333, 323): Nguy cơ churn cao.

  • At Risk (433, 424, 414, 324): Từng là khách tốt nhưng lâu không mua.

  • Cannot Lose Them (555, 544, 454, 444 với R thấp): Khách VIP nhưng đang xa.

  • Hibernating (311, 312, 221, 222): Lâu không mua, tần suất thấp.

  • Lost (111, 112, 121, 211): Có thể đã churn.


Phân segment giúp bạn thiết kế hành động cụ thể cho từng nhóm thay vì áp một chiến lược chung cho tất cả.


Ma trận phân khúc khách hàng RFM segmentation với 11 nhóm từ Champions đến Lost

IV. Ví dụ thực tế: Phân tích RFM cho Ecommerce


Giả sử bạn là analyst cho một cửa hàng online bán thời trang. Ngày phân tích: 01/10/2026. Dữ liệu giao dịch 12 tháng qua.


Bảng dữ liệu mẫu:

Customer_ID

Last_Purchase_Date

Frequency

Monetary

C001

2026-09-28

12

15,000,000

C002

2026-03-15

2

1,200,000

C003

2026-09-25

8

9,500,000

C004

2026-01-10

1

800,000


Bước 1: Tính Recency

  • C001: 01/10/2026 – 28/09/2026 = 3 ngày

  • C002: 01/10/2026 – 15/03/2026 = 200 ngày

  • C003: 3 ngày

  • C004: 265 ngày


Bước 2: Gán điểm quintile (thang 5)Giả sử sau khi chia quintile:

  • C001: R=5, F=5, M=5 → RFM Score = 555 → Champions

  • C002: R=2, F=2, M=2 → RFM Score = 222 → Hibernating

  • C003: R=5, F=4, M=4 → RFM Score = 544 → Champions

  • C004: R=1, F=1, M=1 → RFM Score = 111 → Lost


Bước 3: Hành động

  • C001, C003: Gửi email giới thiệu sản phẩm mới, mời tham gia chương trình VIP.

  • C002: Chiến dịch win-back với voucher 20%.

  • C004: Ngừng gửi email thường xuyên, chỉ gửi campaign lớn (Tết, Black Friday).


Kết quả: Team marketing tiết kiệm 40% chi phí quảng cáo bằng cách tập trung ngân sách vào nhóm Champions và At Risk, thay vì gửi đồng loạt cho toàn bộ khách hàng.


V. Ứng dụng RFM trong công việc Data Analyst


RFM không chỉ là công cụ cho marketer. Analyst sử dụng RFM trong nhiều tình huống thực tế:


1. Thiết kế dashboard theo dõi sức khoẻ khách hàng


Xây dựng dashboard trên Power BI hoặc Tableau hiển thị:

  • Phân bố khách hàng theo 11 segment

  • Xu hướng di chuyển giữa các segment (từ Champions sang At Risk)

  • Doanh thu đóng góp theo segment

  • Churn rate theo nhóm RFM


Dashboard này giúp leadership nhìn thấy ngay nhóm khách nào đang tăng trưởng, nhóm nào suy giảm, từ đó điều chỉnh chiến lược kịp thời.


2. Dự đoán Customer Lifetime Value


RFM Score tương quan mạnh với CLV. Nghiên cứu cho thấy khách hàng có điểm RFM cao thường có CLV cao hơn 3-5 lần so với nhóm điểm thấp [1]. Bạn có thể dùng RFM làm feature trong mô hình machine learning dự đoán CLV.


3. Tối ưu chiến dịch retention


Phân tích nhóm "About to Sleep" và "At Risk" để thiết kế chiến dịch giữ chân. Tính toán ROI của việc gửi voucher, email nhắc nhở hoặc chương trình loyalty cho từng segment.


4. A/B testing theo segment


Thay vì test trên toàn bộ khách hàng, bạn có thể chạy A/B test riêng cho từng nhóm RFM. Ví dụ, test hai loại voucher (10% vs free ship) chỉ trên nhóm Potential Loyalist, đo conversion rate và so sánh.


5. Báo cáo hiệu suất sản phẩm theo khách hàng


Kết hợp RFM với Product Analytics để xem sản phẩm nào được mua nhiều bởi nhóm Champions, sản phẩm nào chỉ hấp dẫn nhóm Lost. Insight này giúp team Product quyết định sản phẩm nào nên phát triển, sản phẩm nào nên khai tử.


Dashboard Power BI phân tích RFM segmentation và doanh thu theo nhóm khách hàng

VI. Triển khai RFM bằng SQL và Power BI


Dưới đây là quy trình cụ thể để tính RFM từ dữ liệu giao dịch.


1. Query SQL tính RFM


Giả sử bạn có bảng orders với các cột: customer_id, order_date, order_value.

WITH rfm_calc AS (
  SELECT 
    customer_id,
    DATEDIFF(day, MAX(order_date), '2026-10-01') AS recency,
    COUNT(DISTINCT order_id) AS frequency,
    SUM(order_value) AS monetary
  FROM orders
  WHERE order_date >= '2025-10-01' AND order_date < '2026-10-01'
  GROUP BY customer_id
),
rfm_score AS (
  SELECT 
    customer_id,
    recency,
    frequency,
    monetary,
    NTILE(5) OVER (ORDER BY recency DESC) AS r_score,
    NTILE(5) OVER (ORDER BY frequency ASC) AS f_score,
    NTILE(5) OVER (ORDER BY monetary ASC) AS m_score
  FROM rfm_calc
)
SELECT 
  customer_id,
  recency,
  frequency,
  monetary,
  r_score,
  f_score,
  m_score,
  CAST(r_score AS VARCHAR) + CAST(f_score AS VARCHAR) + CAST(m_score AS VARCHAR) AS rfm_score
FROM rfm_score;

Giải thích:

  • NTILE(5) chia khách hàng thành 5 nhóm.

  • ORDER BY recency DESC để nhóm có recency nhỏ nhất (mua gần nhất) được điểm cao nhất.

  • ORDER BY frequency ASC và monetary ASC để nhóm có frequency/monetary cao nhất được điểm cao nhất.


2. Phân segment bằng CASE WHEN


SELECT 
  *,
  CASE 
    WHEN rfm_score IN ('555','554','545','544','553') THEN 'Champions'
    WHEN rfm_score IN ('543','534','444','435','453') THEN 'Loyal Customers'
    WHEN rfm_score IN ('542','533','532','442','452') THEN 'Potential Loyalist'
    WHEN rfm_score LIKE '5__' AND rfm_score NOT IN ('555','554','545','544','553','543','542') THEN 'New Customers'
    WHEN rfm_score IN ('433','424','414','324','334') THEN 'At Risk'
    WHEN rfm_score IN ('111','112','121','211','212') THEN 'Lost'
    ELSE 'Other'
  END AS segment
FROM rfm_score;

3. Visual hoá trên Power BI


  • Import bảng kết quả SQL vào Power BI.

  • Tạo visual:

  • Pie chart: Phân bố số lượng khách theo segment.

  • Bar chart: Doanh thu (Monetary) theo segment.

  • Line chart: Xu hướng số lượng khách trong mỗi segment theo tháng.

  • Table: Top 100 khách có RFM Score cao nhất.

  • Thêm slicer theo thời gian, khu vực địa lý hoặc danh mục sản phẩm.


Power BI cho phép bạn drill-down từ segment xuống danh sách khách cụ thể, giúp team CRM liên hệ trực tiếp.


Code SQL mẫu tính toán RFM analysis với NTILE và DATEDIFF

VII. RFM so với CLV và Cohort Analysis


RFM không phải công cụ duy nhất phân tích khách hàng. So sánh với hai phương pháp khác:


1. RFM vs Customer Lifetime Value


CLV dự đoán tổng giá trị khách hàng mang lại trong suốt vòng đời. CLV phức tạp hơn, cần mô hình dự báo (thường dùng machine learning), tính churn rate, discount rate.


Khi nào dùng RFM:

  • Cần kết quả nhanh, không có đủ dữ liệu lịch sử dài.

  • Muốn phân nhóm đơn giản để chạy campaign ngay.

  • Team chưa có năng lực xây mô hình ML.


Khi nào dùng CLV:

  • Cần dự báo dài hạn (3-5 năm).

  • Có đủ dữ liệu churn, retention rate, transaction history.

  • Muốn tính toán ROI chính xác cho acquisition cost.


Trong thực tế, nhiều công ty dùng cả hai: RFM để phân segment tác nghiệp hàng tháng, CLV để định hướng chiến lược dài hạn.


2. RFM vs Cohort Analysis

Cohort Analysis nhóm khách hàng theo thời điểm bắt đầu (ví dụ tháng đầu tiên mua hàng), theo dõi retention rate theo thời gian.


Khác biệt:

  • Cohort Analysis trả lời: "Khách mua lần đầu tháng 1/2026 có bao nhiêu phần trăm quay lại tháng 2, tháng 3?"

  • RFM trả lời: "Khách nào đang ở trạng thái tốt/xấu dựa trên hành vi gần đây?"


Khi nào dùng RFM:

  • Cần hành động ngay (gửi email, voucher).

  • Muốn so sánh khách hàng ngang nhau dù tham gia vào thời điểm khác nhau.


Khi nào dùng Cohort:

  • Đánh giá hiệu quả chiến dịch marketing theo từng đợt.

  • Phân tích xu hướng retention dài hạn.

  • So sánh chất lượng khách giữa các kênh acquisition.


Công cụ tốt nhất là kết hợp cả ba: RFM để phân segment, CLV để định giá trị khách hàng, Cohort để theo dõi xu hướng.


VIII. Câu hỏi thường gặp


1. RFM phù hợp với mô hình kinh doanh nào?

RFM hoạt động tốt nhất với mô hình có giao dịch lặp lại: ecommerce, retail, FMCG, SaaS (subscription), banking. Không phù hợp với sản phẩm mua một lần trong đời (bất động sản, xe hơi cao cấp).


2. Nên dùng thang điểm mấy mức?

Thang 5 (quintile) phổ biến nhất, cân bằng giữa chi tiết và đơn giản. Thang 4 (quartile) nhanh hơn nhưng kém phân biệt. Thang 10 chi tiết hơn nhưng phức tạp, dễ overfitting.


3. Khoảng thời gian phân tích nên là bao lâu?

Tuỳ chu kỳ mua hàng. Ecommerce thời trang: 6-12 tháng. Hàng FMCG: 3-6 tháng. SaaS: 12-24 tháng. Nguyên tắc: đủ dài để có đủ dữ liệu, đủ ngắn để phản ánh hành vi hiện tại.


4. RFM có thể dùng cho B2B không?


Có, nhưng cần điều chỉnh. B2B thường có ít giao dịch hơn, giá trị đơn hàng lớn hơn. Có thể thay Frequency bằng "số sản phẩm/dịch vụ đã mua" hoặc "số lần tương tác" (meeting, email, demo).


5. Làm sao biết phân segment của mình đúng?

Validate bằng cách so sánh conversion rate, retention rate, response rate giữa các segment. Nếu nhóm Champions thực sự có conversion cao gấp 3-5 lần nhóm Lost, segment của bạn có ý nghĩa.


6. RFM có thể tự động hoá không?

Có. Xây dựng data pipeline tự động chạy SQL hàng tuần/tháng, cập nhật bảng RFM Score, đẩy vào Power BI hoặc CRM. Nhiều công ty dùng Airflow, dbt hoặc Azure Data Factory để orchestrate.


7. Có nên dùng trọng số khác nhau cho R, F, M không?

Có thể. Nếu phân tích cho thấy Recency quan trọng hơn Monetary trong ngành của bạn, có thể nhân hệ số (ví dụ R×2 + F×1 + M×1). Tuy nhiên, cần A/B test để xác nhận trọng số tối ưu.


Infographic FAQ về mô hình RFM phân khúc khách hàng

IX. Kết luận


RFM Analysis là công cụ thiết thực, dễ triển khai và mang lại giá trị nhanh cho Data Analyst. Ba chỉ số Recency, Frequency, Monetary giúp bạn hiểu sâu hành vi khách hàng, phân segment khách quan và thiết kế chiến dịch marketing hiệu quả. Nghiên cứu đã chứng minh mối tương quan mạnh giữa điểm RFM và giá trị khách hàng thực tế [1].


Trong công việc hàng ngày, RFM giúp bạn xây dựng dashboard Power BI theo dõi sức khoẻ khách hàng, tối ưu chi phí retention và dự đoán churn. Kết hợp RFM với SQL, Power BI và các phương pháp như CLV, Cohort Analysis sẽ tạo ra hệ thống phân tích toàn diện.


Hành động tiếp theo: lấy dữ liệu giao dịch 12 tháng gần nhất, chạy query SQL tính RFM, vẽ dashboard đầu tiên và chia sẻ insight với team marketing. Bạn sẽ thấy hiệu quả ngay trong campaign đầu tiên.



Lưu ý: phần dưới đây giới thiệu chương trình đào tạo của Mastering Data Analytics.


📚 Bắt đầu sự nghiệp Analytics vững vàng trong kỷ nguyên AI


Mastering Data Analytics (MDA) là một trong những đơn vị đào tạo phân tích dữ liệu tại Việt Nam, mang chương trình Agentic AI Analytics đến với người học. Sau hơn 6 năm đào tạo phân tích dữ liệu, MDA đã đồng hành cùng 3.000+ học viên và 250+ doanh nghiệp lớn như Heineken, Prudential, P&G, AEON, BIDV, Coca-Cola, Unilever.Điểm khác biệt của MDA không nằm ở những lời hứa kiểu '5 phút phân tích data với ChatGPT' hay 'vibe coding dashboard'. Chúng tôi rèn đúng bộ ba tạo nên lợi thế cạnh tranh thật sự thời AI: tư duy phân tích hệ thống, chuyên môn vững chắc và năng lực điều phối AI Agents.


Nguồn tham khảo


[2] SeqRFM: Fast RFM Analysis in Sequence Data - arXiv.org. https://arxiv.org/html/2411.05317v1

Bình luận


bottom of page