This article shows a list of required and recommended parameters for VAST ad tags used to serve ads in web implementations.
On this page
- Parameters required for ad serving
- Parameters required for programmatic
- Parameters recommended for programmatic
You can review lists for other implementation types or URL requirements for VAST ad tags.
Required and recommended parameters for web
Parameters required for ad serving
correlator
(Correlator)
Description
The correlator parameter (correlator
) accepts a variable value that is shared by multiple requests coming from the same page view. It's used to implement competitive exclusions, including those in cookieless environments.
Usage examples
correlator=4345645667
Requirements and recommendations
This parameter is required to implement ad serving in web, mobile apps, connected TV, audio, and digital out-of-home.
SDK usage
- If the IMA SDK is used, the correlator value is set automatically. If your player attempts to set this value, the SDK overwrites it with its own value.
- If the IMA SDK is not used, ensure that you set this value to a truly random, positive, integer value that is not being reused by multiple page views.
description_url
(Description URL)
Description
The description URL parameter (description_url
) accepts a variable value that should describe the video playing on the page.
The description URL should be about the videos playing on a specific page of a web app, mobile app, or TV app. It should not be the top-level domain for all videos or all ad requests. For example, if you have a https://sample.com/golf.html
page for showing videos about golf, set it as the value of description_url
.
Usage examples
The description_url
value must be URL-encoded for web pages with videos and CTV/OTT devices. However, the description_url
value must not be encoded for mobile apps.
URL-encoded:
description_url=
https%3A%2F%2Fsample.com%2Fgolf.html
Not encoded:
description_url=
https://sample.com/golf.html
Requirements and recommendations
This parameter is required to implement ad serving in web and mobile apps. It is also required if you use Ad Exchange or AdSense for dynamic allocation.
This parameter is recommended for programmatic monetization.
SDK usage
This parameter is not set automatically by the IMA SDK. It needs to be set manually.
Refer to the IMA SDK guides for your platform.
env
(Environment)
Description
The environment parameter (env
) accepts a constant value that indicates an in-stream request, or that the request is specifically from a video player.
Possible values are instream
, which can be used for video and audio ads, or vp
which can only be used for video ads.
Usage examples
Video and/or audio:
env=instream
Video only:
env=vp
Requirements and recommendations
This parameter is required to implement ad serving in web, mobile apps, connected TV, audio, and digital out-of-home.
This parameter is required to accurately report on request type broken down by "Video tag".
gdfp_req
(Schema indicator)
Description
The Google Ad Manager schema indicator parameter (gdfp_req
) accepts a constant value which indicates that the ad request is for Google Ad Manager inventory.
Usage examples
gdfp_req=1
Requirements and recommendations
This parameter is required to implement ad serving in web, mobile apps, connected TV, audio, and digital out-of-home.
iu
(Ad unit)
Description
The ad unit parameter (iu
) accepts a variable value which should be set to the current ad unit, in the format: /network_code/.../ad_unit
.
Usage examples
iu=/6062/videodemo
Requirements and recommendations
This parameter is required to implement ad serving in web, mobile apps, connected TV, audio, and digital out-of-home.
output
(Output)
Description
The output format parameter (output
) accepts a constant value which should be set to the output format of the ad.
Usage examples
Use your network's default VAST version:
output=vast
Use VAST 4 (you can set specific versions for specific tags):
output=xml_vast4
Use your network's default VMAP setting:
output=vmap
Use VMAP 1:
output=xml_vmap1
Use VMAP 1, returning VAST 4 (if you return VAST inside of VMAP):
output=xml_vmap1_vast4
Requirements and recommendations
This parameter is required to implement ad serving in web, mobile apps, connected TV, audio, and digital out-of-home. It is required to output the correct ad serving response format.
SDK usage
For VAST, if your video player uses the IMA SDK, the output parameter for a video ad request will always be set to output=xml_vast4
. This poses no reliability risk as the SDK is backwards compatible with all VAST versions that any third-party ad server may serve.
sz
(Size)
Description
The size (sz
) parameter accepts a variable value which should be set to the size of master video ad slot.
Multiple sizes should be separated by the pipe (|
) character.
Do not include "v
" after the size.
Usage examples
Single size:sz=400x300
Multiple sizes:sz=300x250|400x300
Requirements and recommendations
This parameter is required to implement ad serving in web, mobile apps, connected TV, and digital out-of-home.
This parameter is optional if only requesting ad_type=audio
.
unviewed_position_start
(Delayed impressions)
Description
The delayed impressions (unviewed_position_start
) parameter accepts a constant value to indicate delayed impressions for video.
Usage examples
unviewed_position_start=1
Requirements and recommendations
This parameter is required to implement ad serving in web and mobile apps when there is a delayed impression opportunity.
url
(URL)
Description
The URL parameter (url
) accepts a variable value which should be set to the full URL from which the request is sent. This value is needed to help buyers identify and understand the context of where this request is coming from. To the extent possible, this value should be dynamically populated on the ad request.
- On web, this is the URL of the page that displays the video player.
- In non-web environments, this should be set to a URL that most accurately represents the video or audio inventory being monetized. For instance, if the user is watching a video within a mobile app that is also available on a desktop equivalent URL.*
Note: url
differs from description_url
in that url
refers to the location that an ad request was made from whereas description_url
is a web crawlable page that describes the video content.
The value of this parameter should be encoded.
Usage examples
url=https%3A%2F%2Fexample.com%2Fvideo.html
* For apps, if it's not possible to set this parameter to a variable URL value, the following pattern is recommended: url=https%3A%2F%2F<app/bundleid>.example.com
Requirements and recommendations
This parameter is only required for programmatic monetization in web, mobile apps, connected TV, audio, and digital out-of-home.
SDK usage
If you use the IMA SDK, the URL value is set automatically. If your player sets this value, the IMA SDK will respect the value being set.
Parameters required for programmatic
ott_placement
(OTT placement)
Description
The OTT placement parameter (ott_placement
) accepts a constant value which indicates a request for a non-in-stream OTT placement.
Placement definitions for the examples below:
- Pause: Out-stream format that appears via an overlay on top of video content when a user pauses content playback.
- Homescreen: Ad that appears on the homescreen of a CTV device or OTT app. This includes masthead, banner, and tile implementations on a homescreen.
- Picture-in-picture: In-stream video ad played in a separate ad video player beside video content. Typically requires squeezing back video content and loading a second video player.
- L-banner: In-stream display ad that involves squeezing back video content and creating an ad around the video. Typically, but not limited to, an L-shaped ad content box.
- Overlay: Any in-stream ad format that appears on top of video content but does not take up the full screen. Can be a display or video ad.
Usage examples
Supported formats and their corresponding values:
Pause:
ott_placement=1
Homescreen:
ott_placement=2
Picture-in-picture:
ott_placement=3
L-banner:
ott_placement=4
Overlay:
ott_placement=5
Custom/other:
ott_placement=99
Requirements and recommendations
This parameter is only required for programmatic monetization in web, mobile apps, and connected TV for publishers monetizing non-standard placements on OTT streaming environments.
plcmt
(Placement)
Description
The placement parameter (plcmt
) accepts a constant value which is used to indicate whether or not the in-stream inventory is declared as "Instream" or "Accompanying" per the guidance in the IAB specifications.
For non-in-stream requests, this is automatically populated for buyers based on the declared inventory format which overrides any in-stream or accompanying declaration.
Usage examples
In-stream request:
plcmt=1
Accompanying content request:
plcmt=2
Requirements and recommendations
This parameter is required for programmatic monetization in web, mobile apps, connected TV, audio, and digital out-of-home.
vpa
(Video play automatic)
Description
The video play automatic (vpa
) parameter accepts a constant value which indicates whether video content in an ad starts through autoplay or click.
Possible values are click
if the page waits for a user action or auto
if the video plays automatically. This parameter does not change the state of the video player, playback behavior must be handled directly by the video player.
Usage examples
Autoplay:
vpa=auto
Click to play:
vpa=click
This parameter should be left unset if it is unknown.
Requirements and recommendations
This parameter is required for programmatic monetization in web, mobile apps, connected TV, and audio.
This parameter is also recommended per The Media Rating Council (MRC) Video Measurement Guidelines.
vpmute
(Video play mute)
Description
The video play mute parameter (vpmute
) accepts a constant value which indicates whether the ad playback starts while the video player is muted. This parameter does not change the state of the video player, playback behavior must be handled directly by the video player.
Usage examples
Playback starts muted:
vpmute=1
Playback starts unmuted:
vpmute=0
Requirements and recommendations
This parameter is required for programmatic monetization in web, mobile apps, connected TV, audio, and digital out-of-home.
This parameter is also recommended per The Media Rating Council (MRC) Video Measurement Guidelines.
Parameters recommended for programmatic
aconp
(Audio continuous play)
Description
The audio continuous play parameter (aconp
) accepts a constant value that indicates whether the player intends to continuously play audio content. This helps Google Ad Manager select the most suitable ads for the user experience.
Usage examples
Continuous play on:
aconp=2
Continuous play off:
aconp=1
If you don't know whether audio plays continuously, this parameter should be left unset or set to aconp=0
.
Requirements and recommendations
While this this parameter is not required to serve ads to any specific implementation, it is recommended for programmatic monetization in web, mobile apps, connected TV, audio, and digital out-of-home.
This parameter is also recommended per The Media Rating Council (MRC) Audio Measurement Guidelines.
dth
(Device type hint)
Description
The device type hint parameter (dth
) accepts a constant value that helps reduce device misclassification, specifically on connected TV and set top box environments.
Device misclassification may result from unintended errors from the publisher or connected TV OEM. This parameter would be used in conjunction with other signals for Google to automatically flag instances where connected TV inventory may be reclassified.
Usage examples
Requests from:
- Feature phone:
dth=1
- Smart phone:
dth=2
- Desktop:
dth=3
- Tablet:
dth=4
- Connected TV:
dth=5
- Game console:
dth=6
- Set top box:
dth=7
Requirements and recommendations
While this this parameter is not required to serve ads to any specific implementation, it is recommended for programmatic monetization in web, mobile apps, connected TV, audio, and digital out-of-home.
SDK usage
This parameter is recommended for PAL and PAI (non-SDK) implementations. It is not needed for IMA SDK or DAI SDK.
givn
(Video nonce)
Description
For integrations that use the Programmatic Access Library (PAL), the video nonce parameter accepts a variable string value.
The nonce is URL safe—you don't need to URL-encode it.
Note: If you previously provided a nonce using the legacy paln
parameter, it is strongly recommended to migrate to the givn
parameter and stop sending paln
. Do not include both parameters.
Usage examples
Read more about the value passed to this parameter in the getting started guides for PAL.
Requirements and recommendations
While this this parameter is not required to serve ads to any specific implementation, it is recommended for programmatic monetization in web, mobile apps, connected TV, audio, and digital out-of-home.
hl
(Language)
Description
The language parameter (hl
) accepts a constant value which is used to request ads in that language, and for language of ad selection and video ad rendering in dynamic allocation to Ad Exchange or AdSense Video.
Usage examples
Request ads in Italian:
hl=it
The parameter value can be any ISO 639-1 (two-letter) or ISO 639-2 (three-letter) code. See a list of valid codes.
If omitted, the value defaults to any language with ad targeting by language in Ad Exchange.
Requirements and recommendations
While this this parameter is not required to serve ads to any specific implementation, it is recommended for programmatic monetization in web, mobile apps, connected TV, audio, and digital out-of-home.
omid_p
(OMID partner name)
Description
The OMID partner name parameter (omid_p
) accepts a variable value which indicates the name of the partner integrating OMID measurement, and the partner version.
The supported SDK APIs parameter (sdk_apis
) accepts variable values which can either be a single or comma-separated list of supported APIs.
These parameters are parts of a set of parameters used for viewability and ad verification.
Usage examples
When not using PAL:
omid_p=examplepartnername/1.0.0.0&sdk_apis=7
See a list of possible API Framework values.
When using PAL:
request.omidPartnerName = 'examplepartnername'
request.omidPartnerVersion = '1.0.0.0'
Requirements and recommendations
While this this parameter is not required to serve ads to any specific implementation, it is recommended for programmatic monetization in web, mobile apps, connected TV, audio, and digital out-of-home.
SDK usage
- This parameter is only applicable to publishers wanting Active View measurement when using the Open Measurement SDK (OM SDK).
- To indicate OMID support when using Programmatic Access Library (PAL), you need to use
omidPartnerName
andomidPartnerVersion
to set the partner name and version. When not using the PAL or IMA SDK, you must set theomid_p
andsdk_apis
parameters. - This should not be used when using the IMA SDK as it is set automatically.
vconp
(Video continuous play)
Description
The video continuous play (vconp
) parameter accepts a constant value which indicates whether the player intends to continuously play video content, similar to a TV broadcast.
Usage examples
Continuous play ON:
vconp=2
Continuous play OFF:
vconp=1
This parameter should be left unset if it is unknown.
Requirements and recommendations
While this this parameter is not required to serve ads to any specific implementation, it is recommended for programmatic monetization in web, mobile apps, connected TV, and audio.
This parameter is also recommended per The Media Rating Council (MRC) Video Measurement Guidelines.
vid_d
(Video duration)
Description
The video duration (vid_d
) parameter accepts a variable value which specifies the duration of the content, in seconds.
- The
vid_d
andallcues
parameters are used to serve mid-roll ads without content ingestion. - The use of ad rules is required to return mid-rolls. If time-based cues are used in your ad rules (for example, "Every N seconds" or "At fixed times"), then those set in the ad rule are used, and the cues passed into
allcues
are ignored. Mid-rolls still require duration, sovid_d
must still be passed.
Usage examples
Video content duration of 90000 seconds (25 hours):
vid_d=90000
Requirements and recommendations
While this this parameter is not required to serve ads to any specific implementation, it is recommended for programmatic monetization in web, mobile apps, and connected TV.
vpos
(Video position)
Description
The video position (vpos
) parameter accepts a constant value which indicates whether the ad request is being sent from pre-roll, mid-roll or post-roll.
Usage examples
Pre-roll:
vpos=preroll
Mid-roll:
vpos=midroll
Post-roll:
vpos=postroll
Requirements and recommendations
While this this parameter is not required to serve ads to any specific implementation, it is recommended for programmatic monetization in web, mobile apps, connected TV, and audio.
If ad rules are used, this parameter is not needed as it's automatically added by the ad server.
wta
(Why this ad)
Description
The "Why this ad?" parameter (wta
) accepts a constant value which indicates the video player's support for rendering ad badging.
Usage examples
If the player should render the AdChoices icon provided in the VAST response, use:
wta=1
(or omit thewta
parameter, or passwta
with no value set)Audio requests should use
wta=1
if the AdChoices icon provided in the VAST response will be rendered on companions or otherwise provided to the user.
If the player should not render the AdChoices icon provided in the VAST response, use:
wta=0
Requirements and recommendations
While this parameter is not required to serve ads for any specific implementation type, it is recommended for programmatic monetization for web, mobile apps, connected TV, and audio.
When the parameter is used:
&wta=0
traffic isn't eligible for certain types of personalization from Google Demand.&wta=0
traffic from EEA is not eligible for creatives with ad badging enabled on reservation and publisher-managed Programmatic Guaranteed line items.
Ads must comply with applicable regulatory requirements for ads served in the European Economic Area (EEA). This includes a mechanism for users to report illegal content. Publishers must notify Google of any illegal content reports using the Report Content on Google form.
SDK usage
The ad badging functionality is supported automatically when using the IMA SDK. When the IMA SDK is not used, video players must implement VASTIcon
and IconClickFallbackImage
support, as documented in the IAB VAST standard.