Разбор
ИИ-агент переписывает 200 карточек товаров на WB и Ozon: кейс +34% к конверсии
200 карточек товаров за 4 часа вместо 2 недель: как Python + Claude API + Wildberries Content API автоматически переписали заголовки, описания и характеристики. Реальный кейс продавца детских игрушек: +34% конверсия, +280 000 руб. выручки за месяц.
Среди 200 карточек детских игрушек одного продавца на Wildberries не было ни одной, написанной самостоятельно. Все — скопированы от поставщика. Заголовок типа «Набор конструктор детский игровой обучающий развивающий». Описание — три строчки из каталога оптовика. Характеристики заполнены наполовину.
Конверсия из показа в корзину: 1,8%.
У большинства продавцов на WB и Ozon карточки написаны ровно так же. Копипаст от поставщика, никакой семантики, заголовок набит словами «качественный», «удобный» и «оригинальный». Алгоритм маркетплейса не понимает, по каким запросам показывать товар, и прячет его на 15-ю страницу.
Хорошая новость: это чинится автоматически. За несколько часов и несколько долларов.
Почему карточки от поставщика не работают
Поставщик пишет описание один раз — для каталога. Его задача объяснить оптовику что за товар. Задача карточки на маркетплейсе другая: попасть в поисковую выдачу по нужным запросам и убедить человека кликнуть «В корзину».
Это разные тексты с разными задачами.
Алгоритм WB ранжирует товары по нескольким факторам: релевантность запросу (насколько название и описание совпадают с тем, что ищет покупатель), конверсия карточки, рейтинг и отзывы. Первый фактор целиком зависит от текста. Если в заголовке нет слова «конструктор Lego-совместимый 6 лет», то по этому запросу товар просто не найдут.
Реальный замер: по запросу «конструктор для детей 4–6 лет» в топ-10 Wildberries попадают карточки, у которых:
- заголовок 55–65 символов с главным запросом в первых 4 словах
- описание от 1800 символов с тематическими словами (развитие мелкой моторики, совместимость, количество деталей, материал)
- заполнены все 15+ характеристик
- в поисковых запросах прописано 8–12 фраз
У карточки от поставщика обычно: заголовок 28 символов, описание 200 символов, характеристик 4 штуки.
Схема: как работает агент
Весь процесс состоит из четырёх шагов. Никакой магии, чистая автоматизация.
WB/Ozon API → список артикулов → полные данные каждой карточки (название, описание, характеристики)
По главному запросу — топ-20 конкурентов. Claude выделяет паттерны заголовков, структуру описаний, набор характеристик
Для каждой карточки: новый заголовок 60 символов, описание 2000 символов с LSI, 12+ характеристик, 10 поисковых запросов
WB Content API PUT /cards → обновление всех карточек пакетом. Индексация за 24–72 часа
Самое трудоёмкое здесь — написать промпт и настроить структуру данных. Сам прогон 200 карточек через Claude API занимает минут 40: API-лимиты, небольшие паузы между запросами.
Код: Python + Wildberries Content API + Claude
Вот рабочий скелет скрипта. Не игрушечный демо-пример, а то, что реально запускалось.
import anthropic
import requests
import json
import time
WB_API_KEY = "your_wb_api_key"
ANTHROPIC_API_KEY = "your_anthropic_key"
client = anthropic.Anthropic(api_key=ANTHROPIC_API_KEY)
SYSTEM_PROMPT = """Ты эксперт по оптимизации карточек товаров на Wildberries.
Правила:
- Заголовок: 55-60 символов, главный поисковый запрос в первых 4 словах
- Описание: 1800-2000 символов, LSI-фразы, выгоды для покупателя
- Поисковые запросы: 10 фраз, разной длины и частоты
- Запрещено: символы-спам, несоответствие характеристикам, упоминание конкурентов
Отвечай строго в JSON."""
def get_wb_cards(vendor_codes):
url = "https://content-api.wildberries.ru/content/v2/get/cards/list"
headers = {"Authorization": WB_API_KEY}
payload = {
"settings": {"cursor": {"limit": 100}, "filter": {"withPhoto": -1}},
"vendorCodes": vendor_codes
}
r = requests.post(url, headers=headers, json=payload)
return r.json().get("cards", [])
def rewrite_card(card, competitors_context):
title = card.get("title", "")
desc = card.get("description", "")
chars = json.dumps(card.get("characteristics", []), ensure_ascii=False)
cat = card.get("category", "")
prompt = (
"Вот карточка товара для переписывания:\n"
f"Название: {title}\nОписание: {desc}\nХарактеристики: {chars}\n\n"
f"Паттерны из топ-20 конкурентов по запросу {cat!r}:\n{competitors_context}\n\n"
"Верни JSON с полями: title, description, searchQueries (массив 10 строк)."
)
response = client.messages.create(
model="claude-sonnet-4-6",
max_tokens=1024,
system=SYSTEM_PROMPT,
messages=[{"role": "user", "content": prompt}]
)
return json.loads(response.content[0].text)
def update_wb_card(card_id, new_data):
url = "https://content-api.wildberries.ru/content/v2/cards/update"
headers = {"Authorization": WB_API_KEY, "Content-Type": "application/json"}
payload = [{"nmID": card_id, **new_data}]
r = requests.post(url, headers=headers, json=payload)
return r.status_code == 200
# Основной цикл
vendor_codes = ["123456", "789012"] # ваши артикулы
cards = get_wb_cards(vendor_codes)
competitors_ctx = "Заголовки 55-60 символов с запросом в начале, описания 1800+ символов..."
for card in cards:
try:
rewritten = rewrite_card(card, competitors_ctx)
success = update_wb_card(card["nmID"], rewritten)
status = "OK" if success else "FAIL"
print(f"Card {card['nmID']}: {status}")
time.sleep(0.5) # WB rate limit
except Exception as e:
print(f"Error {card['nmID']}: {e}")
Пара вещей, которые в реальном запуске потребуют доработки: обработка ошибок API (WB иногда возвращает 429), батч-режим вместо поодиночного обновления (PUT /cards принимает массив до 300 карточек), и логирование — без него непонятно что прошло, а что упало.
Для Ozon структура та же, но endpoint другой: POST /v1/product/attributes/update, поле для названия — name, для описания — description. В их документации Ozon Seller API всё расписано.
Что именно улучшает агент: разбор по полям
Четыре поля дают 90% эффекта. Остальные характеристики — обязательны для заполнения, но конверсию двигают меньше.
Заголовок (title). 55–65 символов. Главный запрос — в первых 4 словах, без «качественный», «удобный», «оригинальный». Структура: [тип товара] [основной признак] [возраст/объём/размер] [материал/особенность]. Пример: «Конструктор для детей 5–8 лет, 320 деталей, совместим с Lego».
Описание (description). До 2000 символов. Первый абзац — выгоды для покупателя (что ребёнок получит, почему это интересно). Второй — технические детали. Третий — условия использования, безопасность. LSI-фразы (развитие логики, мелкая моторика, совместно со взрослыми) вшиваются естественно.
Характеристики. Нужно заполнить все доступные поля категории. Это прямо влияет на фильтрацию: если не указан возраст, товар не покажут при фильтре «4–6 лет». Claude заполняет характеристики из имеющихся данных плюс дополняет логически.
Поисковые запросы. 8–12 фраз. Смесь высокочастотных (конструктор детский), среднечастотных (конструктор для детей 5 лет) и длиннохвостых (конструктор совместимый с лего 300 деталей). Длиннохвостые дают меньше трафика, но конверсия там выше — запрос точнее совпадает с намерением.
Есть вопрос по теме?
Пришлю чеклист запуска товара и разберу стратегию продвижения
Таблица до и после: три реальные карточки
Заголовок
Описание
Заголовок
Характеристики
Поисковые запросы
Интерактивная демонстрация: как агент переписывает заголовок
Введите любой плохой заголовок карточки — покажу что с ним сделает агент по правилам Wildberries.
Как Claude переписывает заголовок
Введите ваш текущий заголовок — увидите логику переработки
Результаты кейса: продавец детских игрушек
200 карточек. Категория детские игрушки и конструкторы. Процесс занял 4 часа: час на написание промптов и тест на 5 карточках, час на запуск полного прогона через API, два часа на ручную проверку критичных позиций и загрузку.
Что измеряли через месяц после обновления:
показ → корзина
(топ-20 запросов)
характеристик
Рост выручки на 280 000 рублей за месяц — это результат сочетания: рост позиций + рост конверсии + достаточный трафик категории. При низком трафике те же 34% к конверсии дали бы меньше в абсолюте. Категория детских игрушек на WB — высокотрафиковая, поэтому числа такие.
Как не попасть под фильтры маркетплейсов
Это реально больное место при автоматической перезаписи. Claude соблюдает правила, если их прописать в system prompt, но надо знать что прописывать.
На Wildberries запрещено: вставлять в название слова «скидка», «акция», «%», «бесплатно». Использовать символы-разделители (;;; или ||| как спам). Писать имена конкурентов и их товарные знаки. Указывать характеристики, которые не соответствуют товару (модерация периодически проверяет).
На Ozon запрещено: в названии — спецсимволы подряд, ложные утверждения о ценах и скидках. В описании — контакты (телефоны, ссылки на сайты). Характеристики — нельзя заполнять случайными значениями лишь бы было.
Ещё один риск: массовое обновление карточек за короткий период иногда вызывает временное снижение позиций — алгоритм «переиндексирует» товар. Это норма и проходит за 3–5 дней. Лучше запускать обновление не всем пакетом сразу, а батчами по 50–70 карточек с паузой между батчами.
Оцени свои карточки: готовы ли они к автоматизации
Диагностика карточек
5 критериев — поймёшь где теряешь конверсию прямо сейчас
Что делать прямо сейчас
Если у тебя больше 30 карточек на маркетплейсе — автоматизация оправдана. Если меньше 30 — быстрее будет сделать вручную, но промпт из этой статьи всё равно пригодится как чеклист.
Минимальный старт: возьми 5 худших карточек по конверсии, прогони через ChatGPT или Claude с промптом из статьи (без API, просто вручную через интерфейс), обнови их — и через 2 недели будет понятно, стоит ли автоматизировать остальное.
Результаты появятся не на следующий день. Индексация WB занимает 24–72 часа, позиции стабилизируются через 5–7 дней, статистику по конверсии стоит смотреть через 3 недели минимум.
Есть вопрос по теме?
Пришлю чеклист запуска товара и разберу стратегию продвижения
Источники
AI-агенты · Персональная карта
4 часа потратил — не работает?
Покажу где ты пошёл не туда и как сделать правильно за 2 недели
Получить разбор бесплатно →AI-агенты · 10 мест
Ты работаешь до полуночи — AI-агент будет работать вместо тебя
Покажу какой агент закроет твою главную операционную боль
Узнать свой маршрут →Есть вопрос по теме?
Разберу вашу посадочную страницу и укажу где теряются клиенты
Источники
Читайте также
Часто задаваемые вопросы
- Сколько стоит переписать 200 карточек через Claude API?
- При использовании claude-sonnet-4-6 стоимость обработки 200 карточек составит примерно 3–5 долларов (токены input + output). Это сопоставимо со стоимостью одного часа работы копирайтера, который за то же время физически не успеет обработать больше 5–10 позиций.
- Можно ли использовать этот подход для любых категорий товаров на Wildberries?
- Да, подход работает для любых категорий. Однако структура промпта меняется в зависимости от категории: для электроники приоритет на технические характеристики, для одежды — на посадку и состав, для игрушек — на возраст, развивающую ценность, безопасность. Промпт нужно настроить под категорию один раз.
- Как агент анализирует карточки конкурентов в топе?
- Скрипт получает список артикулов из топ-20 выдачи по целевому запросу через Wildberries Search API, скачивает их карточки, затем Claude получает эти карточки как контекст и выделяет паттерны: длину заголовка, структуру описания, набор характеристик, которые встречаются в топе. Это занимает 2–3 минуты на категорию.
- Что запрещено делать при автоматическом обновлении карточек на маркетплейсах?
- На Wildberries нельзя вставлять в заголовок слова-триггеры конкурентов, писать характеристики, которые не соответствуют товару, и добавлять поисковые запросы в поле описания более 1000 символов. На Ozon запрещены спам-символы в названии (;;; или многоточие подряд) и ложные утверждения о скидках. Клод умеет соблюдать эти правила, если прописать их в system prompt.
- За сколько времени видны результаты после обновления карточек?
- На Wildberries индексация обновлённой карточки занимает от 24 до 72 часов. Изменение позиций в поиске видно через 3–5 дней. Полноценную статистику по конверсии (из показа в добавление в корзину) стоит смотреть через 2–3 недели, когда наберётся достаточно трафика для сравнения.
- Работает ли автоматическая перезапись карточек на Ozon по той же схеме?
- Да, но Ozon Seller API отличается от Wildberries Content API по структуре. У Ozon для обновления товаров используется метод /v1/product/attributes/update, поля называются иначе. Принцип тот же: скачать через API → передать в Claude → получить обновлённые поля → загрузить обратно. Пример кода для Ozon в статье ниже.
Канал «Лёха Маркетолог»
Практика без воды: кейсы, инсайты, разборы. 1–2 поста в неделю.
Пока без комментариев. Будьте первым.