Google Ads ограничивает загружаемый медийный HTML5-креатив размером 600 КБ и 40 файлами внутри ZIP-архива — согласно собственной спецификации Google для загружаемых медийных объявлений. Display & Video 360 допускает до 100 файлов, но ограничивает общий объём, который браузер загружает при показе объявления, 5 МБ, а также ограничивает один креатив 25 cookie и 100 внешними HTTP-запросами — согласно рекомендациям DV360 по HTML5-креативам. Ни одна из этих цифр не является секретом. Все они опубликованы на страницах спецификаций самих платформ. И всё же конвейер креативов на основе фида постоянно на них спотыкается, потому что ZIP, который шаблонизатор собирает для нескольких тысяч SKU, ведёт себя совсем не так, как ZIP, собранный дизайнером вручную. Это руководство — для тех, кто отвечает за контроль качества креативов в каталожном аккаунте: конкретные причины, по которым HTML5-объявления, сгенерированные из данных товарного фида, отклоняются в Google Ads, DV360 и Google Ad Manager, и способы исправить каждую из них, чтобы вы находили проблемы раньше платформы.
Почему HTML5, сгенерированный из фида, чаще не проходит проверку, чем креативы ручной работы
Дизайнер, собирающий один баннер вручную, встраивает фото товара прямо в ZIP, пишет один clickTag и один раз проверяет число файлов. Шаблонизатор, генерирующий тот же баннер для 4000 SKU, повторяет каждое решение 4000 раз, и ошибка, которая ничего не стоит при n=1, многократно умножается в масштабе.
Большую часть проблем объясняют четыре паттерна. Во-первых, шаблон обычно ссылается на изображения товаров по URL image_link прямо из фида — ведь это поле в фиде уже есть, — вместо того чтобы скачать файл и встроить его, как того требует формат ZIP. Во-вторых, шаблон, в котором для каждого состояния бейджа (в наличии, распродажа, бестселлер, заканчивается) используется отдельный файл изображения, умножает число файлов в архиве ещё до добавления хотя бы одного фото товара. В-третьих, минификация результата сборки ради скорости загрузки удаляет метаданные и обфусцирует переменные, включая мета-тег ad.size и переменную clickTag, которые рекламные платформы распознают по точному названию. В-четвёртых, каждый инструмент в стеке — слой автоматизации креативов, аналитический тег, собственный пиксель рекламной сети — добавляет свой скрипт или cookie, и никто не проверяет собранное объявление на соответствие суммарному лимиту платформы, пока оно уже не оказалось на модерации.
Технические ограничения по платформам
Ниже — цифры, которые реально применяются. Если платформа не опубликовала жёсткое ограничение, мы так и пишем, а не гадаем.
| Платформа | Макс. размер ZIP / загрузки | Макс. число файлов | Допустимые типы файлов | Важное дополнительное правило |
|---|---|---|---|---|
| Google Ads — стандартные загружаемые медийные объявления | 600 КБ (ZIP) | 40 | HTML, CSS, JS, GIF, PNG, JPG, JPEG, SVG | Внешние ссылки допускаются только на Google Fonts, а также размещённые Google библиотеки CreateJS, GSAP и jQuery; всё остальное должно находиться внутри ZIP |
| Google Ads — HTML5-межстраничные объявления в кампаниях для приложений | 5,2 МБ (ZIP) | 512 | Тот же основной набор, что и выше | Поддерживаются только два размера: 320×480 и 480×320 |
| Display & Video 360 | 5 МБ общего объёма загрузки (не размер ZIP) | 100 | html, htm, css, js, jpg, jpeg, gif, png, svg, а также определённый набор файлов шрифтов | Жёсткие ограничения: 25 cookie, 100 внешних HTTP-запросов и 30 секунд анимации на креатив; без автовоспроизведения звука |
| Google Ad Manager | Опубликованного жёсткого ограничения нет — проверка для каждого пакета | Публично не указано | Тот же основной набор; только фиксированные размеры, без Fluid | Требуется неминифицированная переменная clickTag в head и мета-тег ad.size; жёстко прописанные URL перехода ломают отслеживание кликов |
Источники: спецификации загружаемых медийных объявлений Google Ads, устранение неполадок с HTML5-ресурсами в кампаниях для приложений Google Ads, рекомендации DV360 по HTML5-креативам, рекомендации Google Ad Manager по HTML5.
Пять причин отклонения, которые повторяются на всех платформах, и способы их исправить
1. Абсолютные URL изображений вместо встроенных ресурсов
Шаблон берёт image_link прямо из фида и записывает его в разметку как есть:
<img src="https://cdn.example.com/feed/sku-4471-a.jpg">
Собственный валидатор HTML5-ресурсов Google для межстраничных пакетов в кампаниях для приложений возвращает на этот случай конкретную ошибку: «Ваше HTML5-объявление пытается сослаться на ресурс за пределами ZIP-файла. Допускаются только ссылки на внутренние файлы». То же правило, хотя и с менее явным текстом ошибки, действует для стандартных медийных объявлений и в DV360.
Решение: на этапе сборки скачайте файл, на который указывает URL image_link, повторно закодируйте его в ZIP по относительному пути и ссылайтесь на этот путь:
<img src="assets/sku-4471-a.jpg">
2. Число файлов раздуто ресурсами бейджей и иконок для каждого варианта
Шаблон с шестью состояниями бейджа в восьми размерах креатива — это 48 файлов ещё до добавления хотя бы одного фото товара, что уже превышает лимит Google Ads в 40 файлов для стандартных медийных объявлений. В каталоге с сотнями активных промоакций это самая частая причина, по которой пакетная выгрузка не проходит, хотя тот же шаблон прошёл контроль качества на тестовом наборе из пяти товаров.
Решение: объедините состояния бейджей в один спрайт или во встроенный SVG <symbol>, на который ссылается CSS-класс, чтобы число файлов не росло независимо от того, сколько состояний бейджей или размеров использует кампания.
3. Отсутствующий или удалённый мета-тег ad.size
Шаги минификации, рассчитанные на скорость, а не на соответствие требованиям ad-tech, часто удаляют или переставляют содержимое <head>, включая мета-тег размеров, который платформы распознают по точному названию. Ошибка валидатора Google Ads в этом случае звучит так: «В вашем HTML5-объявлении отсутствует основной HTML-файл. Основные HTML-файлы содержат тег размера объявления». Google Ad Manager требует ту же информацию в виде <meta name="ad.size" content="width=300,height=250">.
Решение: проверяйте мета-тег после минификации, а не до неё, и сделайте эту проверку автоматическим этапом конвейера выгрузки, а не ручной выборочной проверкой.
4. clickTag жёстко прописан, отсутствует или минифицирован до неузнаваемости
Минификатор превращает читаемый обработчик клика во что-то вроде var a=b(3). В рекомендациях DV360 прямо сказано, что тег клика «должен легко читаться рекламным сервером», и командам предписано не пропускать его через минификатор кода; Ad Manager требует ту же переменную, объявленную именно как clickTag, в head.
Решение: объявите её один раз без минификации и исключите эту единственную строку из минификации: var clickTag = "https://example.com/product/4471";. Никогда не прописывайте URL назначения жёстко в других местах разметки — Ad Manager не может атрибутировать клики, которые не проходят через эту переменную.
5. Превышение лимита cookie и HTTP-запросов из-за наложения трекинга
DV360 жёстко ограничивает один креатив 25 cookie и 100 внешними HTTP-запросами. Каждый отдельный тег — пиксель ретаргетинга, запрос веб-шрифта, вызов GA4, собственный сниппет отслеживания платформы автоматизации креативов — сам по себе соответствует требованиям. Но собранные вместе в одном объявлении они уже не соответствуют, и превышение обнаруживается только тогда, когда кто-то тестирует готовый пакет, а не шаблон.
Решение: направляйте трекинг через один контейнер менеджера тегов на объявление вместо добавления пикселей по отдельности, загружайте шрифты локально, а не внешним запросом, и проверяйте количество на реальной отрендеренной выгрузке, а не на шаблоне, поскольку тестирование на уровне шаблона даёт заниженные цифры.
Чек-лист перед запуском пакета HTML5-креативов, сгенерированных из фида
- Каждая ссылка на ресурс в разметке задана относительно корня ZIP, а не абсолютным URL на CDN фида.
- Число файлов проверено на собранном ZIP для конкретного товара, а не на шаблоне, и не превышает лимит целевой платформы.
- Мета-тег
ad.size(или его аналог для DV360/Ad Manager) присутствует и не минифицирован после этапа сборки, а не только до него. - Переменная
clickTagобъявлена один раз, не минифицирована и является единственным адресом перехода в файле. - Суммарное число cookie и внешних HTTP-запросов проверено на отрендеренном объявлении относительно лимита DV360 25/100, а не оценено по каждому тегу.
- Общий объём загрузки измерен «с нуля», после сжатия, относительно фактического лимита платформы — 600 КБ для стандартных медийных объявлений Google Ads, 5 МБ в сумме для DV360.
Что не охватывает это руководство
Это уровень технического соответствия, а не полноценная креативная стратегия. Здесь не рассматривается динамическая каталожная реклама в соцсетях и нативных форматах — размещения в Meta и Instagram, каталожная реклама TikTok, — созданная из того же фида, поскольку она работает на изображениях и видео через собственный менеджер каталожной рекламы платформы, а не через загрузку HTML5 в ZIP. Для этой конкретной задачи специализированные инструменты действительно подходят лучше, чем универсальный HTML5-конвейер: Confect создан специально под шаблоны каталожной рекламы Meta и Google с ежечасной синхронизацией товаров, а Hunch — под динамические креативы для соцсетей и видео, включая гиперлокализованные варианты. Ни один из них не создаёт медийные HTML5-баннеры по спецификациям IAB — именно этот пробел и закрывает данное руководство, — но в своей нише их стоит оценивать по их собственным критериям.
Здесь также не рассматриваются тестирование креативов и измерение эффективности — конвертирует ли один шаблон лучше другого, это отдельная дисциплина, не связанная с тем, проходит ли он техническую проверку, — и это руководство не заменяет проверку на соответствие правилам платформы в отношении контента. Исправление всех пунктов чек-листа выше предотвращает техническое отклонение. Но оно не поможет пройти модерацию креативу, который по существу нарушает рекламные правила платформы.
Часто задаваемые вопросы
Каков максимальный размер файла медийного HTML5-объявления в Google Ads?
Для стандартных загружаемых медийных объявлений ZIP-файл должен быть не больше 600 КБ и содержать не более 40 файлов. Для HTML5-межстраничных ресурсов в кампаниях для приложений действует отдельная спецификация: до 5,2 МБ и 512 файлов, но только в размерах 320×480 или 480×320.
Почему DV360 измеряет общий объём загрузки, а не размер ZIP?
Потому что после рендеринга в браузере ZIP может распаковаться в гораздо больший набор файлов. DV360 ограничивает фактический объём, который загружает браузер посетителя при показе объявления, 5 МБ — это более точный показатель реальной нагрузки, чем размер сжатого архива.
Может ли HTML5-объявление, сгенерированное из фида, ссылаться на внешние шрифты или изображения?
Как правило, нет. Стандартные медийные объявления Google Ads допускают внешние ссылки только на Google Fonts и небольшой разрешённый список размещённых Google библиотек (CreateJS, GSAP, jQuery); всё остальное, включая каждое изображение товара, должно быть встроено в ZIP с относительным путём.
Почему HTML5-объявление проходит локальное тестирование, но не проходит проверку на платформе?
Локальное тестирование обычно выполняется на исходном коде до минификации и сжатия, а не на том ZIP, который фактически загружается. Минификация может удалить тег ad.size или исказить переменную clickTag уже после того, как локальный тест пройден, поэтому проверки нужно выполнять на финальном результате сборки.
Лимит в 40 файлов действует на товар или на кампанию?
На каждый отдельный ZIP креатива. При пакетной выгрузке, которая генерирует по одному ZIP на SKU, каждый из них по отдельности должен укладываться в лимит — ограничение не усредняется по общему числу файлов кампании.
Чем спецификация HTML5 для кампаний для приложений отличается от стандартной спецификации медийных HTML5-объявлений?
Это отдельные спецификации с разными ограничениями, рассчитанные на разный инвентарь. Стандартные загружаемые медийные объявления ограничены 600 КБ и 40 файлами при гибких размерах; HTML5-межстраничные объявления в кампаниях для приложений допускают до 5,2 МБ и 512 файлов, но только в двух фиксированных размерах — портретном и альбомном. Перенос допущений одной спецификации на площадки другой — частая причина отклонения пакетов.
Применяются ли эти правила о файлах и clickTag к видеокреативам, сгенерированным из того же фида?
Нет — видеоресурсы подчиняются спецификациям видеообъявлений каждой платформы (кодирование, длительность, соотношение сторон), а не правилам для HTML5 в ZIP из этого руководства. Конвейеру на основе фида, который выдаёт и видео, и HTML5, нужны отдельные проверки качества для каждого типа.
Как проверить количество cookie и HTTP-запросов перед загрузкой в DV360?
Отрендерите собранный креатив в браузере с открытыми инструментами разработчика, загрузите объявление в изолированной вкладке и посчитайте фактически установленные cookie и отправленные запросы на панели Network. Тестирование шаблона отдельно, до того как теги отслеживания будут внедрены при сборке, занизит оба показателя.
Если поддерживать этот уровень соответствия вручную — не лучшее применение времени вашей команды, посмотрите, как Creative Suite от Feedance генерирует готовые для каналов креативы — статичные, видео и HTML5-баннеры — прямо из товарного фида, а также как обогащение фида улучшает исходные товарные данные. Karaca использовала тот же подход «от фида к креативу», чтобы создать 10 000 брендированных креативов к Чёрной пятнице за два часа. Расскажите нам о своём каталоге и текущей доле отклонений.

Сооснователь Feedance, использующий свой опыт инженера-программиста и маркетолога для получения аналитических инсайтов. Уделяя особое внимание превращению данных в практические стратегии, он помогает брендам добиваться значительного роста в цифровой среде.
LinkedIn




















