AI Нейросети в продажах на маркетплейсахкурс Михаила Жамбы · для команды
Курс / Библиотека
M2.1junior- и senior-селлеры, которые ищут ниши для долгосрочного захода на Ozon/Wildberries/Яндекс.Маркет

Растущие ниши через промпты

3 метода: CAGR, 3-month momentum, healthy growth

Цель

Получить 3 разных метода поиска растущих ниш через ChatGPT: по росту оборота, по 3-месячному импульсу и по росту выручки на продавца.

Зачем это нужно

На Ozon ~4385 категорий, на Wildberries примерно столько же. Вручную прокликивать рейтинги за полтора года, переключая месяцы - десятки часов. ChatGPT с выгрузкой из SalesFinder делает то же за 3 минуты.

Поиск через нейросеть не идеален для товаров из Китая под перепродажу: там решает конкретный товар (например, заглушка на фаркоп 50x50 мм), а не категория «фаркопы». Зато метод идеален для поиска ниши, где можно закрепиться надолго, запустить своё производство и стать лидером.

Метод работает на любом маркетплейсе - Ozon, Wildberries, Яндекс.Маркет. Система одинаковая, меняется только источник выгрузки.

Что понадобится

  • ChatGPT Plus (см. M1.1) - бесплатно промпт не отработает, нужен проект с o3.
  • Сервис аналитики с выгрузкой категорий: SalesFinder, MPStats, Moneyplace - любой. В примерах курса используется SalesFinder, но ChatGPT понимает выгрузки любого сервиса.
  • ZIP-архив выгрузок по месяцам за 1.5 года (18 файлов). Статья по созданию архива на Windows/Mac - в чате курса.

Пошаговая инструкция

Шаг 1. Сделать выгрузку за 18 месяцев

В SalesFinder (или аналоге):

  1. Рейтинги -> Выручка -> выбрать полный месяц (1-30/31 число).
  2. Построить рейтинг топ-5000 категорий.
  3. Экспорт в Excel.
  4. Повторить для каждого из последних 18 месяцев.

Каждый файл содержит: Category ID, Category Name (трёх- или четырёхуровневый путь), выручка, продажи в штуках, товаров с продажами, средний чек, продавцы с продажами, бренды.

Частая ошибка: скачать только за последний месяц. Без динамики за полтора года ChatGPT не посчитает CAGR и импульс.
Подсказка: если файлов меньше 18, ChatGPT всё равно отработает, но точность падает. В ответе он укажет сколько месяцев не хватает.

Шаг 2. Создать проект в ChatGPT

  1. Создать новый проект, назвать «Подбор ниш» (или «Подбор товаров»).
  2. Выбрать модель o3.
  3. Загрузить ZIP-архив со всеми 18 файлами. Не загружать по одному - ChatGPT запутается.

Шаг 3. Метод 1 - ранжирование по росту оборота (CAGR)

Вставить промпт №1 (см. ниже в разделе «Промпты урока»). ChatGPT:

  • сгруппирует данные по категории уровня 1;
  • посчитает CAGR = (Sales_last / Sales_first)^(12/(n-1)) - 1;
  • отфильтрует ниши, где выручка последнего месяца выше порога;
  • отсортирует по CAGR и выручке, выведет топ-100;
  • построит bubble-chart (ось X - Revenue_last, ось Y - CAGR %, размер пузыря - Revenue_last) и файл top100.xlsx.

Готово за ~3 минуты. Пузыри в правом верхнем углу - горящие ниши.

Частая ошибка: верить топу без фактчека. Категория с ростом 40 000% - обычно скачок с 5 000 до 1 100 000, где первая точка крошечная.
Подсказка: если метрика непонятна (CAGR, AGR) - спросить ChatGPT в диалоге. Он объяснит.

Шаг 4. Метод 2 - 3-месячный импульс (Momentum)

Вставить промпт №2. ChatGPT сравнивает оборот за последние 3 месяца (sum_last3) с предыдущими 3 месяцами (sum_prev3) и считает momentum_pct = (sum_last3 / sum_prev3 - 1) * 100 %.

Результат:

  • Top_10 Momentum - категории с положительным импульсом.
  • Losing Momentum - категории с отрицательным импульсом.
  • CSV с полным ранжированным списком.
  • Резюме на ~150 слов: главные победители, неожиданные всплески, стратегический вывод.

Подходит для сезонных товаров: если тренд начинается за 3 месяца до пика, вы успеваете зайти в момент. Если зашли в конце 3 месяцев - опоздали.

Подсказка: чтобы отсеять микрониши, попросить ChatGPT показать только категории с оборотом за 3 месяца больше 1 млн руб. Фильтр отсекает ~82% крошечных категорий.

Шаг 5. Метод 3 - рост выручки на продавца (Healthy growth)

Вставить промпт №3. ChatGPT считает:

  • CAGR_Sales - темп прироста выручки;
  • CAGR_Competitors - темп прироста продавцов;
  • delta = CAGR_Sales - CAGR_Competitors.

Классификация ниш:

  • Healthy: delta > 0 (выручка растёт быстрее конкуренции).
  • Neutral: -0.05 < delta < 0.
  • Over-crowded: delta <= -0.05.

Over-crowded отфильтровывается, остальные сортируются по delta. Идеально для долгосрочного захода: ниша растёт, а делить пирог приходится между тем же числом продавцов.

Частая ошибка: ChatGPT может посчитать по колонке «продавцов с продажами» вместо «товаров с продажами». Попросить явно: «используй колонку товаров с продажами».
Подсказка: задать show_plots=True - получите scatter (X = CAGR_Competitors, Y = CAGR_Sales) и bar-chart по delta.

Шаг 6. Проверить 1-2 ниши вручную (фактчек)

Взять 2-3 категории из топа, открыть в SalesFinder, посмотреть динамику с 01.2024. Совпадает ли направление роста? Падает ли цена? Растёт ли количество товаров?

Без этого шага высок риск зайти в сезонную нишу на спаде или в категорию с демпингом.

Шаг 7. Узкий анализ внутри выбранной ниши

Когда категория понравилась - скачать её выгрузку за 2 последних месяца и попросить ChatGPT выделить товары, у которых:

  • не упала выручка;
  • 20-200 отзывов;
  • оборот > 100 000 руб/мес;
  • рейтинг > 4.5.

Если товаров 0 - спросить «найди похожие с отклонением до 30% и объясни, какая метрика стала узким горлышком».

Шаг 8. Сегментация под собственное производство

Если вы производитель (например, металлоизделий), добавить к анализу: «у меня своя мастерская по металлу, мы можем делать столешки, ножки, лавочки. Оставь в анализе только категории, где могут быть товары из металла».

Промпты урока

#МетодГде взять
1Ранжирование по CAGR (рост оборота)см. ниже
23-месячный импульс (Momentum)см. ниже
3Рост выручки на продавца (Healthy growth)см. ниже

Промпт 1. Ранжирование по обороту

Промпт 1. Ранжирование по обороту
Ты - senior-аналитик e-commerce. Твоя цель - по ежемесячным отчётам Ozon
найти крупные и быстрорастущие ниши, опираясь на оборот (GMV) и CAGR.

У тебя будет 18 Excel-файлов вида ozon_sales_2024-01.xlsx .. ozon_sales_2025-
06.xlsx (имя может отличаться, но всегда содержит год-месяц). Каждый файл -
один месяц.

Требуемый результат:
- Таблица top-100 ниш (строки) со столбцами: Category, Revenue_first,
  Revenue_last, CAGR_%, Months
- Визуализация: bubble-chart (ось X - Revenue_last, ось Y - CAGR_%, размер
  пузыря - Revenue_last; если plotly недоступен - bar)
- Файл top100.xlsx с той же таблицей

Пример колонок (из выгрузки):
- Категория 1 - основная ниша (использовать как Category)
- Категория 2 - подниша (опция)
- GMV, P - оборот/выручка (обязательно)
- Заказы, шт; Товаров, шт - не нужны

Если структура иная, измени только строки CATEGORY_COL и REVENUE_COL
в блоке параметров ниже.

Формулы и логика:
- Сгруппировать данные по CATEGORY_COL (уровень-1)
- CAGR = (Sales_last / Sales_first) ** (12 / (months-1)) - 1
- Оставить ниши, где Sales_last > MIN_LATEST_REVENUE
- Отсортировать по CAGR (убыв.) и Sales_last (убыв.)
- Вывести top N (по умолчанию 100)

Промпт 2. 3-месячный импульс

Промпт 2. 3-месячный импульс
Ты - аналитик данных e-commerce. Твоя задача - находить быстрорастущие
товарные ниши на маркетплейсе Ozon, вычисляя трёхмесячный импульс продаж
для каждой категории.

Входные данные пользователя:
- 18 файлов Excel, каждый файл - один календарный месяц (формат имени
  YYYY-MM.xlsx).
- В первой вкладке каждого файла минимум такие колонки:
  - category_id
  - category_name
  - turnover_rub - суммарный оборот (GMV) руб за месяц

Шаги работы:

1. Загрузка данных:
   a. Прочитать все 18 файлов, взять первую вкладку, оставить только три
      колонки выше.
   b. Добавить колонку month, получив её из имени файла (YYYY-MM).
   c. Объединить всё в один датафрейм, отсортировать по month.

2. Расчёт скользящих сумм:
   Для каждого category_id посчитать две 3-месячные суммы:
   - sum_last3 - оборот за последние 3 месяца (t-2 .. t)
   - sum_prev3 - оборот за предыдущие 3 месяца (t-5 .. t-3)
   Для месяцев, где t < 6, импульс не вычислять.

3. Метрика импульса:
   momentum_pct = (sum_last3 / sum_prev3 - 1) * 100 %

4. Фильтрация и ранжирование:
   a. Оставить строки, где momentum_pct > 0.
   b. Отсортировать по убыванию momentum_pct.

5. Вывод:
   a. Таблица "Top_10 Momentum" с колонками: rank, category_name,
      momentum_pct, sum_last3, sum_prev3.
   b. Таблица "Losing Momentum" - категории с momentum_pct < 0.
   c. Краткое текстовое резюме (~150 слов), в котором:
      - Главные победители (рост >= 50%)
      - Неожиданные всплески (если игрушки обгоняют электронику)
      - Стратегический вывод: рост точечный или широкой волной
   d. Приложить CSV-файл с полным ранжированным списком.

6. Форматирование:
   - Числа: пробел как разделитель тысяч (12 645 346) и проценты с одним
     десятичным (54,3%).
   - Markdown-заголовки для секций.
   - Таблицы шириной < 15 колонок.

Допущения:
- Если файлов не 18, работай с тем, что есть, и укажи это в отчёте.
- Если названия колонок отличаются, один раз спроси сопоставление и продолжай.
- "Последние 3" - это три хронологически последних месяца в наборе.

Промпт 3. Рост выручки на продавца

Промпт 3. Рост выручки на продавца
Ты - аналитик e-commerce-данных маркетплейса Ozon.

Я (пользователь) загружу 18 Excel-файлов, по одному на каждый месяц за
последние 18 месяцев.

Твоя основная задача - определить товарные ниши с "здоровым" ростом, где
темп прироста выручки (GMV) опережает темп прироста числа продавцов
(Sellers Count).

1. Структура входных файлов:
   - Каждый xlsx-файл называется "YYYY-MM.xlsx".
   - Внутри один лист со столбцами: Category ID | Category Name | GMV_RUB |
     Sellers Count | ...(другие поля)

2. Алгоритм действий:
   1) Импортируй все 18 файлов (pandas.read_excel, первый лист).
   2) Собери единый датафрейм со столбцами: Month (YYYY-MM из имени файла),
      Category ID, Category Name, GMV_RUB, Sellers Count.
   3) Убедись, что для каждой Category ID есть все 18 точек.
      - Если месяцев не хватает - вставь NaN и интерполируй линейно ТОЛЬКО
        для расчёта CAGR.
      - В финальной таблице пометь такие категории символом /А в колонке
        "Missing".
   4) Рассчитай CAGR за весь период (1.5 года = 18 мес.):
      CAGR = (Value_last / Value_first) ** (1 / 1.5) - 1
      - Отдельно для GMV_RUB (CAGR_Sales) и Sellers Count (CAGR_Competitors).
   5) Вычисли A = CAGR_Sales - CAGR_Competitors.
   6) Классифицируй ниши:
      - Healthy: A > 0
      - Neutral: -0.05 < A < 0
      - Over-crowded: A <= -0.05
   7) Отфильтруй Over-crowded, отсортируй оставшиеся по убыванию A.
   8) Сформируй вывод:
      - Таблица "Top-N Healthy" (Category Name, A, CAGR_Sales,
        CAGR_Competitors, GMV_Last, Sellers_Last, Missing).
      - Краткий инсайт (1-2 предложения) для каждой категории.
      - Список Over-crowded (Category Name, A) внизу.
   9) Если параметр show_plots=True, построй:
      - scatter-plot (X = CAGR_Competitors, Y = CAGR_Sales) с линией Y=X,
        точки окрашены по A.
      - bar-chart Top-N по A.

3. Пользовательские параметры (задаются в начале диалога):
   - critical_delta: float, по умолчанию -0.05 - порог A для "Over-crowded"
   - top_n: int, по умолчанию 100 - сколько Healthy-ниш вывести
   - show_plots: bool, по умолчанию False - рисовать ли графики
   - currency: str, по умолчанию "RUB" - если нужна конвертация GMV

4. Минимальный код-скелет (дополни по алгоритму):
   import pandas as pd, numpy as np, re, glob, matplotlib.pyplot as plt
   files = glob.glob("*.xlsx")
   dfs = []
   for f in files:
       m = re.search(r"(\d{4})[-_]?(\d{2})", f)
       month = f"{m.group(1)}-{m.group(2)}"
       tmp = pd.read_excel(f, engine="openpyxl")
       tmp["Month"] = month
       dfs.append(tmp[["Month", "Category ID", "Category Name",
                       "GMV_RUB", "Sellers Count"]])
   df = pd.concat(dfs, ignore_index=True)
   # далее: проверка пропусков, интерполяция, расчёт CAGR,
   # вычисление delta, классификация и формирование вывода

5. Правила общения:
   - Все ответы - на русском.
   - Сначала проверь, что загружено ровно 18 файлов нужного формата; иначе
     запроси корректные данные.
   - Не выводи сырые датафреймы целиком - только итоговые таблицы и/или
     графики.
   - Не задавай лишних уточнений, если структура файлов соответствует описанной.
   - Будь лаконичен в коде, но подробен в текстовых выводах-инсайтах.

6. Итоговый ответ бота должен включать:
   1) Таблицу "Top-N Healthy" с поясняющими заголовками.
   2) Краткие комментарии-инсайты.
   3) Список Over-crowded.
   4) (Опционально) два графика.
   5) Подсказку, какой параметр изменить, если пользователь хочет
      расширить/сузить выборку.

Чек-лист "урок усвоен"

Что делать с результатом

Взять топ-5 растущих ниш из промпта №3 (Healthy growth) и за 2 недели провести узкий анализ внутри каждой (Шаг 7). Цель - выбрать 1-2 ниши для тестовой закупки или запуска производства в текущем квартале.

Типовые проблемы

СимптомПричинаРешение
ChatGPT просит сопоставить колонкиСтруктура Excel отличается от шаблонаПодтвердить соответствие category_name -> категория, turnover_rub -> выручка
CAGR = 40 000%Скачок с крошечной выручки (5 000 -> 1 100 000)Поднять MIN_LATEST_REVENUE до 100 000 или отсеять такие категории вручную
ChatGPT считает по «продавцов с продажами» вместо «товаров с продажами»По умолчанию берёт Sellers CountСказать явно: «используй колонку товаров с продажами»
Категории не подгружаются за часть месяцевНазвания категорий на Ozon менялись за 1.5 годаНормально, помечается символом в колонке Missing
Bubble-chart не отображаетсяPlotly недоступен в текущем окруженииChatGPT откатывается на bar-chart автоматически
Готовый список не подходит под нишуСлишком широкая или микронишевая фильтрацияПоменять top_n или critical_delta и перезапустить

Полезные ссылки

  • SalesFinder: смотреть в чате курса (скидка по ссылке в описании оригинального видео)
  • MPStats, Moneyplace - альтернативные сервисы аналитики с аналогичной выгрузкой
  • Статья «как создать ZIP-архив на Windows и Mac» - в чате курса

Дальше

-> M2.2 Автоматическая проверка товаров по чек-листу