Все статьи
Performance5 сентября 2026 г.11 мин

Фид для Яндекс Директа 2026: обязательные элементы, categoryId и ошибки валидации

Товарные кампании вытягивает качество фида, а не настройка кампании. Разбираю по официальной справке обязательные элементы оффера, роль categoryId, два уровня сегментации и ошибки, из-за которых офферы молча выпадают.

Обложка статьи: Фид для Яндекс Директа 2026: обязательные элементы, categoryId и ошибки валидации

Товарные кампании и смарт-баннеры вытягивает не настройка кампании, а качество файла, который в неё подаётся. Половина проблем «показов мало» и «товары не откручиваются» решается не в интерфейсе Директа, а в XML.

Ниже — обязательные элементы по официальной справке, роль categoryId, принципы сегментации и разбор ошибок, из-за которых офферы молча игнорируются.

Фид — это не выгрузка товаров. Это описание витрины, которую увидит человек. Всё, чего в нём нет, не покажется, а всё, что в нём неверно, покажется неверно.

1. Структура файла

Формат YML, в основе XML. Корневой элемент — yml_catalog, у него обязателен атрибут date в формате ГГГГ-ММ-ДД чч:мм, и он должен соответствовать реальному времени генерации файла на вашей стороне.

Внутри — элемент shop, в нём currencies и categories, и только после них список offers. Порядок здесь не косметический: если категории объявлены после офферов, часть товаров останется без категории.

Ограничения файла из требований Директа: один каталог на файл, длина URL до 2048 символов, стандартная для XML кодировка.

2. Обязательные элементы оффера

ЭлементКогда обязателенЧто будет без него
categoryIdВсегдаОффер вне сегментации, кампанию не настроить
urlВсегдаНекуда вести, оффер не работает
nameУпрощённый тип оффераОффер игнорируется
vendor и modelТип vendor.modelОффер игнорируется, объявление не формируется
currencyIdЕсли указан priceЦена без валюты — ошибка
атрибут availableЕсли фильтруете по наличиюФильтр по наличию не соберётся

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

3. categoryId: на нём держится всё управление

Технически это положительное целое число длиной до 18 символов, и каждый оффер принадлежит ровно одной категории. Практически — это единственный рычаг, которым вы управляете товарной кампанией.

Через categoryId товары разводятся по кампаниям, а по кампаниям расставляются разные цели по ДРР. Без этого весь каталог живёт одной кучей: товар с маржой 8% и товар с маржой 45% откручиваются с одной целью, и первый съедает бюджет второго.

Отсюда правило: структура категорий в фиде строится не по логике сайта, а по логике экономики. Если на сайте «Аксессуары» — одна категория, а внутри неё товары с двукратной разницей в марже, в фиде это должны быть две категории.

4. Сегментация: два уровня

УровеньПо чему делимЗачем
ПервыйcategoryIdРазная маржа — разные цели по ДРР
ВторойЦена товараДешёвые и дорогие позиции ведут себя по-разному
Третий, по желаниюНаличие и оборачиваемостьНе тратить бюджет на то, что вот-вот кончится

Второй уровень часто пропускают, а зря. В одной кампании товар за 1 500 ₽ и товар за 40 000 ₽ усредняются: система оптимизирует под общую конверсию, и дешёвый товар с высокой конверсией перетягивает на себя показы, а дорогой, который и приносит деньги, недополучает трафик.

5. Ошибки, из-за которых фид не работает

Плавающий идентификатор товара. Идентификаторы должны быть уникальными и одинаковыми в разных фидах. Если при каждой выгрузке id пересобирается заново, система видит новый товар и заново набирает по нему статистику — обучение не накапливается никогда.

Расхождение с посадочной. Цена в фиде 3 900 ₽, на сайте 4 200 ₽. Валидатор это пропустит, модерация — нет. Проверяется только руками, по десятку случайных товаров после каждой крупной правки каталога.

Нулевая цена и неправильный oldprice. Цена, равная нулю, и старая цена, которая не превышает текущую, — типовые причины отклонения оффера.

Константа в дате генерации. Атрибут date, который не меняется от выгрузки к выгрузке, — признак того, что фид собирается неправильно, и повод для проблем с актуальностью данных.

Категории после офферов. Формально файл валиден, фактически часть товаров теряет категорию, а вместе с ней и попадание в нужную кампанию.

6. Товарная кампания и смарт-баннеры: не одно и то же

Вопрос всплывает постоянно, поэтому коротко. Товарная кампания — отдельный тип кампании, который сам собирает объявления из фида и показывает их и в поиске, и в сетях. Смарт-баннеры — динамический формат внутри сетей.

Общее у них одно: оба питаются фидом. И для обоих качество файла важнее настроек кампании — в интерфейсе нельзя починить то, чего нет в XML. Как настраиваются сами кампании — в разборе товарных кампаний и смарт-баннеров, эта статья про сам файл.

7. Чек-лист перед запуском

ПроверкаКак проверить
Дата генерации реальнаяСравнить атрибут date с временем последней выгрузки
Категории объявлены до офферовОткрыть XML, посмотреть порядок блоков
Число офферов совпадает с каталогомСверить количество в фиде и в CMS
Идентификаторы стабильныСравнить две последовательные выгрузки
Цены совпадают с сайтомПроверить 10 случайных товаров вручную
Нет нулевых ценОтфильтровать price = 0
Категории отражают маржуСвериться с юнит-экономикой, а не со структурой сайта

8. Итог

Обязательный минимум в каждом оффере: categoryId и url всегда, name для упрощённого типа, vendor и model для vendor.model, currencyId при наличии цены. Категории объявляются до офферов, идентификаторы стабильны, дата генерации настоящая.

Дальше начинается управление: categoryId строится по экономике, а не по структуре сайта, и внутри категорий добавляется деление по цене. Именно на этом уровне товарная кампания перестаёт быть чёрным ящиком.

Связанные материалы: товарные кампании и смарт-баннеры, гайд по Яндекс Директу, что происходит с CPC, калькулятор ROAS.

Если фид собран, а товары не откручиваются — присылайте ссылку на файл в Telegram, посмотрю, что там молча выпадает.

Ещё по теме