VAST: что это и как устроен XML видеорекламы
VAST (Video Ad Serving Template) — стандарт IAB Tech Lab, по которому рекламный сервер передает видеоплееру описание объявления в формате XML: какой ролик показать, в каком качестве, куда вести по клику и какие URL вызвать при показе, старте, четвертях просмотра и завершении. Плеер, понимающий VAST, может показывать рекламу из любой системы без доработок. Актуальная ветка — VAST 4.x.
Как работает VAST
- Плеер (или SDK приложения) запрашивает рекламу у SSP; SSP проводит аукцион по OpenRTB.
- Победившая DSP возвращает VAST — прямо в ответе или ссылкой.
- Плеер разбирает XML, выбирает подходящий медиафайл по формату и битрейту.
- Во время показа плеер вызывает трекеры событий:
Impression,start,firstQuartile,midpoint,thirdQuartile,complete. - При клике плеер открывает
ClickThroughи вызываетClickTracking.
Пример VAST Inline
<VAST version="4.2">
<Ad id="ibz-123">
<InLine>
<AdSystem>ExampleDSP</AdSystem>
<AdServingId>a1b2c3d4</AdServingId>
<AdTitle>Доставка еды</AdTitle>
<Impression><![CDATA[https://dsp.example/imp?id=123]]></Impression>
<Creatives>
<Creative>
<UniversalAdId idRegistry="unknown">ibz-123</UniversalAdId>
<Linear>
<Duration>00:00:15</Duration>
<TrackingEvents>
<Tracking event="start"><![CDATA[https://dsp.example/ev?e=start]]></Tracking>
<Tracking event="complete"><![CDATA[https://dsp.example/ev?e=complete]]></Tracking>
</TrackingEvents>
<VideoClicks>
<ClickThrough><![CDATA[https://example.ru/promo]]></ClickThrough>
</VideoClicks>
<MediaFiles>
<MediaFile delivery="progressive" type="video/mp4" width="1280" height="720">
<![CDATA[https://cdn.example/ad-720.mp4]]>
</MediaFile>
</MediaFiles>
</Linear>
</Creative>
</Creatives>
</InLine>
</Ad>
</VAST>
AdServingId и UniversalAdId обязательны начиная с VAST 4.1 и 4.0 соответственно; в более старых версиях их нет.
Чем Inline отличается от Wrapper
| Inline | Wrapper | |
|---|---|---|
| Содержит ролик | да, в MediaFiles |
нет |
| Что внутри | все данные объявления | ссылка VASTAdTagURI на следующий VAST и свои трекеры |
| Зачем | финальное объявление | посредники (SSP, сети) добавляют свою статистику |
Каждая обертка — лишний сетевой запрос. Длинные цепочки замедляют старт ролика и увеличивают долю ошибок, поэтому плееры ограничивают глубину разворачивания.
VAST в OpenRTB
В запросе плеер объявляет возможности в imp.video:
"video": {
"mimes": ["video/mp4"],
"minduration": 5,
"maxduration": 30,
"protocols": [3, 6, 7, 8],
"w": 1280, "h": 720
}
В protocols: 3 — VAST 3.0, 6 — VAST 3.0 Wrapper, 7 — VAST 4.0, 8 — VAST 4.0 Wrapper (полный список — в спецификации OpenRTB). DSP возвращает XML целиком в bid.adm либо ссылку в bid.nurl, по которой SSP заберет разметку после уведомления о выигрыше. В OpenRTB 2.6 тип разметки дополнительно указывается полем bid.mtype (2 — видео).
VAST, VMAP, VPAID и нативный формат
- VMAP описывает расписание рекламных пауз в ролике (pre-roll, mid-roll), а VAST — само объявление в паузе.
- Нативный формат передает набор элементов для верстки, а не видеоролик с плеерными событиями.
- Open Measurement подключается к VAST 4.1+ через блок
AdVerificationsи измеряет видимость.
Почему видеореклама не показывается
- Ошибки плеера. Если плеер не смог показать ролик, он вызывает URL из
<Error>с кодом: например,303— нет объявления после разворачивания оберток,403— не найден подходящий медиафайл. - Медиафайлы под плеер. Отдавайте несколько разрешений и битрейтов: мобильный плеер не станет грузить 1080p в слабой сети.
- Счет по
Impression, а не по выигрышу: выигранный аукцион без старта ролика — не показ.
VAST в ответах Ibiza
На видеозапросы DSP Ibiza отвечает готовым VAST 4.0 Inline прямо в bid.adm, без цепочки оберток: один Impression, трекеры старта, квартилей и досмотра, ClickThrough и ClickTracking, URL для ошибок плеера. Токен ERID передается в блоке Extensions. Требования к роликам — в разделе креативы и форматы.
Частые вопросы
Чем VAST отличается от VPAID?
VAST описывает, какой ролик показать и какие трекеры вызвать. VPAID — устаревший интерфейс для интерактивных креативов, исполнявших свой код в плеере; IAB заменил его на SIMID (интерактив) и Open Measurement (измерение).
Что такое VAST Wrapper?
Обертка, которая не содержит ролик, а ссылается на другой VAST по VASTAdTagURI и добавляет свои трекеры. Плеер разворачивает цепочку оберток до Inline-объявления.
Какую версию VAST указывать в запросе OpenRTB?
В imp.video.protocols перечисляют поддерживаемые плеером версии: например, 3 — VAST 3.0, 7 — VAST 4.0, 11 — VAST 4.1, 13 — VAST 4.2, а значения для оберток идут отдельными кодами.