Что такое XYZ-анализ

XYZ-анализ делит ассортимент на три группы по стабильности спроса. В отличие от ABC-анализа, который отвечает на вопрос «сколько товар приносит», XYZ отвечает на вопрос «насколько ровно он продаётся и можно ли ему верить в прогнозе».

Практическая ценность метода — в управленческих решениях, которые из него следуют:

  • по X-товарам можно держать минимальный страховой запас и планировать закупку по формуле;
  • по Z-товарам формула не работает — либо повышенный буфер, либо заказ под клиента, либо вывод из матрицы;
  • в промо-планировании X-товары дают предсказуемый отклик, Z-товары — лотерею.

Формула: коэффициент вариации

Мера стабильности — коэффициент вариации (CV): стандартное отклонение продаж, нормированное на средний уровень продаж. Нормировка обязательна, иначе крупные по объёму товары автоматически выглядели бы «нестабильнее» мелких.

       σ
CV = ----- × 100%
       x̄

x̄ — средние продажи за период
σ — стандартное отклонение продаж по периодам
     σ = √( Σ(xᵢ − x̄)² / n )
Группа Коэффициент вариации Характер спроса Что это значит на практике
X до ~10% Стабильный, ровный Прогноз по истории надёжен, страховой запас минимален
Y ~10–25% Колеблющийся, есть тренд или сезон Прогноз возможен, но нужен буфер и регулярный пересчёт
Z выше ~25% Нерегулярный, эпизодический Прогноз по истории почти не работает, решение — вручную

Пороги 10% и 25% — отраслевой ориентир из учебников, а не константа. В категориях с высокой волатильностью (fashion, аксессуары, импульсные товары) при таких порогах группа X окажется почти пустой, и анализ потеряет смысл. Правильнее посмотреть распределение CV по своему каталогу и нарезать группы по перцентилям — так, чтобы каждая группа была рабочего размера.

Пример расчёта

Продажи четырёх SKU за 6 месяцев (шт.):

SKU М1 М2 М3 М4 М5 М6 Среднее σ CV Группа
Товар А 100 105 98 102 100 95 100.0 3.1 3.1% X
Товар Б 200 190 215 205 195 210 202.5 8.5 4.2% X
Товар В 80 120 95 140 110 75 103.3 22.7 21.9% Y
Товар Г 10 60 5 90 15 4 30.7 32.7 106.7% Z

Обратите внимание на товары А и Б: абсолютный разброс у Б выше (8.5 против 3.1), но относительно своего объёма он продаётся так же ровно. Именно поэтому классификация строится на CV, а не на сыром отклонении.

Требования к данным для корректного расчёта:

Требование Почему важно
12 периодов и больше На 3–4 точках оценка отклонения статистически неустойчива
Исключить out-of-stock Ноль из-за отсутствия товара — не падение спроса, а пробел в данных
Однородный ряд Смена упаковки, единицы измерения или объединение SKU ломают сопоставимость
Учесть сезонность Иначе предсказуемо сезонный товар попадёт в Z без всякой пользы
Отделить новинки У товара с двумя месяцами истории CV бессмыслен — это холодный старт, а не нестабильность

Матрица ABC×XYZ

Оси независимы, поэтому их совмещают в матрицу 3×3. Каждая клетка — это отдельная политика управления запасом, промо и представленностью в каталоге.

X (спрос стабилен) Y (спрос колеблется) Z (спрос нерегулярен)
A (высокий вклад) AX — фундамент бизнеса. Всегда в наличии, автозаказ, приоритет полки и главной страницы AY — важные и капризные. Повышенный страховой запас, ручной контроль перед пиками AZ — зона риска. Большая выручка при непредсказуемом спросе: срывы поставок и замороженный склад бьют больнее всего
B (средний вклад) BX — рабочая лошадка. Автоматический заказ, минимум внимания менеджера BY — основной объект ручной работы категорийного менеджера BZ — кандидаты на заказ под клиента или сокращение глубины
C (низкий вклад) CX — дешёвый в поддержании ассортиментный хвост, часто сопутствующие товары CY — держать по остаточному принципу, без закупки впрок CZ — первый кандидат на вывод из матрицы: мало приносит и невозможно спланировать

Практический вывод из матрицы: основное управленческое внимание нужно клеткам AZ и AY, а не строке A целиком. Клетка AX уже работает сама — она стабильна и её достаточно не ломать. Клетка CZ отбирает время закупки и место на складе, ничего не давая взамен, — именно с неё начинается чистка товарной матрицы.

Как XYZ меняет работу персонализации

Стабильность спроса напрямую влияет на то, какие сигналы работают в рекомендациях.

X-товары — надёжная статистическая база. По ним накоплено достаточно ровных данных, чтобы совместная статистика была устойчивой: блоки «часто покупают вместе» и рекомендации по со-встречаемости на X-ассортименте дают предсказуемое качество. Такие товары же безопасно использовать как «якорь» в блоках популярного — они не превратятся внезапно в неактуальные.

Z-товары ломают алгоритмы, основанные на популярности. Их продажи разрежены и рваны, поэтому любая метрика вида «покупали N раз за период» по ним статистически шумная: всплеск из трёх заказов алгоритм может принять за тренд. Для Z-ассортимента вес смещается в сторону признаков, не зависящих от истории продаж:

  • контентные признаки товара — категория, бренд, атрибуты, цена (content-based подход);
  • сессионные сигналы — что человек смотрит прямо сейчас;
  • принадлежность к длинному хвосту как отдельный слот в выдаче, чтобы хвост не вымывался популярным ядром.

Практическое следствие для настройки стратегий рекомендаций: XYZ-группу удобно выгружать в продуктовый фид отдельным атрибутом. Тогда её можно использовать в правилах — например, ограничивать долю Z-товаров в блоке на карточке товара или, наоборот, целенаправленно раскачивать Z-хвост в блоках «похожие товары», где ставка на популярность и так не нужна.

Чек-лист внедрения

  1. Собрать ряд — продажи по SKU минимум за 12 периодов, в штуках (не в деньгах: изменение цены исказит вариацию).
  2. Очистить данные — убрать периоды out-of-stock, исключить новинки моложе 6 периодов, схлопнуть дубли SKU.
  3. Снять сезонность — либо десезонализировать ряд, либо считать XYZ внутри сезона.
  4. Посчитать CV и посмотреть его распределение по каталогу до выбора порогов.
  5. Задать пороги — от учебных 10%/25%, но с поправкой на реальный разброс в своей категории.
  6. Наложить на ABC и разобрать девять клеток, начиная с AZ и CZ.
  7. Пересчитывать регулярно — раз в квартал для стабильных категорий, раз в месяц для fashion и товаров с коротким жизненным циклом.

Типичные ошибки:

Ошибка К чему приводит
Считать CV в деньгах, а не в штуках Инфляция и промо-цены раздувают вариацию, товар ложно уходит в Z
Не отделять новинки Половина группы Z оказывается товарами без истории, а не нестабильными
Единые пороги для всех категорий В одной категории пустая X, в другой — пустая Z
Разовый расчёт «на посмотреть» Классификация устаревает за квартал и перестаёт влиять на решения
Выводить из матрицы всё, что попало в Z В Z попадают сопутствующие и имиджевые позиции, нужные для полноты каталога