SQLLab
Справочник/Методы аналитики/RFM (Recency, Frequency, Monetary)
Методы аналитикиСредний

RFM (Recency, Frequency, Monetary)

Метод сегментации клиентов по трём признакам: давность последней покупки, частота покупок и сумма трат.

Формула расчёта
RFM-сегмент = (Recency-балл, Frequency-балл, Monetary-балл), обычно каждый 1–5

Объяснение

RFM делит клиентов на сегменты по трём метрикам: Recency — сколько дней прошло с последней покупки, Frequency — сколько покупок было за период, Monetary — сколько клиент потратил всего. Каждому клиенту по каждому признаку присваивается балл (например, 1–5, часто через NTILE), из трёх баллов складывается RFM-сегмент. Крайние сегменты — самые полезные для принятия решений: клиенты с высоким баллом по всем трём («champions») — кандидаты на программу лояльности; клиенты с высокой суммой трат в прошлом, но давно не покупавшие («at risk») — кандидаты на реактивационную рассылку, пока не ушли к конкурентам.

Числовой пример

SELECT
  user_id,
  NTILE(5) OVER (ORDER BY days_since_last_order) AS recency_score,
  NTILE(5) OVER (ORDER BY orders_count DESC) AS frequency_score,
  NTILE(5) OVER (ORDER BY total_spent DESC) AS monetary_score
FROM customer_stats;