← К портфолио RFM Analysis of Bank Clients preview
Ситуация
Банк накапливает транзакции клиентов, а маркетинг шлёт всем одинаковые предложения
Задача
Заменить единое предложение адресным: для каждого сегмента — своя стратегия удержания
Действия
Очистка транзакций, расчёт Recency, Frequency и Monetary, RFM-скоринг, сегментация и визуализация в Tableau
Результат
Четыре RFM-группы: малая доля high-value даёт непропорционально большую часть дохода; маркетинг перешёл к сегментированным сценариям
Стек
PythonSQLTableau
Исходники Смотреть на GitHub → Обновлено: Sep 17, 2026
Содержание
  1. Ситуация
  2. Задача
  3. Действия
  4. Результат
  5. Ограничения
  6. Документация

RFM Analysis of Bank Clients

Ситуация

Банк накапливает данные о транзакциях клиентов, но маркетинговые кампании работали «в лоб»: одинаковые предложения для всех. Задача — разделить клиентскую базу на однородные сегменты по трём измерениям — Recency (когда последняя покупка), Frequency (частота операций) и Monetary (совокупный доход) — и для каждой группы построить отдельную стратегию удержания и развития.

Задача

От меня требовалось заменить единое предложение на адресное: получить сегменты, для каждого из которых видно, что именно ему предлагать и как его удерживать.

Действия

Данные: транзакционная история клиентов банка, включая дату операции, сумму и тип транзакции.

Шаги анализа:

  1. Очистка и подготовка данных — устранены дубликаты, обработаны пропуски, отобраны релевантные типы операций.
  2. Расчёт RFM-метрик для каждого клиента:
    • Recency: дней с последней транзакции
    • Frequency: количество операций за период
    • Monetary: суммарный доход от клиента
  3. RFM-скоринг — каждому измерению присвоен балл, клиенты объединены в сегменты по сочетанию баллов.
  4. Визуализация распределения сегментов в Tableau с фильтрами по времени и продукту.

Инструменты: Python (Pandas, Scikit-learn), SQL, Tableau.

Результат

Вышли четыре группы:

  • High-value customers — недавние, частые и высокодоходные клиенты. Основной вклад в выручку.
  • Medium-value customers — умеренная активность и доход. Потенциал роста через upsell.
  • Low-value customers — редкие и низкодоходные. Неэффективно вкладывать в дорогие каналы.
  • At-risk customers — ранее активные, но давно не совершавшие покупок. Требуют реактивации.

Главное, что видно: небольшая доля high-value клиентов приносит непропорционально большую часть дохода, а at-risk сегмент тает быстрее, чем растёт приток новых. Маркетинг получил понятные персоны и перешёл от массовых рассылок к сегментированным сценариям.

Ограничения

Сегментация построена на исторической транзакционной выгрузке; карточка не раскрывает её объём и период наблюдения. RFM — правило, а не модель: границы баллов задаёт аналитик, и на другом наборе они потребуют пересмотра.

Документация

Аналитика

Данные: github.com/NikitaBoyarkin/rfm-analysis-of-bank-clients: uv run python rfm_analysis.py on data/bank_rfm_dataset_10k_fixed.csv (10,000 synthetic transactions → 1,981 active clients); segment & revenue tables read from data/rfm_output.csv (re-run)

Размер RFM-сегментов

Число клиентов в каждом RFM-сегменте по итогам анализа 10 000 транзакций банка (1981 активный клиент). Сегменты выделены по комбинации квартилей Recency/Frequency/Monetary.

0 200 400 600 800 Чемпионы — Клиенты: 83 83 Лояльные — Клиенты: 311 311 Потенциально лояльные — Клиенты: 208 208 В зоне риска — Клиенты: 232 232 Нужно внимание — Клиенты: 395 395 Спящие — Клиенты: 752 752 Чемпионы Лояльные Потенциально лояльные В зоне риска Нужно внимание Спящие Сегмент Клиенты
Выводы
  • Самый массовый сегмент — «Спящие»: 752 клиента из 1981 (37,96%), почти вдвое больше «Лояльных» (311, 15,70%).
  • «Чемпионы» — самые малочисленные: всего 83 клиента (4,19% базы).
  • Три низкоценностные группы («Спящие», «Нужно внимание», «В зоне риска») вместе охватывают 1379 клиентов — 69,6% базы.

Доля выручки по RFM-сегментам

Доля каждого сегмента в суммарной выручке клиентов. Коэффициент концентрации = доля выручки / доля клиентов: больше 1 — сегмент переоценивает выручку.

0 10 20 30 Чемпионы — Доля выручки, %: 11.16 11.16 Лояльные — Доля выручки, %: 23.03 23.03 Потенциально лояльные — Доля выручки, %: 18.37 18.37 В зоне риска — Доля выручки, %: 16.79 16.79 Нужно внимание — Доля выручки, %: 6.99 6.99 Спящие — Доля выручки, %: 23.66 23.66 Чемпионы Лояльные Потенциально лояльные В зоне риска Нужно внимание Спящие Сегмент Доля выручки, %
Выводы
  • «Чемпионы» дают 11,16% выручки при 4,19% клиентов — коэффициент концентрации 2,66, самый сильный перекос в доходах.
  • «Спящие» держат самую большую долю выручки (23,66%), но недоиндексированы: коэффициент 0,62 при доле клиентов 37,96%.
  • Четыре сегмента ниже «Чемпионов» в сумме дают 81,9% выручки базы.

Средняя монетарная ценность по сегментам

Средняя сумма транзакций клиента в сегменте. Показывает, сколько каждый сегмент в среднем приносит выручки и кому выгодно предлагать апселлы.

0 20000 40000 60000 80000 Чемпионы — Средняя ценность: 74641.22 74641.22 Лояльные — Средняя ценность: 41097.09 41097.09 Потенциально лояльные — Средняя ценность: 49029.62 49029.62 В зоне риска — Средняя ценность: 40172.47 40172.47 Нужно внимание — Средняя ценность: 9815.58 9815.58 Спящие — Средняя ценность: 17459.18 17459.18 Чемпионы Лояльные Потенциально лояльные В зоне риска Нужно внимание Спящие Сегмент Средняя монетарная ценность
Выводы
  • Средняя ценность «Чемпионов» — 74 641, в 7,6 раза выше «Нужно внимание» (9 816).
  • «Потенциально лояльные» (49 030) богаче «Лояльных» (41 097) почти на 20% при меньшей частоте покупок.
  • Средняя ценность «Спящих» — 17 459, вторая снизу, что оправдывает дешёвые win-back-письма вместо дорогих акций.

Распределение RFM-баллов

Распределение клиентов по сумме квартильных баллов RFMScore (от 3 до 12, где 12 — лучший). Балл = R_Quartile + F_Quartile + M_Quartile.

0 100 200 300 3 — Клиенты: 196 196 4 — Клиенты: 168 168 5 — Клиенты: 179 179 6 — Клиенты: 240 240 7 — Клиенты: 243 243 8 — Клиенты: 259 259 9 — Клиенты: 247 247 10 — Клиенты: 200 200 11 — Клиенты: 166 166 12 — Клиенты: 83 83 3 4 5 6 7 8 9 10 11 12 RFMScore (сумма квартилей) Клиенты
Выводы
  • Распределение почти равномерное: пик на 8 баллах — 259 клиентов (13,1% базы).
  • Хвост из 83 клиентов с максимальными 12 баллами в точности совпадает с сегментом «Чемпионы».
  • Слабейший балл 3 набрали 196 клиентов (9,9%) — ядро «Спящих».

Смотрите также

Карта связей

Проекты, записи и темы, связанные с этим проектом. Наведите на узел, чтобы увидеть название; клик — открыть.