Большинство проблем с фидом не выглядят как проблемы с фидом. Они выглядят как необъяснимое отклонение запроса в Google Merchant Center, кампания Advantage+, которая тратит свой бюджет на одну черную футболку, или товарное объявление, которое отправляет покупателя, ищущего обувь 42-го размера, на страницу, где остались только 38-е размеры.
В основе почти всего этого лежит одно и то же: варианты.
Вариант — это любая версия продукта, отличающаяся одним видимым, доступным для покупки параметром — размером, цветом, материалом, вместимостью, отделкой. В розничной торговле они являются обычным явлением, а в фидах — необычайно сложной задачей, поскольку каждый канал моделирует их по-своему, и потому что ошибки в их настройке приводят к незаметным последствиям. Ничего не ломается. Ваши объявления просто незаметно показывают низкую эффективность, а диагноз скрывается на четыре уровня ниже, в файле данных, который никто не открывает.
В этом руководстве рассматривается вся тема: что на самом деле считается вариантом, как работает item_group_id и где его неправильно используют, каждый атрибут, определяющий вариант, с указанием его реальных ограничений, рабочие примеры фидов в форматах XML, CSV и JSON, как Google, Meta, TikTok, Pinterest, Amazon и региональные торговые площадки ожидают структурирования вариантов, а также диагностическая таблица для наиболее часто встречающихся ошибок.
Текст длинный, потому что тема обширная. Используйте оглавление для перехода к нужным разделам.
1. Что такое вариант на самом деле?
Вариант — это приобретаемая версия продукта, которая отличается от своих аналогов как минимум по одному параметру, который покупатель может выбрать, оставаясь при этом тем же самым продуктом.
Последний пункт выполняет большую работу. Синяя футболка размера M и черная футболка размера L — это один и тот же товар. Синяя футболка и синяя толстовка — нет, даже если они одной марки и из одной и той же ткани.
Стандартная модель, используемая в большинстве каналов, — это модель «родитель/потомок» :
- родителя Это концептуальный продукт — «свитер с круглым вырезом из шерсти мериноса». Обычно его нельзя купить отдельно.
- дети Это варианты — каждый со своим артикулом, уровнем запасов, а иногда и с собственной ценой и изображением.
В товарном фиде это почти всегда выражается в плоском виде : каждый вариант представляет собой отдельную строку или <товар>, а общий ключ группировки связывает их между собой. Вложенности нет. Свитер 4 цветов и 5 размеров — это 20 строк, каждая из которых имеет один и тот же идентификатор группы.
Что такое не вариант
Именно здесь возникают проблемы с обработкой данных еще до того, как будет записана хотя бы одна строка XML.
| Не вариант | Почему | Что использовать вместо этого |
|---|---|---|
| Мультиупаковка — упаковка из 6 бутылок против одной | Разное количество одинаковых единиц, не выбранный атрибут | атрибут multipack (Google) |
| Связки — фотоаппарат + объектив + сумка | Отличительный, пригодный для продажи составной элемент | атрибут is_bundle; отдельный продукт |
| Сопутствующие продукты — подходящий топ и юбка | Различные товары, которые хорошо сочетаются друг с другом | Разделите товары; воспользуйтесь рекомендациями. |
| Восстановленные против новых | Состояние, а не вариация | атрибут условия |
| Списки разных розничных продавцов | Один и тот же товар, другой продавец. | Отдельные аккаунты/ленты |
| Индивидуализация — выгравированное имя | Изготавливается на заказ, не входит в стандартный ассортимент. | Обычно один товар; примечание в описании. |
Группировка любого из этих элементов под общим item_group_id приводит к созданию группы, члены которой не взаимозаменяемы, что сбивает с толку селектор вариантов на целевой странице и на некоторых каналах вызывает отклонение запроса из-за несоответствия.
2. Решение, определяющее всё.
Прежде чем писать логику для формирования фидов, ответьте на один вопрос для каждого типа товаров, которые вы продаете:
Когда клиент выбирает другой вариант, он попадает на другую страницу — или на ту же самую страницу, но в другом штате?
Это практический тест, и он напрямую связан с тем, как следует структурировать ленту новостей.
Вариант А — отдельные URL-адреса для каждого варианта. Для каждого цвета создана своя страница товара (/merino-sweater-navy, /merino-sweater-charcoal). Отправляйте каждый вариант как отдельную строку со своей собственной ссылкой. Это наиболее удобная настройка, обеспечивающая наилучшую релевантность рекламы, и именно её предпочитают каналы.
Вариант Б — один URL, вариант выбран на странице. Все находится по адресу /merino-sweater, а покупатель выбирает цвет и размер с помощью селектора. Вы по-прежнему можете отправлять все варианты, но следует добавить параметр прямой ссылки, чтобы объявление попадало на нужный предварительно выбранный вариант:
https://example.com/merino-sweater?colour=navy&size=mБез этого параметра покупатель, кликнувший на рекламу темно-синего цвета среднего размера, по умолчанию увидит темно-серый цвет маленького размера. Это несоответствие является одним из самых серьезных скрытых факторов, снижающих конверсию в контекстной рекламе, и в Google оно также может привести к отклонению запроса "Несоответствие значения (сканирование страницы)" , поскольку поисковый робот видит страницу, видимый цвет которой не соответствует указанному цвету.
Вариант C — варианты, которые не стоит разделять. Некоторые варианты не оказывают достаточного влияния на решение о покупке, чтобы оправдать отдельные объявления — например, длина кабеля зарядного устройства. В этом случае вы можете намеренно отправить один репрезентативный вариант. В разделе 7 рассматривается, когда это уместно.
Атрибуты, определяющие варианты, и описательные атрибуты
Каждый атрибут в вашей ленте попадает в одну из двух категорий, и путаница между ними часто приводит к некорректному формированию групп.
Характеристики , определяющие вариант, должны различаться у разных членов группы. Это те параметры, которые выбирает покупатель: цвет, размер, материал, узор, а также специфические для продукта параметры, такие как вместимость или отделка.
Атрибуты, являющиеся константами группы , должны быть одинаковыми для всех элементов: бренд, пол, возрастная группа, название группы товаров, категория товаров Google. Если две строки имеют одинаковый item_group_id, но разные значения пола, значит, вы либо неправильно сгруппировали товары, либо неправильно их пометили.
Атрибуты , специфичные для каждой строки, но не определяющие вариант, различаются для каждой строки без указания варианта: id, price, availability, gtin, image_link, link. Два варианта могут иметь разные цены — размер 3XL часто стоит дороже — и это не означает, что цена является их отличительной чертой.
3. item_group_id: основа
item_group_id — это общий ключ, который указывает каналу: «Эти строки относятся к одному и тому же товару». Все остальное, что касается обработки вариантов, зависит от правильности его работы.
Спецификация
| Свойства | Мета | TikTok | |
|---|---|---|---|
| имя поля | item_group_id | item_group_id | item_group_id |
| Максимальная длина | 50 | 100 | 150 |
| Допустимые символы | Unicode; рекомендуется ASCII — буквенно-цифровые символы, подчеркивания, тире. | строка | строка |
| Чувствительность к регистру | Регистронезависимый (ABC123 = abc123) | Чувствительный к регистру | Чувствительный к регистру |
| Необходимые? | Обязательно для бесплатных объявлений, а также для товарных объявлений в Бразилии, Франции, Германии, Японии, Великобритании и США — при предоставлении вариантов товара. | Необходимо для группировки вариантов. | Необходимо для группировки вариантов. |
| Повторяющееся поле | Нет — одно значение на единицу товара. | Нет | Нет |
Поскольку Google обрабатывает значения без учета регистра, а Meta и TikTok — нет, следует стандартизировать использование строчных (или заглавных) букв везде. Каталог, в котором одновременно присутствуют SWTR-001 и swtr-001, будет корректно группироваться в Google и разделяться на два товара в Meta.
Выбор значения
Наилучшим вариантом item_group_id является родительский SKU, который уже есть в вашей ERP-системе или PIM-системе. Он существует, стабилен и уникален.
Хорошо:
SWTR-MERINO-CREW
12345
parent-8891Плохо, и почему:
| Значение | Проблема |
|---|---|
| Свитер с круглым вырезом из мериносовой шерсти | Пробелы и смешанный регистр; превышение лимитов при длинных заголовках; изменяется при переименовании продукта отделом маркетинга. |
| свитер | Не уникальное решение — объединяет весь ваш ассортимент свитеров в одну группу. |
| SWTR-MERINO-CREW-NAVY-M | Включает варианты измерений, поэтому каждая строка получает уникальное значение, и группировка не происходит. |
| При каждом экспорте номер строки или хеш генерируются заново. | Изменения между экспортами; каналы теряют групповую непрерывность и обучаются заново с нуля. |
Последний пункт заслуживает особого внимания. item_group_id должен оставаться стабильным с течением времени. Каналы накапливают историю эффективности по отношению к группе. Если ваш экспорт генерирует идентификаторы заново, вы сбрасываете эту историю при каждой синхронизации, и никакая оптимизация ставок это не компенсирует.
Три правила
- Все участники группы имеют одинаковый item_group_id.
- Каждый участник имеет уникальный идентификатор. Наличие повторяющегося идентификатора в любом месте ленты приводит к тому, что последующая строка незаметно удаляется.
- Каждый член группы отличается как минимум одним определяющим признаком. Две строки с одинаковым идентификатором группы. и Изделия одинакового цвета и размера являются дубликатами, а не вариантами.
Соглашение, удовлетворяющее всем трём требованиям:
item_group_id: SWTR-MERINO-CREW
id: SWTR-MERINO-CREW-NAV-M
id: SWTR-MERINO-CREW-NAV-L
id: SWTR-MERINO-CREW-CHR-MЧитаемый, поддающийся отладке, полученный на основе уже имеющихся у вас данных.
item_group_title
Более новый атрибут Google, необязательный, но рекомендуемый при отправке item_group_id. Он содержит название родительского продукта — максимум 150 символов — и должен быть одинаковым для всех вариантов в группе.
XML
<g:item_group_id>SWTR-MERINO-CREW</g:item_group_id>
<g:item_group_title>Merino Crew Neck Sweater</g:item_group_title>
<title>Merino Crew Neck Sweater — Navy, Medium</title>Обратите внимание на закономерность: заголовок зависит от варианта, а item_group_title — нет. Отправка одной и той же строки в обоих случаях приводит к неэффективному использованию сигнала.
вариант_опции
Также относительно новая разработка от Google: структурированный способ указания того, какие свойства определяют вариацию, вместо того, чтобы позволять каналу определять это автоматически. Он принимает до 30 пар «имя/значение» (каждый под-атрибут до 250 символов, всего 5,000 символов).
XML
<g:variant_option>
<g:name>Colour</g:name>
<g:value>Navy</g:value>
</g:variant_option>
<g:variant_option>
<g:name>Size</g:name>
<g:value>M</g:value>
</g:variant_option>Это особенно полезно для товаров, параметры которых не охватываются стандартными атрибутами одежды — объём памяти, уровень процессора, мощность, количество рабочих станций. Вместо того чтобы принудительно указывать размер "256 ГБ", вы указываете его корректно.
4. Подробное описание атрибутов, определяющих варианты.
цвете
Наиболее регламентированный атрибут в спецификации и тот, который чаще всего отклоняется.
| Свойства | Значение |
|---|---|
| Максимальная длина (Google) | Всего 100 символов, по 40 на каждый цвет. |
| Максимальная длина (Meta / TikTok) | 200 |
| Несколько цветов | Разделите косой чертой /, сначала основной цвет |
| необходимые | Для одежды в странах, перечисленных выше; для всех бесплатных объявлений об одежде и аксессуарах. |
Не принимаются:
- Цифры — Цвет 42, RAL 5013
- Шестнадцатеричные коды — #001F5B
- Отдельные буквы — N означает темно-синий
- Ссылки на изображение — см. фото
- Буквенно-цифровые или соединенные слова — Navy1, NavyBlue (напишите Navy Blue)
Работа с названиями цветов в маркетинге. Модные бренды редко называют цвета «темно-синим». Они называют их «Полуночная регата». Каналу нужен цвет, который покупатель будет искать; вашему бренду нужно собственное название на странице.
Работоспособный компромисс:
color: Navy
description: ...available in Midnight Regatta (navy)...Сопоставьте маркетинговые названия со стандартными названиями в фиде и убедитесь, что название бренда отображается на целевой странице и в описании. Не используйте цвет в качестве маркетингового названия и не надейтесь на удачу — это ухудшит результаты поиска по запросам, связанным с цветом, которые являются одними из самых распространенных запросов в сфере одежды.
Многоцветные товары:
color: Navy/White/GreyСначала основной цвет. Google воспринимает первое значение как доминирующий цвет.
размер
| Свойства | Значение |
|---|---|
| Максимальная длина (Google) | 100 |
| Максимальная длина (Meta / TikTok) | 200 |
| необходимые | Одежда и обувь в перечисленных странах; бесплатные объявления. |
| Товары одного размера | один_размер, ОС или ОСФА |
Главное правило: будьте достаточно конкретны, чтобы быть однозначными, и используйте единообразие во всем каталоге. M подходит, если каждый продукт использует M. Однако, если в фиде смешиваются M, Medium, med и M/L для одного и того же понятия, это приведет к фрагментации групп вариантов и сделает сегментацию по размеру невозможной.
Для товаров, для которых одного параметра недостаточно, включите в значение все отличительные параметры:
size: 32/34 (waist/inseam)
size: 15.5/34 (neck/sleeve)
size: 9.5 Wide (shoe width)
size: 200x140cm (rugs, bedding)size_type и size_system
Необязательные, относящиеся только к одежде и редко используемые — оба этих критерия существенно улучшают результаты поиска для покупателей, использующих их в своих запросах.
size_type — до 2 значений из списка: regular, petite, maternity, big, tall, plus.
size_system — один из следующих вариантов: США, Великобритания, ЕС, Германия, Франция, Япония, Китай, Италия, Бразилия, Мексика, Австралия. Если этот параметр опущен, канал использует систему целевой страны, что является причиной специфической и дорогостоящей ошибки: турецкий ритейлер, продающий товары в Германию с использованием европейской системы размеров, но без указания size_system, может столкнуться с тем, что размеры будут интерпретированы по неправильной шкале.
XML
<g:size>10</g:size>
<g:size_system>UK</g:size_system>
<g:size_type>regular</g:size_type>материала
Максимум 200 символов в Google. Сначала основной материал, затем до двух дополнительных материалов, разделённых косой чертой /.
material: Cotton
material: Leather/Suede
material: Merino Wool/Nylon/ElastaneУказание материала обязательно только в том случае, если оно позволяет отличить ваши варианты — например, сумка, продающаяся из кожи и холста. В остальных случаях оно необязательно, но его стоит указать; материал — распространенный критерий поиска.
шаблон
Максимум 100 символов. Свободный текст с описанием принта или рисунка: полосатый, в горошек, пейсли, цветочный, ёлочка. Правило то же — текст обязателен, если меняется именно рисунок.
возрастная группа и пол
Оба параметра являются константами группы . Каждый вариант в группе должен иметь одинаковое значение.
age_group: новорожденный, младенец, малыш, ребенок, взрослый — одно значение для каждого товара.
Пол: мужской, женский, унисекс.
Если одежда действительно предлагается в мужском и женском вариантах, это две отдельные группы товаров , а не одна группа со смешанным гендерным составом. Различаются фасоны, размеры, и покупатель выбирает между товарами, а не между вариантами.
Справочная таблица
| Атрибут | ограничение Google | Должен отличаться | Необходимо совпадение по всей группе. |
|---|---|---|---|
| item_group_id | 50 символов | - | ✅ |
| item_group_title | 150 символов | - | ✅ |
| id | 50 символов | ✅ (всегда уникальный) | - |
| название | 150 символов | Рекомендованные | - |
| цвете | 100 символов (40 на каждый цвет) | Если ось вариации | - |
| размер | 100 символов | Если ось вариации | - |
| тип_размера | 2 XNUMX значений | По желанию | - |
| размер_системы | перечислимый | - | Обычно ✅ |
| материала | 200 символов | Если ось вариации | - |
| шаблон | 100 символов | Если ось вариации | - |
| пол | перечислимый | - | ✅ |
| возрастная группа | перечислимый | - | ✅ |
| по всему | 70 символов | - | ✅ |
| google_product_category | - | - | ✅ |
| цена | - | Может отличаться | - |
| свободных мест | перечислимый | Может отличаться | - |
5. Реальные примеры кормления
XML (Google RSS 2.0)
Два варианта шестивариантной группы. Обратите внимание, что меняется, а что остается неизменным.
XML
<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:g="http://base.google.com/ns/1.0">
<channel>
<title>Example Store — Product Feed</title>
<link>https://example.com</link>
<item>
<g:id>SWTR-MERINO-CREW-NAV-M</g:id>
<g:item_group_id>SWTR-MERINO-CREW</g:item_group_id>
<g:item_group_title>Merino Crew Neck Sweater</g:item_group_title>
<title>Merino Crew Neck Sweater — Navy, Medium</title>
<description>Fine-gauge 100% merino wool crew neck. Ribbed cuffs and hem, regular fit. Machine washable on wool cycle.</description>
<link>https://example.com/merino-crew-sweater?colour=navy&size=m</link>
<g:image_link>https://cdn.example.com/swtr-merino-navy-1.jpg</g:image_link>
<g:additional_image_link>https://cdn.example.com/swtr-merino-navy-2.jpg</g:additional_image_link>
<g:availability>in_stock</g:availability>
<g:price>89.00 EUR</g:price>
<g:brand>Example</g:brand>
<g:gtin>5012345678900</g:gtin>
<g:mpn>SW-MC-NAV-M</g:mpn>
<g:condition>new</g:condition>
<g:google_product_category>1604</g:google_product_category>
<g:color>Navy</g:color>
<g:size>M</g:size>
<g:size_system>EU</g:size_system>
<g:size_type>regular</g:size_type>
<g:material>Merino Wool</g:material>
<g:gender>male</g:gender>
<g:age_group>adult</g:age_group>
<g:custom_label_0>core</g:custom_label_0>
<g:custom_label_1>full-size-run</g:custom_label_1>
</item>
<item>
<g:id>SWTR-MERINO-CREW-CHR-L</g:id>
<g:item_group_id>SWTR-MERINO-CREW</g:item_group_id>
<g:item_group_title>Merino Crew Neck Sweater</g:item_group_title>
<title>Merino Crew Neck Sweater — Charcoal, Large</title>
<description>Fine-gauge 100% merino wool crew neck. Ribbed cuffs and hem, regular fit. Machine washable on wool cycle.</description>
<link>https://example.com/merino-crew-sweater?colour=charcoal&size=l</link>
<g:image_link>https://cdn.example.com/swtr-merino-charcoal-1.jpg</g:image_link>
<g:availability>out_of_stock</g:availability>
<g:price>89.00 EUR</g:price>
<g:brand>Example</g:brand>
<g:gtin>5012345678931</g:gtin>
<g:mpn>SW-MC-CHR-L</g:mpn>
<g:condition>new</g:condition>
<g:google_product_category>1604</g:google_product_category>
<g:color>Charcoal</g:color>
<g:size>L</g:size>
<g:size_system>EU</g:size_system>
<g:size_type>regular</g:size_type>
<g:material>Merino Wool</g:material>
<g:gender>male</g:gender>
<g:age_group>adult</g:age_group>
<g:custom_label_0>core</g:custom_label_0>
<g:custom_label_1>broken-size</g:custom_label_1>
</item>
</channel>
</rss>Стоит отметить четыре момента:
- item_group_id и item_group_title идентичны.; id и title не совпадают.
- ссылка содержит параметры глубокой ссылки Таким образом, объявление попадает в правильное предварительно выбранное состояние. Символ & экранируется как & — это обязательное требование в XML и частая причина ошибок синтаксического анализа.
- image_link является специфичным для варианта. Оба ряда синих флагов указывают на фотографию синего флага. Отправка одного основного изображения для всех цветов — вторая по распространенности ошибка после отсутствия идентификаторов групп.
- Строка "Нет в наличии" помечена биркой. с помощью custom_label_1, поэтому его можно исключить или снизить ставку, не удаляя его из фида.
CSV/TSV
Те же данные, но в сглаженном виде. Строка заголовка плюс два варианта:
CSV
id,item_group_id,item_group_title,title,description,link,image_link,availability,price,brand,gtin,condition,google_product_category,color,size,size_system,material,gender,age_group,custom_label_0
SWTR-MERINO-CREW-NAV-M,SWTR-MERINO-CREW,Merino Crew Neck Sweater,"Merino Crew Neck Sweater — Navy, Medium","Fine-gauge 100% merino wool crew neck.",https://example.com/merino-crew-sweater?colour=navy&size=m,https://cdn.example.com/swtr-merino-navy-1.jpg,in_stock,89.00 EUR,Example,5012345678900,new,1604,Navy,M,EU,Merino Wool,male,adult,core
SWTR-MERINO-CREW-CHR-L,SWTR-MERINO-CREW,Merino Crew Neck Sweater,"Merino Crew Neck Sweater — Charcoal, Large","Fine-gauge 100% merino wool crew neck.",https://example.com/merino-crew-sweater?colour=charcoal&size=l,https://cdn.example.com/swtr-merino-charcoal-1.jpg,out_of_stock,89.00 EUR,Example,5012345678931,new,1604,Charcoal,L,EU,Merino Wool,male,adult,coreВ реальных условиях чаще всего возникают ошибки при работе с CSV-файлами, поскольку запятые в заголовках и описаниях необходимо заключать в кавычки, а кавычки внутри полей в кавычках — экранировать. Если ваши заголовки содержат запятые — а заголовки товаров с указанием цвета и размера почти всегда их содержат — используйте вместо них TSV. Табуляция практически никогда не появляется в данных о товарах, и целый класс ошибок парсинга исчезает.
JSON
Для приема данных через API:
JSON
{
"products": [
{
"id": "SWTR-MERINO-CREW-NAV-M",
"item_group_id": "SWTR-MERINO-CREW",
"item_group_title": "Merino Crew Neck Sweater",
"title": "Merino Crew Neck Sweater — Navy, Medium",
"link": "https://example.com/merino-crew-sweater?colour=navy&size=m",
"image_link": "https://cdn.example.com/swtr-merino-navy-1.jpg",
"availability": "in_stock",
"price": { "value": "89.00", "currency": "EUR" },
"brand": "Example",
"gtin": "5012345678900",
"condition": "new",
"google_product_category": "1604",
"variant_attributes": {
"color": "Navy",
"size": "M",
"size_system": "EU",
"material": "Merino Wool"
},
"gender": "male",
"age_group": "adult"
}
]
}Полный размерный ряд
Шесть вариантов — два цвета × три размера — с видимым идентификационным шаблоном:
| id | item_group_id | цвете | размер | свободных мест |
|---|---|---|---|---|
| SWTR-MC-NAV-S | SWTR-MERINO-CREW | военно-морской флот | S | в наличии |
| SWTR-MC-NAV-M | SWTR-MERINO-CREW | военно-морской флот | M | в наличии |
| SWTR-MC-NAV-L | SWTR-MERINO-CREW | военно-морской флот | L | в наличии |
| SWTR-MC-CHR-S | SWTR-MERINO-CREW | Угольный | S | распродано |
| SWTR-MC-CHR-M | SWTR-MERINO-CREW | Угольный | M | в наличии |
| SWTR-MC-CHR-L | SWTR-MERINO-CREW | Угольный | L | распродано |
В трёх размерах древесного угля остался только один. В разделе 9 рассматривается, что с этим делать.
6. По каналам
Концепция универсальна. Реализация — нет. Вот как каждый крупный туристический центр ожидает различных вариантов, и в чём заключаются различия.
Google Shopping / Торговый центр
Наиболее регламентированная и эталонная реализация, с которой заимствуют идеи большинство других каналов.
- item_group_id — это обязательный для бесплатных объявлений, а также для товарных объявлений в Бразилии, Франции, Германии, Японии, Великобритании и США, при условии предоставления вариантов.
- Необходимо заполнить атрибуты, определяющие варианты товара: цвет и размер обязательны для одежды, продаваемой на этих рынках.
- Пол и возрастная группа обязательны для одежды и должны быть одинаковыми для всей группы.
- На целевой странице должно быть наглядно указано соответствие значениям вариантов, указанных в запросе, иначе вы рискуете столкнуться с проблемой. Несоответствие значений (сканирование страницы) неодобрение.
- Каждый вариант конкурирует в аукционе независимо. Google выбирает, какой элемент группы отобразить по данному запросу, поэтому неполная группа означает более слабый пул кандидатов.
- Размер изображения (image_link) для одежды должен быть не менее 500×500 пикселей — это требование является обязательным с самого начала. 31 января 2027Аудит стоит провести сейчас, а не в спешке.
Практическое замечание: Merchant Center формирует отчеты на уровне вариантов (идентификаторов), а не на уровне групп. Для корректной оценки товара необходимо самостоятельно агрегировать данные по item_group_id — это гораздо проще, если идентификатор группы является корректным и стабильным.
Мета (Facebook и Instagram)
В Meta используется одно и то же имя поля, но с разными ограничениями и существенно отличающейся моделью отображения.
- item_group_id позволяет до 100 и с учетом регистра.
- цвет и размер позволяют до 200.
- Значения доступности используются пробелы, а не подчеркивания: в наличии, а не в наличии. Это единственное различие приводит к сбоям в работе мета-лент чаще, чем любое другое, особенно при прямом использовании ленты Google.
- В магазинах и на поверхностях с подробным описанием товара правильно сгруппированный набор отображается следующим образом: один продукт с селектором вариантова не несколько практически идентичных объявлений.
- В рекламных объявлениях каталога Advantage+ группировка позволяет избежать показа пользователю шести вариантов одного и того же свитера в одной карусели — несгруппированный каталог приводит к заметно повторяющимся объявлениям и пустой трате показов.
- Формирование отчетов на уровне вариантов в Commerce Manager зависит от правильной группировки.
Практическое замечание: не используйте Meta для перехода на вашу ленту Google без изменений. Как минимум, преобразуйте доступные данные и проверьте ограничения по количеству символов. Большинство платформ для работы с лентами — включая Feedance — обрабатывают это как преобразование на уровне канала, поэтому исходные данные остаются неизменными.
TikTok
- item_group_id позволяет до 150.
- sku_id — это уникальный идентификатор для каждого варианта товара; каждая строка с вариантом должна иметь отдельное значение.
- Цвет и размер позволяют разместить до 200 символов.
- Заголовок допускает до 255 символов; описание — до 10 000; ожидается наличие google_product_category.
- TikTok — это канал с самыми строгими правилами. изображения, специфичные для вариантаКарточки товаров отображают селектор вариантов, и варианты, использующие одно и то же стандартное изображение, показывают заметно худшие результаты. Если вы сэкономили на одном этапе обработки изображений, не экономьте на этом.
- В точности следует модели Google; item_group_id группирует варианты.
- Pinterest отображает варианты товаров в рамках одного пина с возможностью выбора дополнительных опций.
- Качество изображения и вертикальное соотношение сторон имеют непропорционально большое значение — Pinterest — это платформа для визуального поиска, и различные изображения, которые не отличаются друг от друга, просто не сохраняются.
Amazon
Amazon не использует item_group_id, и предположение об обратном приводит к большим затратам времени и усилий.
Amazon использует явную модель взаимоотношений родитель/потомок :
- A родительский ASIN Создается как объявление, не предполагающее совершения покупки.
- Каждый дочерний ASIN Ссылки на родительский элемент осуществляются через поля parent_sku / parent_child.
- A вариативная тема Необходимо указать параметры — SizeColor, Size, Color, SizeName-ColorName и так далее, в зависимости от категории.
- Тема оформления должна соответствовать конкретной категории; одно и то же название темы может быть доступно не везде.
Если вы экспортируете данные в Google и Amazon из одного источника, рассматривайте это как настоящее преобразование, а не как переименование поля. Ваш слой фида должен сформировать родительский элемент, назначить тему и сопоставить с ним дочерние элементы.
Региональные торговые площадки и системы сравнения
Турецкие и другие каналы стран Ближнего Востока и Северной Африки имеют свои собственные правила, и зачастую именно они определяют, будет ли каталог работать или нет на этих рынках.
- Trendyol Используется собственная модель "родитель/потомок" с обязательным набором атрибутов, специфичных для каждой категории. Цвет и размер представляют собой отдельные структурированные поля, а списки обязательных атрибутов различаются в зависимости от категории.
- Акакче и жмот Это системы сравнения цен. Обычно они ожидают одну строку для каждого приобретаемого товара, а повторяющиеся, почти идентичные строки, как правило, фильтруются — поэтому отправка полной партии товара без дифференцированных данных может снизить, а не повысить прозрачность.
- Hepsiburada и N11 Каждый определяет свои собственные ключи группировки вариантов и необходимые атрибуты.
Именно здесь стандартные инструменты для работы с глобальными фидами чаще всего оказываются неэффективными, и именно здесь неправильно сопоставленный атрибут незаметно удаляет целую категорию с торговой площадки.
Сравнение
| Мета | TikTok | Amazon | |||
|---|---|---|---|---|---|
| Ключ группировки | item_group_id | item_group_id | item_group_id | item_group_id | ASIN родительского |
| Максимальная длина | 50 | 100 | 150 | 50 | н / |
| Деликатный случай | Нет | Да | Да | Нет | н / |
| Синтаксис доступности | в наличии | в наличии | в наличии | в наличии | Количество |
| Варианты изображений | Рекомендованные | Рекомендованные | критический | критический | необходимые |
| Необходима чётко выраженная тема. | Нет | Нет | Нет | Нет | Да |
| Отчетность на уровне вариантов | Да | Да | Да | Ограниченный | Да |
7. Раскол или крах?
По умолчанию рекомендуется отправлять все варианты товара, но это не всегда верно. Главный вопрос в том, меняет ли вариант то, чего хочет покупатель.
Отправляйте все варианты, когда…
- Разница заключается в решении о покупке. Одежда, обувь, всё, где неправильный размер не является основанием для продажи.
- Ассортимент продукции существенно различается в зависимости от варианта. Реклама товара, единственным доступным вариантом которого является размер 3XL, — это пустая трата средств.
- Цена зависит от варианта. Отображение цены в 89 евро, когда выбранный вариант стоит 119 евро, приводит к несоответствию цен и недовольству покупателя.
- Поисковый запрос определяется по варианту. Люди ищут "синий свитер из мериносовой шерсти, размер M". Вы не сможете занять высокие позиции в поисковой выдаче по этому запросу, не отправив информацию о товаре.
При необходимости можно свести все варианты к одному наиболее репрезентативному, если…
- Каталог очень большой и в основном однородный. Розничный продавец строительных материалов с 200 000 наименований товаров, 60% из которых имеют незначительные вариации длины, мало выиграет от полного расширения и понесет убытки из-за обработки данных и сложности рекламных кампаний.
- Канал наказывает пользователей за публикации, близкие по тематике. Несколько систем сравнения отфильтровывают повторяющиеся строки; полный список размеров может снизить наглядность результатов.
- Изменения не влияют на цену, изображение или наличие товара. Если все двенадцать вариантов идентичны по всем коммерчески значимым параметрам, то двенадцать строк создают шум, а не сигнал.
При сворачивании выбирайте представительский вариант целенаправленно: самый продаваемый вариант, имеющийся в наличии , а не первый ряд в алфавитном порядке. Именно здесь данные о производительности занимают важное место в ленте — GA4 или данные платформы могут автоматически выбирать представительский вариант, вместо того чтобы полагаться на порядок сортировки.
Срединный путь
Раскол по оси, определяющей принятие решения; коллапс по той, которая не определяет.
Для обуви это обычно означает одну строку на каждый цвет, свернутые по размерам — цвет является осью поиска, размер — это проверка посадки, которая происходит на странице. Для товара, где объем производства определяет цену, разделите строку по объему производства и сверните по цвету.
8. 12 наиболее распространенных вариантов ошибок
| # | Симптом | Вызывать | фиксированный |
|---|---|---|---|
| 1 | Варианты представлены как отдельные, не связанные между собой товары. | item_group_id отсутствует или является уникальным для каждой строки | Укажите в поле родительский артикул (SKU); убедитесь, что он повторяется во всей группе. |
| 2 | Некоторые варианты полностью отсутствуют на канале. | Повторяющиеся значения идентификаторов — последующие строки незаметно удаляются. | Обеспечить уникальность при экспорте; добавить проверку на дубликаты. |
| 3 | "Несоответствие значений (сканирование страницы)" - неодобрение | На целевой странице отображается цвет/размер/цена, отличающиеся от указанных. | Добавьте параметры для прямых ссылок; убедитесь, что страница отображает выбранное состояние на стороне сервера. |
| 4 | Во всех вариантах показано одно и то же фото. | Изображение одного героя image_link используется повторно | Сопоставьте изображения, специфичные для конкретного варианта; используйте основное изображение только в том случае, если изображение варианта отсутствует. |
| 5 | При клике на объявление отображаются товары, которых нет в наличии. | Доступность не синхронизирована для каждого варианта. | Увеличьте частоту обновлений; исключите товары, которых нет в наличии, из активных кампаний. |
| 6 | цвет отклонен | Шестнадцатеричный код, цифра, отдельная буква или соединенное слово. | Сопоставьте названия цветов в простом формате; разделяйте несколько цветов символом /. |
| 7 | Фильтры по размеру не работают; запросы по размеру не соответствуют действительности. | Несоответствие значений размеров в каталоге (M / Medium / med) | Нормализация с применением таблицы соответствия на уровне подачи. |
| 8 | Разделение групп наблюдается на Meta, но не в Google. | Несоответствие регистра в item_group_id | Принудительно применить один и тот же случай ко всей области |
| 9 | Meta отклоняет весь фид. | Параметр in_stock используется там, где Meta ожидает наличие товара на складе. | Доступность преобразования для каждого канала |
| 10 | Группа отклонена из-за несоответствия характеристик. | Пол или возрастная группа различаются внутри группы. | Эти параметры являются общими для всех групп; мужские и женские размеры подразделяются на отдельные категории. |
| 11 | История производительности сбрасывается при каждой синхронизации. | item_group_id генерируется заново при каждом экспорте | Получение производных данных происходит из стабильного исходного поля, никогда не из порядка строк или хеша. |
| 12 | XML-лента не удается обработать. | Неэкранированные символы в URL-адресах глубоких ссылок | Экранировать символом &; проверить XML перед публикацией |
Ошибки 1, 2, 4 и 11 составляют подавляющее большинство того, что мы видим в реальных аудитах. Ни одна из них не является сложной; все они незаметны, пока кто-то не начнет их искать.
9. Несоответствие размеров и состояние запасов.
« Несоответствие размеров» — это товар, который формально существует в продаже, но практически не подлежит реализации: свитер, доступный только в размерах XS и 3XL, или обувь, у которой осталось всего два размера из девяти.
Это важнее, чем кажется. Когда покупатель кликает на рекламу товара и обнаруживает, что его размера нет в наличии, вы платите за клик, который не привел к конверсии, и тратите на это репутацию бренда. В больших масштабах товары, не соответствующие размеру, могут поглощать значительную часть бюджета, практически не принося никакой прибыли.
Обнаружение этого
Вычислить для каждого item_group_id:
size_availability_ratio = in_stock_variants / total_variantsЗатем действуйте, исходя из пороговых значений. Рабочей отправной точки:
| Соотношение | Интерпретация | Экшн |
|---|---|---|
| > 0.7 | Здоровый | Обычно рекламируйте |
| 0.4 – 0.7 | разжижение | Снизьте ставки; следите |
| 0.2 – 0.4 | Сломанный | Исключить из процесса поиска потенциальных клиентов; только для ретаргетинга. |
| <0.2 | Фактически все распродано. | Исключить полностью |
Учитывайте спрос , а не просто количество. Уменьшение размеров XXS и XXL имеет гораздо меньшее значение, чем уменьшение размеров M и L, которые обычно составляют основную часть объёма продаж. Соотношение, учитывающее все размеры одинаково, будет недостаточно эффективно реагировать на уменьшение объёмов продаж основных размеров.
Действуя на основе этого
Наиболее чистая реализация заключается в том, чтобы пометить условие в фиде, а не удалять продукт:
XML
<g:custom_label_1>broken-size</g:custom_label_1>Добавление тегов вместо удаления сохраняет историю товара в канале и позволяет мгновенно активировать его повторно при поступлении на склад. Удаление и повторное добавление сбрасывают данные обучения.
Ещё два улучшения, которые стоит реализовать:
- Обратная связь с мерчандайзингом. Повторяющиеся обращения клиентов из списка "некачественная реклама" — это сигнал к покупке, а не просто проблема рекламы.
- Проверяйте каждый раз при синхронизации. Товар постоянно меняется, поэтому и ценник должен меняться вместе с ним. Статичный список товаров нестандартных размеров хуже, чем его отсутствие, потому что он исключает из рассмотрения товары, которые уже были пополнены.
10. Использование вариантов для сегментации кампании
После правильной структуризации вариантов данные превращаются в слой сегментации — пожалуй, наиболее эффективное применение очищенного потока вариантов.
Google предоставляет пять пользовательских полей custom_label (0–4). Они принимают произвольные значения и существуют исключительно для вашей собственной логики кампании. Идеальным вариантом ввода являются данные вариантов.
Работоспособная схема
| этикетка | Размеры | Примеры значений |
|---|---|---|
| custom_label_0 | маржинальный уровень | высокая маржа, стандарт, распродажа |
| custom_label_1 | Состояние здоровья скота | полный размерный ряд, истончение, неполный размер |
| custom_label_2 | Уровень производительности | бестселлер, стабильный, с длинным хвостом |
| custom_label_3 | Сезонность | ss26, aw25, core, carryover |
| custom_label_4 | Ценовой диапазон | до 50, 50-100, 100-200, старше 200 |
При наличии этих элементов логика проведения кампании становится предельно простой:
- Повышение ставок на бестселлер + полноформатный тираж + высокая маржа
- Исключите некондиционную продукцию из процесса поиска полезных ископаемых.
- Придайте системе таможенного оформления собственную стратегию с помощью агрессивной системы tROAS.
- Изолируйте SS26 при запуске сезона.
Performance Max и Advantage+
Оба процесса в значительной степени автоматизированы, что делает сегментацию на уровне фида более важной, а не менее важной. Вы больше не контролируете назначение ставок на уровне ключевых слов, поэтому фид становится вашим основным инструментом управления расходами.
В Performance Max пользовательские метки определяют структуру групп активов и групп объявлений . Разделение единой универсальной группы активов на группы по марже или состоянию акций — один из немногих оставшихся структурных рычагов, и он полностью зависит от того, что метки заполняются на основе реальных данных.
В рекламных объявлениях каталога Advantage+ правильная группировка предотвращает заполнение карусели шестью разными оттенками одного и того же свитера, а определения наборов товаров, основанные на атрибутах вариантов, позволяют разделить рекламные объявления для привлечения новых клиентов и для ретаргетинга.
Обогащение меток данными о производительности
Статические метки теряют актуальность. Утверждение о том, что бестселлер был присужден в прошлом сезоне, в этом сезоне является дезинформацией.
Более совершенная реализация пересчитывает метки на основе данных о текущей производительности — выручки GA4, коэффициента конверсии, количества просмотров — при каждой синхронизации фида. Продукт, продажи которого прекращаются, автоматически выбывает из списка бестселлеров; продукт, продажи которого начинаются, попадает в него. Это ключевой аспект практического применения обогащения фида, и именно в этом разница между метками, которые направляют бюджет, и метками, которые просто описывают данные за последний квартал.
11. Измерение производительности вариантов
Именно на уровне вариантов данных большинство отчетов незаметно дают сбой.
Проблема агрегации. Merchant Center и Ads сообщают данные на уровне идентификаторов. Свитер в 20 вариантах отображается в виде 20 строк, каждая из которых содержит лишь часть объема, причем ни один из вариантов не является значимым. Любой вывод, сделанный на основе одной строки с вариантами, вероятно, является шумом.
Всегда проводите анализ на двух уровнях:
- Уровень группы (item_group_id) — делает ли это ПРОДУКТЫ Работает ли это? Совокупные расходы, конверсии и доходы по всем участникам.
- Уровень варианта (id) — который кредита Как это работает? Какие цвета хорошо продаются, какие размеры заканчиваются первыми, а какие сочетания никогда не пользуются спросом?
Во втором разделе собраны интересные результаты. Они отвечают на вопросы, волнующие специалистов по мерчандайзингу: действительно ли темно-синий цвет продается в три раза лучше, чем темно-серый? Действительно ли варианты размера L продаются лучше, потому что они всегда есть в наличии? Снижает ли один цвет средний показатель продаж всей группы товаров?
Показатели, которые стоит отслеживать по каждой группе:
| Метрика | Почему |
|---|---|
| Коэффициент доступности размеров | Ведущий индикатор неэффективных расходов |
| Варианты покрытия канала | Разница между отправленной заявкой и фактически одобренной — именно в этом разрыве скрываются проблемы. |
| Доля показов по вариантам | Раскрывает, какие варианты канал действительно предпочитает. |
| Коэффициент конверсии по цвету | Сигналы мерчандайзинга и закупок |
| Уровень неодобрения по группам | Выявляет системные ошибки атрибутов на ранней стадии |
Несколько слов об атрибуции. Покупатель часто видит рекламу одного варианта и покупает другой — кликает на темно-синий, покупает темно-серый. Поэтому расчет рентабельности инвестиций на уровне вариантов, если воспринимать его буквально, приведет к неправильной атрибуции. Оценивайте товары на уровне группы; используйте данные о вариантах для понимания поведения, а не для принятия решений о ставках на основе недостаточной выборки.
12. Контрольный список перед запуском
Выполните эту команду перед публикацией варианта кода и после любых структурных изменений.
Структура:
- Каждый вариант имеет уникальный идентификатор.
- Все участники группы имеют одинаковый item_group_id.
- Поле item_group_id формируется из стабильного исходного поля и не изменяется при экспорте.
- В параметре item_group_id используется единый регистр символов во всей ленте.
- Каждый член группы отличается как минимум одним определяющим вариант признаком.
- item_group_title присутствует и одинаков во всей группе.
Атрибуты
- В названии цвета используются простые обозначения — без шестнадцатеричных кодов, цифр или отдельных букв.
- Несколько цветов разделены косой чертой (/), основной цвет — первым.
- Значения размеров нормализованы по всему каталогу.
- Параметр size_system указывается там, где вы продаете товары разных размеров.
- Пол и возрастная группа идентичны внутри каждой группы.
- Материал и узор заполняются там, где они определяют вариативность.
Ссылки и изображения
- Ссылка каждого варианта ведет к правильному предварительно выбранному состоянию.
- Символ & экранируется как & в XML
- image_link — это значение, зависящее от варианта, а не общее изображение для заголовка.
- Изображения соответствуют минимальным размерам для каждого канала.
Преобразования каналов
- Синтаксис доступности корректируется для каждого канала (in_stock против in stock)
- Ограничения по количеству символов соблюдаются для каждого канала.
- Экспорт Amazon формирует родительские объявления и объявляет допустимую тему вариантов.
- Наборы атрибутов регионального рынка, сопоставленные по категориям.
Операции
- Частота обновления соответствует фактической скорости движения цены акций.
- Функция обнаружения несоответствия размера выполняется при каждой синхронизации.
- Перед экспортом выполняется проверка на наличие дубликатов идентификаторов.
- Перед публикацией лента данных проверяется на соответствие формату XML/CSV.
- Система оповещения настроена на случай внезапного снижения количества товара на складе.
13. Вопросы-Ответы
Обязательно ли предоставлять каждый вариант товара? Не всегда, но обычно да, для одежды и обуви, где размер и цвет являются определяющими факторами при покупке. Для очень больших однородных каталогов или каналов, которые фильтруют почти идентичные товары, предоставление одного хорошо подобранного репрезентативного варианта для каждой группы может быть более эффективным. Выбирайте репрезентативный вариант, исходя из показателей продаж и наличия товара на складе, а не по алфавиту.
Что произойдет, если я не укажу item_group_id? Каждый вариант будет рассматриваться как несвязанный товар. Вы потеряете селектор вариантов на целевой платформе, объявления станут повторяющимися, отчеты по вариантам перестанут работать, и в Google может быть нарушено требование — item_group_id необходим для бесплатных объявлений и для товарных объявлений на нескольких крупных рынках, когда указываются варианты.
Могут ли варианты иметь разные цены? Да. Цена не является определяющим атрибутом варианта, но она может законно отличаться для каждого варианта — большие размеры часто стоят дороже. Указанная цена должна совпадать с ценой, отображаемой на целевой странице для конкретного варианта.
Следует ли оставлять в ленте товары, которых нет в наличии? В целом, да. Сохраняйте их, указывая доступность: out_of_stock, вместо того, чтобы удалять. Удаление и повторное добавление сбрасывает историю товара в канале. Вместо этого исключите их из активных кампаний, используя правило или пользовательскую метку.
Может ли один товар принадлежать к двум группам? Нет. item_group_id принимает только одно значение для каждого товара. Если товар действительно принадлежит к двум концептуальным группам, вам предстоит решить проблему таксономии товаров на более высоком уровне.
Нужны ли мне отдельные значения item_group_id для каждого канала? Нет — и вам не следует этого делать. Используйте одну и ту же логическую группировку везде. Различия между каналами заключаются в применяемых к ним преобразованиях : ограничениях по символам, регистре, синтаксисе. Сохраняйте один источник достоверной информации и адаптируйте его при экспорте.
Как обрабатывать товары, которые действительно имеют один размер? Укажите размер как one_size, OS или OSFA. Не оставляйте поле пустым для одежды на рынках, где размер является обязательным.
Мужские и женские версии одного и того же дизайна — одна группа или две? Две. Гендерные категории должны быть одинаковыми в рамках одной группы. Разные фасоны и размеры делают их разными товарами с точки зрения покупателя.
Что чаще всего ломается на практике? В ходе наших проверок: общие изображения для всех цветовых вариантов, повторное создание значений item_group_id при каждом экспорте и неизмененный синтаксис доступности, перенесенный из фида Google в Meta. Все три проблемы незаметны в интерфейсе и проявляются только как необъяснимое снижение производительности.
В чём же дело?
В фидах вариантов точность ценится так, как это не принято в большинстве методов цифрового маркетинга. В item_group_id нет места для творческой оценки — он либо стабилен и используется совместно, либо нет. Цветовые значения либо соответствуют спецификации, либо отклоняются. Изображения либо соответствуют варианту, либо клик был потрачен впустую.
Хорошая новость в том, что это решаемая проблема с определенным ответом. Трудность заключается в его поддержании — ведь каталоги меняются ежедневно, запасы товаров перемещаются ежечасно, и каждый канал продаж корректирует свои характеристики в соответствии со своим собственным графиком.
Компании, которые правильно понимают этот процесс, рассматривают ленту вариантов как инфраструктуру, а не как файл. Они получают идентификаторы групп из стабильных исходных данных, нормализуют атрибуты уже в источнике, преобразуют данные по каждому каналу при экспорте, пересчитывают состояние запасов при каждой синхронизации и оповещают о неожиданных изменениях.
Именно для этого и создан Feedance — правила обработки данных для нормализации атрибутов в источнике, обнаружение некорректных размеров , которое пересчитывается при каждой синхронизации, обогащение данных в формате GA4 для поддержания актуальности меток производительности и экспорт каналов , который применяет правильные преобразования для каждого из более чем 200 целевых объектов без изменения исходных данных.
Если вы хотите узнать, каково состояние вашей собственной структуры вариантов, прежде чем что-либо менять, наш бесплатный инструмент аудита фидов оценивает существующий фид по полноте, качеству данных и техническому состоянию, включая группировку вариантов, совершенно бесплатно.