Surrika

Как рассчитать средний интервал между покупками клиентов

Средний интервал между покупками считают по повторным выигранным сделкам одного покупателя: берут разницу в днях между соседними покупками и усредняют. Разбивка по категориям показывает, где покупатель возвращается за следующей покупкой быстрее.

Покупатели

Как считать

  1. Оставляем только выигранные сделки с известным покупателем и датой.
  2. Для каждого покупателя сортируем сделки по дате и находим дату предыдущей покупки.
  3. Считаем разницу в днях между соседними покупками.
  4. Берем интервалы, где вторая покупка попала в последние 12 месяцев от последней даты в данных.
  5. Усредняем интервалы по категории повторной покупки и округляем результат.

Расчет на выгрузках магазина

Пример посчитан на выгрузках вымышленного мебельного магазина: продажи сайта и трех маркетплейсов, реклама, сделки CRM и остатки за 2024-2025 годы.

Какой средний интервал между покупками у клиентов мебельного магазина за последние 12 месяцев и как он различается по категориям?

Средний интервал между покупками по категориям

SQL, по которому посчитано

WITH won AS (
  SELECT customer_id, date, category
  FROM deals
  WHERE status = 'Выиграна'
    AND customer_id IS NOT NULL
),
with_prev AS (
  SELECT customer_id, date, category,
         LAG(date) OVER (PARTITION BY customer_id ORDER BY date) AS prev_date
  FROM won
),
intervals AS (
  SELECT category,
         date_diff('day', prev_date, date) AS interval_days
  FROM with_prev
  WHERE prev_date IS NOT NULL
    AND date_diff('day', prev_date, date) > 0
    AND date > (SELECT max(date) FROM sales) - INTERVAL 12 MONTH
)
SELECT category,
       count(*) AS repeat_purchases,
       round(avg(interval_days), 1) AS avg_interval_days,
       round(median(interval_days), 1) AS median_interval_days
FROM intervals
GROUP BY category
ORDER BY avg_interval_days DESC

Откуда берутся цифры для расчета

Расчет строят на сделках, где у каждой покупки есть номер покупателя и дата. В работу берут только выигранные сделки, потому что проигранная сделка не стала покупкой и не создает интервал. Покупки сайта и шоурума связаны одним номером покупателя, поэтому повторные визиты одного человека складываются в цепочку. Маркетплейсы в этот расчет не попадают: там нет номера покупателя, который связывает заказы.

Как считать средний интервал между покупками

Для каждого покупателя сделки сортируют по дате и берут пары соседних покупок. Интервал одной пары равен числу дней между первой и второй покупкой. Затем интервалы усредняют, при желании отдельно по категории повторной покупки. Если у покупателя одна покупка, интервала у него нет, и в расчет он не входит.

Как читать результат

Средний интервал показывает, через сколько дней покупатель обычно возвращается за следующей покупкой. Рядом смотрите медиану: несколько редких покупок через год могут сильно поднять среднее. Разбивка по категориям помогает увидеть, где цикл повторной покупки короче, а где покупатель возвращается реже. Сравнивайте интервал по месяцам или с прошлым периодом, чтобы понять, ускоряется возврат или замедляется.

Что делать с выводом

Короткий интервал по категории подсказывает, когда уместно напомнить о покупке и какой период выбрать для коммуникации. Длинный интервал не всегда плохой: мебель покупают редко, и решение зависит от цены и срока службы. Если интервал растет, проверьте повторные продажи, сервис и ассортимент в этой категории. Для покупателей с одной покупкой считайте отдельно долю тех, кто вернулся, потому что интервала у них еще нет.

Частые ошибки

В расчет попадают проигранные сделки

Проигранная сделка не стала покупкой, и интервал по ней искажает средний. Оставляйте только выигранные сделки.

Берут только первую и последнюю покупку

Так теряются промежуточные возвраты, и средний интервал завышается. Нужны все соседние пары внутри истории покупателя.

Смешивают покупки разных каналов без номера покупателя

На маркетплейсах нет номера покупателя из сделок, поэтому интервал по ним не связать с сайтом и шоурумом. Считайте отдельно те каналы, где покупатель идентифицирован.

Вопросы

Что считают средним интервалом между покупками?

Это среднее число дней между двумя соседними выигранными покупками одного покупателя за выбранный период.

Почему покупатели с одной покупкой не попали в расчет?

У них нет второй покупки, поэтому нет и интервала. Их можно отдельно посчитать как долю вернувшихся.

Чем среднее отличается от медианы интервала?

Среднее складывает все интервалы и делит на их число, медиана делит интервалы пополам. Если есть редкие очень длинные паузы, медиана показывает типичный интервал точнее.

Можно ли посчитать интервал по маркетплейсам?

В сделках есть покупатели сайта и шоурума, а на маркетплейсах нет связанного номера покупателя. Поэтому общий интервал по всем каналам не построить.

За какой период считать интервал?

Берите последние 12 месяцев от последней даты в данных, чтобы старые покупки не искажали текущую частоту. Для сезонной мебели дополнительно сравните с прошлым годом.

Посчитайте это на своих выгрузках

Бросьте выгрузки на доску Surrika и задайте вопрос обычными словами. Ответ придет графиком, а под ним будет SQL, по которому он посчитан.

14 дней бесплатно, карта не нужна.

По теме

Все задачи