A VAST ad tag URL is used by a player to retrieve video and audio ads. You can manually assemble a VAST ad tag URL or modify an existing URL using the parameters below, and then test with the VAST suite inspector . You can also review and test using these sample tags .
General URL requirements
- Protocol: VAST ad tags support both http and https. Impression tracking URLs respect the current SSL setting and return as either http or https. Click-through and click-tracking use http since they redirect from another page.
- Domain: The use of dynamic domains, created via the pattern match macro or any other dynamic method, is not allowed and will result in an error.
- Live traffic: Ad tag URLs for live stream video mustcontain
/live
in their path to ensure the ability to handle heavy traffic volumes, where all ad breaks are delivered at the same time.
Example of a VAST ad tag
A sample VAST ad tag URL, with parameters and assigned values would look something like this:
https://securepubads.g.doubleclick.net/gampad/ads?env=vp&gdfp_req=1&output=vast&iu=/1234/video-demo&sz=400x300&unviewed_position_start=1&ciu_szs=728x90,300x250
Jump to a specific parameter in the list
aconp
(Audio continuous play)
Recommended per MRC Audio Measurement Guidelines
The audio continuous play parameter accepts a constant value that indicates whether the player intends to continuously play audio content.
This parameter should be left unset if it's not known.
Usage example
Continuous play ON: aconp=2
Continuous play OFF: aconp=1
ad_rule
(Ad rule)
The ad rule parameter accepts a constant value that indicates whether to return a VAST creative or an ad rules response.
The default setting for ad rules depends on an Ad Manager network setting . You can override the setting for specific ad tags using the examples below.
Usage example
Request for VAST creative: ad_rule=0
Request for ad rules (VMAP): ad_rule=1
Requirement
Required for video ad rules
ad_type
(Ad type)
The ad type parameters accept a constant value that indicates the ad types that should be returned for the request.
This parameter is only required for audio ads.
Usage examples
Allows only audio ads: ad_type=audio
Allows both skippable and non-skippable video ads: ad_type=video
Allows both audio and video ads:
ad_type=audio_video
(This value allows both formats to compete, but only one serves.)
audio_video
ad type is intended to be used only for serving video creatives into audio content that supports video ad playback or
audio creatives into in-stream video players for content that can be "listenable" in nature. For example, sports streams, videocasts, news, etc. Read more about audio in video content .
Allows only skippable video ads: ad_type=skippablevideo
Allows only non-skippable video ads: ad_type=standardvideo
Requirement
Required for audio ads
afvsz
(Non-linear ad sizes)
The non-linear ad sizes parameter accepts constant values which should be a comma-separated list of non-linear ad sizes that can be displayed in the video ad slot.
These sizes must be any of the those supported:
-
200x200
-
250x250
-
300x250
-
336x280
-
450x50
-
468x60
-
480x90
-
729x90
When using the IMA SDK, this field will be overwritten and populated with all supported sizes that fall within the nonLinearAdSlotWidth and nonLinearAdSlotHeight .
This parameter can be left out or empty when no non-linear sizes are supported.
Usage example
All sizes are supported: afvsz=200x200,250x250,300x250,336x280,
450x50,468x60,480x90,728x90
Max width is 250: afvsz=200x200,250x250
Max height is 60: afvsz=450x50,468x60
Max width is 100: //empty; no values supported
Requirement
Required for non-linear video ads when not using the IMA SDK
allcues
(All cue points)
This parameter accepts variable values which are a comma-separated list of cue points, in milliseconds. For each value, Ad Manager returns an ad break.
The vid_d
and allcues
parameters are used to serve mid-roll ads without content ingestion
. Ad rules
are also 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, so vid_d
must still be passed.
Usage example
Cue points at 10 and 20 seconds: allcues=10000,20000
ciu_szs
(Companion sizes)
The companion sizes parameter accepts variable values which are a comma-separated list of companion sizes.
Pipe-separated ( |
) values indicate a multi-size ad slot.
Usage example
ciu_szs=728x90,300x250
Sizes with a multi-size slot: ciu_szs=728x90,300x200|300x250
cmsid
(Content source ID)
vid
(Video ID)
The content source ID and video ID parameters accept variable values.
In order to target ads to video content , your master video tag needs to include bothof these parameters.
The cmsid
is a unique number for each content source. To locate this in Ad Manager, click Video Content sourcesand then the name of the source.
The vid
is a string or number identifying a particular video. This ID is assigned by the CMS that hosts your content. To locate this in Ad Manager, click Video Contentand then the specific video content.
Usage example
cmsid=[value]&vid=[value]
If you are building a tag for Dynamic Ad Insertion with video on demand, you should use the macros that will dynamically insert the correct content source and video ID.
For example: cmsid=%%CMS_ID%%&vid=%%VIDEO_ID%%
Requirement
Required for video content targeting
correlator
(Correlator)
The correlator parameter 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.
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.
Usage example
correlator=4345645667
Requirement
Recommended for Programmatic monetization
cust_params
(Custom key-value parameters)
The custom parameters parameter accepts variable values which are key-value pairs that allow you to set specific targeting, such as demographics, certain positions on a page, or a particular page or pages.
Usage example
See examples of how to add key‑value pairs .
description_url
(Description URL)
The description URL parameter accepts a variable
value that should describe the video playing on the page. Outline the page with 1-3 paragraphs describing the content. For example, stitch together the description_url
page content dynamically from predefined blocks. Learn more about providing a distinct description URL
.
The description_url
value must be URL-encoded for web page video players and CTV/OTT devices and non-encoded for mobile in-app video players.
This parameter is not set automatically by the IMA SDK. It needs to be set manually.
Usage example
URL-encoded: description_url=
https%3A%2F%2Fwww.sample.com%2Fgolf.html
Non-encoded: description_url=
https://www.sample.com/golf.html
Requirement
Required for web , app , and Ad Exchange
Recommended for Programmatic monetization
dth
(Device type hint)
The device type hint parameter 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
Requirement
Recommended for Programmatic monetization on connected TV.
This parameter is recommended for PAL and PAI (non-SDK) implementations. It is not needed for IMA SDK or DAI SDK.
env
(Environment)
The environment parameter 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 example
Video and/or audio: env=instream
Video only: env=vp
Requirement
excl_cat
(Exclusion category)
The exclusion category parameter accepts variable
values and is used to block any line items containing the exclusion label in question from being eligible for a given ad request. This parameter works with cust_params
.
Usage example
&cust_params=excl_cat%3Dairline_excl_label%7C
gdfp_req
(Ad Manager schema indicator)
gdpr
(GDPR)
The GDPR parameter accepts constant values and is used by publishers who wish to integrate with the IAB TCF v2.0 . Direct VAST requests don't automatically read the values, but they're accepted when added to ad tags.
Only 0 and 1 are valid values for this parameter, where 0 means GDPR does not apply and 1 means GDPR applies. If GDPR applies, you must also provide a valid TC string using the gdpr_consent parameter.
You can read more about the values passed to this parameter in the general guidance for implementing the framework, or in the TC string section of the IAB TCF v2.0 specification.
Usage example
GDPR applies: gdpr=1
GDPR does not apply: gdpr=0
givn
paln
(Video nonce)
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 example
You can read more about the value passed to this parameter in the getting started guides for PAL .
hl
(Language)
The language parameter 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 .
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 .
Usage example
hl=it
Requirement
Recommended for Programmatic monetization
iabexcl
(IAB exclusion URL)
iabexcl
accepts a comma separated list of categories. Usage example
iabexcl=3,14,527
excludes "Commercial Trucks," "Off-Road Vehicles," and "Rugby."
Learn more about IAB Content Taxonomy .
ipd
(Inventory partner domain)
The inventory partner domain parameter accepts variable
values which should be set to the inventorypartnerdomain
declarations in the publisher's app-ads.txt
(or ads.txt
) file.
The inventorypartnerdomain parameter is an IAB specification
that helps publishers designate a domain of an inventory sharing partner for purposes of ads.txt/app-ads.txt
validation.
IPD declaration is especially important in inventory sharing use cases where the ad inventory in which a request originates from may be owned by another partner (the inventory sharing partner).
Learn more about ads.txt/app-ads.txt and inventory sharing partners .
ipe
(Impression pinging entity)
The impression pinging entity parameter accepts a constant value which is used to indicate impression pings and conversions that originate from the server, not the client.
Usage example
Server-side beaconing (SSB): ipe=ssb
iu
(Ad unit)
lip
(Last position in pod)
The last position in pod parameter accepts a constant value to indicate a request from the last position in a pod.
This parameter is for standard pods only.
Usage example
lip=true
ltd
(Limited ads)
The limited ads parameter accepts a constant value which indicates whether to serve ads in a limited way in the absence of consent for the use of cookies or other local identifiers.
Unlike other URL parameters, setting ltd=1
changes the behavior of the IMA SDK to treat the request as ID-less and to disallow storage.
Usage example
ltd=1
min_ad_duration
(Ad minimum duration)
max_ad_duration
(Ad maximum duration)
The ad duration parameters accept variable values that, taken together, specify the duration range an ad must match in milliseconds.
Use this parameter to limit individual ad duration for single ad and optimized pod requests.
Usage example
min_ad_duration=15000&max_ad_duration=30000
mridx
(Mid-roll number)
The mid-roll number parameter accepts a variable value which indicates the ordinal number of the mid-roll (for example, mid-roll 1, mid-roll 2, etc.).
Usage example
mridx=2
msid
(App ID)
an
(App name)
The app ID and app name parameters accept variable values which should be applied to requests sent from mobile app and connected TV devices, as most programmatic video ads require them.
The IMA SDK will automatically populate both parameters, but they must be manually specified in non-SDK environments, including direct VAST calls, or when using Programmatic Access Library (PAL) or Publisher Authenticated Inventory (PAI).
While the app name should be a human-readable name, on iOS and tvOS, it's not possible for the SDK to access the app ID. In these cases, the msid
parameter is not sent, and the SDK sends the app bundle via the an
parameter.
Usage example
msid=com.package.publisher&an=sample%20app
App IDs are named and formatted differently across different app stores. See the IAB guidelines for app identification , or examples of common unique identifiers .
For platforms where an app store does not exist, the IAB recommends publishers use the following format for store IDs: com.publisher.deviceplatform
Requirement
Both parameters are required for app
Recommended for Programmatic monetization
nofb
(Fallback disabled)
The fallback disabled parameter accepts a constant value to indicate that the ad request should notreturn a playlist of video fallback ads.
Usage example
Fallback disabled: nofb=1
npa
(Non-personalized ad)
The non-personalized ads parameter accepts a constant value to indicate that the ad request should be treated as non-personalized.
You must either specifically set npa=1
or include simply npa
(without a set value) to tag the request as non-personalized. Ad requests either missing this parameter, or set to npa=0
, default to personalized ads
.
Usage example
Non-personalized ads: npa=1
omid_p
(OMID partner name)
The OMID partner name parameter accepts a variable value which indicates the name of the partner integrating OMID measurement, and the partner version.
This parameter is only applicable to publishers wanting Active View measurement when using the Open Measurement SDK (OM SDK). This should not be used when using the IMA SDK as it is set automatically.
To indicate OMID support when using Programmatic Access Library (PAL), you need to use the omidPartnerName
and omidPartnerVersion
APIs to set the partner name and version. When you're not using either PAL or IMA, you must set the omid_p
and sdk_apis
parameters (the supported APIs, which could also include other comma separated APIs).
Usage example
When using PAL: request.omidPartnerName = 'examplepartnername'
request.omidPartnerVersion = '1.0.0.0'
When not using PAL: omid_p=examplepartnername/1.0.0.0&sdk_apis=7
output
(Ad output format)
The ad output format parameter accepts a constant value which should be set to the output format of ad.
Use output=vast
for the default VAST version set for your network
. For specific ad tags or parts of your site, you can request specific VAST or VMAP versions.
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.
Use output=vmap
to return the default VMAP version you have activated for your network (for example, VMAP 1). If you return VAST inside of VMAP
, you can use xml_vmap1_vast3
or xml_vmap1_vast4
to specify the VAST version to return.
Usage example
Your network's default VAST setting: output=vast
VAST 4: output=xml_vast4
Your network's default VMAP setting: output=vmap
VMAP 1: output=xml_vmap1
VMAP 1, returning VAST 4: output=xml_vmap1_vast4
Requirement
plcmt
(Placement)
The placement parameter accepts a constant value which is used to indicate whether or not the in-stream inventory is declared as in-stream or accompanying per the guidance in the IAB specifications .
For non-in-stream requests, this field is populated for buyers automatically based on the declared inventory format, and will override any in-stream or accompanying content declaration.
Usage example
In-stream request: plcmt=1
Accompanying content request: plcmt=2
Requirement
Required for web and Programmatic monetization
pmad
(Pod maximum ads)
The pod ad maximum parameter accepts a variable value which indicates the maximum number of ads in a pod.
This parameter is specific to optimized pods, which are available to publishers with an advanced video package. It should not be used for VMAP (when ad_rule=1
).
Usage example
pmad=4
pmnd
(Pod minimum duration)
pmxd
(Pod maximum duration)
The pod duration parameters accept variable values which, taken together, specify the duration range that a pod must match, in milliseconds.
These parameters are used to request multiple ads. They're specific to optimized pods, which are available to publishers with an advanced video package. They should not be used for VMAP (when ad_rule=1
).
Usage example
pmnd=0&pmxd=60000
pod
(Pod number)
The pod number parameter accepts a variable value which represents the ordinal number of the pod in a video (for example, pod 1, pod 2, etc.).
Usage example
pod=3
Requirement
Required for competitive exclusions , frequency capping , and related features to work correctly.
pp
(Creative profile)
The creative profile parameter accepts a variable value which controls the creatives eligible to serve based on the configuration set up in a video and audio creative profile .
Usage example
pp=creative_profile
Requirement
Recommended for Programmatic monetization
ppt
(Publisher Privacy Treatment)
The Publisher Privacy Treatment parameter accepts a constant value which is used to indicate whether to turn off ads personalization for the ad request.
Learn more about Publisher Privacy Treatment .
Usage example
Turn off ads personalization: ppt=1
ppid
(Publisher provided identifier)
The Publisher provided identifier ( PPID ) parameter accepts a variable value of the identifier is used in frequency capping, audience segmentation and targeting, sequential ad rotation, and other audience-based ad delivery controls across devices.
Usage example
ppid=12JD92JD8078S8J29SDOAKC0EF230337
ppos
(Position in pod)
The position in pod parameter accepts a variable value which represents the position within a pod (for example, position 1, position 2, etc.).
This parameter is for standard pods only and is necessary for companion autofill.
Usage example
ppos=2
Requirement
Required for competitive exclusions , frequency capping , and related features to work correctly.
ppsj
(Publisher provided signals JSON)
The publisher provided signals JSON parameter accepts a base64-encoded JSON object containing audience and contextual data provided by the publisher to improve programmatic monetization.
Learn more about publisher provided signals and supported taxonomies .
See details of valid JSON key-value pairs in the
HTML5 IMA SDK sample
.
Usage example
JSON object: {
"PublisherProvidedTaxonomySignals": [{
"taxonomy": "IAB_AUDIENCE_1_1",
"values": ["6", "284"]
}]
}
Base64 encoded value: eyJQdWJsaXNoZXJQcm92aWRlZFRheG9ub215U2lnbmFscyI6W3s
idGF4b25vbXkiOiJJQUJfQVVESUVOQ0VfMV8xIiwidmFsdWVzIj
pbIjEiLCIyODQiXX1dfQ
ptpl
(Ad break template ID)
ptpln
(Ad break template name)
The ad break template ID and name accept variable values and indicate which ad break template should apply to the optimized pod request. Ad break templates allow you to configure which ad spots or custom ad spots, should be included in an ad break, and in which order they should serve.
Only one of the 2 parameters (name or ID) are required to request an ad break template.
Usage example
More details on setting up and requesting ad break templates can be found here .pubf
(Public price floors in Ad Exchange tags)
pvtf
(Private price floors in Ad Exchange tags)
pubf
is the equivalent of google_ad_public_floor
, and pvtf
is the equivalent of google_ad_private_floor
. These are used to add price floors to Ad Exchange tags
.
Usage example
pubf=123
pvtf=123
pvid
(App set ID)
pvid_s
(App set scope)
The app set ID values are needed for monetization when users opt out of personalization on Android devices.
The pvid
parameter accepts a variable
value which is set to the Android app set ID, and the pvid_s
parameter accepts a constant
value that represents the scope of the app set ID (either scope_app
or scope_developer
).
While the IMA/PAL SDK automatically passes this field, publishers with non-SDK implementations must call the app set SDK and pass these parameters manually on ad request.
See the Android documentation on how to retrieve the app set ID .
Usage example
pvid=[AppSetID_value]
pvid_s=scope_app
Requirement
Required for app
Recommended for Programmatic monetization
rdid
idtype
is_lat
(Resettable device identifiers)
The resettable device identifiers accept variable values.
With built-in applications (not on web or mobile web), the SDK passes resettable device identifiers for user targeting into your stream requests with the parameters for rdid
, idtype
, and is_lat
. On SSB streams, you must pass these as explicit parameters, just as you would on a client-side ad request. Learn more about device identifiers
.
Nearly all programmatic video ads require the presence of these values.
Starting with iOS 14.5, Apple has deprecated the LAT
signal. Google instead relies on the presence of a non-zero IDFA to indicate that the user has consented to tracking on versions of iOS that support App Tracking Transparency
. As such, a valid UserAgent
indicating the correct OS version is required.
Usage example
See detailed examples of resettable device identifiers .
Requirement
Required for app
Recommended for Programmatic monetization
rdp
(Restrict data processing)
The restrict data processing parameter accepts a constant value to indicate that the ad request should restrict data processing.
You must either specifically set rdp=1
or include simply rdp
(without a set value) to restrict data processing. Ad requests either missing this parameter, or set to rdp=0
, will not restrict, unless the Restrict Data Processing
network setting is enabled.
Usage example
rdp=1
schain
(Supply chain)
The supply chain parameter accepts a variable
value which should be serialized SupplyChain object
. When this parameter is included, Google appends a node to any recieved schain
objects prior to sending to buyers.
See the full IAB documentation for communicating SupplyChain information via a tag (rather than OpenRTB).
See requirements forschain
to be parsed correctly
Based on the IAB documentation
, the following defines the serialization for the SupplyChain
object:
-
{SupplyChainObject}!{SupplyChainNode array}. SupplyChainObject
andSupplyChainNode
properties are comma delimited such that optional fields can be omitted and comma separators for which can be optionally excluded. - Each
SupplyChainNode
element is separated by a "!
". - If the value of any property contains characters that require URL encoding (for example "
,
" or "!
"), the value should be URL encoded before serialization.
Serialization order
SupplyChainObject
properties are serialized in this order:
ver,complete
SupplyChainNode
properties are serialized in this order:
asi,sid,hp,rid,name,domain,ext
ext
are exchange specific. Google Ad Manager does not parse this property.Examples of how to serialize the SupplyChain object
Below are two examples of ways to serialize the above SupplyChain
object:
1.0,1!exchange1,12345,1,bid-request-1,publisher1,publisher1.com!google.com,pub-12345678910,1,,,,
1.0,1!exchange1,12345,1,bid-request-1,publisher1,publisher1.com!google.com,pub-12345678910,1
Usage examples
schain=1.0,1!exchange1,12345,1,bid-request-1,publisher1,publisher1.com!google.com,pub-12345678910,1,,,,
If the value for asi
were exchange,1
, then the serialization with escaped characters would look like:
1.0,1!exchange%2C1,12345,1,bid-request-1,publisher1,publisher1.com!google.com,pub-12345678910,1
Requirement
Required for publishers leveraging payment intermediaries upstream of the request to Google Ad Manager. This includes publishers who use third-party ad server technology.
scor
(Stream correlator)
The stream correlator parameter accepts a variable value which should be an integer generated for each video stream. The number should be the same within a stream and unique within a page view. It's used for competitive exclusions, frequency capping, and related features if a user is watching multiple videos on the same page.
Usage example
scor=17
Requirement
Required for competitive exclusions , frequency capping , and related features to work correctly.
sdk_apis
(SDK API framework)
The SDK API framework parameter accepts a comma-separated list of constant integer values which indicate all of the API frameworks that the player supports.
See a list of possible API Framework values .
This parameter is used by publishers that use the Programmatic Access Library (PAL). If you attempt to set values to this parameter while using the IMA SDK, the values will be overridden with the values supported by the IMA SDK.
Usage example
sdk_apis=2,7,9
sdmax
(Skippable max ad duration)
The sdmax
(skippable max ad duration) ad request parameter accepts a variable
value that allows publishers to specify their desired max ad duration for the skippable ads.
It takes a duration in milliseconds that represents the upper bound that should be allowed for the duration of skippable video/audio creatives for that particular ad request.
Use sdmax
independently for skippable ads, or in combination with the existing max_ad_duration
parameter to provide different max durations for skippable and non-skippable ads.
Usage example
Using the following settings:
-
max_ad_duration
= 15000 (15 seconds) -
sdmax
= 45000 (45 seconds)
For the following creatives:
- Creative A: non-skippable; 30s
- Creative B: skippable; 30s
Results in:
- Creative Awill be filtered because it's non-skippable and its duration exceeds the (non-skippable) max.
- Creative Bwill not be filtered because, while its duration exceeds
max_ad_duration
, it's skippable, and its duration does not exceed the skippable max.
sid
(Session ID)
The session ID parameter accepts a variable value which is a privacy-preserving advertising identifier that is used for frequency capping purposes only.
Session ID is supported for in-stream video requests from connected TVs and on in-stream video inventory from mobile app devices. It is not currently supported for web.
Per the IAB's IFA guidelines , this parameter must be populated in UUID format. Learn more about resettable device identifiers for user targeting .
You can opt out of passing the session ID by setting sid=0
.
Usage example
123e4567-e89b-12d3-a456-426614174000
Requirement
Recommended for Programmatic monetization
ssss
(Server-side stitching source)
The server-side stitching source parameter accepts a constant value which should be set to a recognized, Google-supplied value for your video stitching technology vendor.
Video stitching technology vendors using server-to-server integrations with Google are given this value from Google and are able to provide it to you. You can reach out to your Google account manager with any questions about the value to set to this parameter.
Usage example
ssss=mystitcher
Requirement
Required for server-side implementations
sz
(Size)
The size 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 example
sz=400x300
Requirement
This parameter is optional if only requesting ad_type=audio
.
tfcd
(Tag for child-directed)
The child-directed parameter accepts a constant value which tags the ad request for child-directed treatment .
Usage example
tfcd=1
trt
(Traffic type)
The traffic type parameter accepts a constant value that functions to request either purchased or organic traffic.
The IMA SDK does not populate a default value if the traffic type parameter is missing from a request. In these instances, the server supplies a default value of 0
(undefined traffic).
Usage example
Request for purchased traffic: trt=1
Request for organic traffic: trt=2
unviewed_position_start
(Delayed impressions)
url
(URL)
The URL parameter 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 a web page, this is the URL of the page that displays the video player. 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.
In an app (mobile or CTV), this value 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.*
The value of this parameter should be encoded.
Usage example
url=
https%3A%2F%2Fwww.videoad.com%2Fgolf.html
* For apps, if it is not possible to set this parameter to a variable URL value, it's recommended that it be set with the following pattern: url=
https%3A%2F%2F<app/bundleid>.adsenseformobileapps.com
Requirement
Recommended for Programmatic monetization
vad_type
(Video ad type)
The video ad type parameter accept a constant value which indicates whether a linear or non-linear ad should be returned.
Usage example
Return a linear ad: vad_type=linear
Return a non-linear ad: vad_type=nonlinear
vid_d
(Video duration)
This parameter accepts a variable value which specifies the duration of the content, in seconds.
The vid_d
and allcues
parameters are used to serve mid-roll ads without content ingestion
. Ad rules
are also required to return mid-rolls.
Usage example
Video content duration of 90000 seconds (25 hours): vid_d=90000
vconp
(Video continuous play)
Recommended per MRC Video Measurement Guidelines
The continuous video parameter accepts a constant value which indicates whether the player intends to continuously play video content, similar to a TV broadcast.
This parameter should be left unset if it is unknown.
Usage example
Continuous play ON: vconp=2
Continuous play OFF: vconp=1
vpa
(Video play automatic)
Recommended per MRC Video Measurement Guidelines
The video play automatic 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 should be left unset if it is unknown.
Usage example
Autoplay: vpa=auto
Click to play: vpa=click
Requirement
Recommended for Programmatic monetization
vpi
(Video playlist inred)
The video playlist inred parameter accepts a constant value which indicates whether to serve inline VMAP (return VAST inside of VMAP).
This parameter can be used to reduce latency, and guarantee frequency caps and competitive exclusions across a video stream.
Usage example
Return VAST: vpi=1
Return redirects: vpi=0
vpmute
(Video play mute)
Recommended per MRC Video Measurement Guidelines
The muted video parameter accepts a constant value which indicates whether the ad playback starts while the video player is muted.
Usage example
Muted: vpmute=1
Unmuted: vpmute=0
Requirement
Required for web and Programmatic monetization
vpos
(Video position)
The video position parameter accepts a constant value which indicates whether the ad request is being sent from pre-roll, mid-roll or post-roll.
Usage example
Pre-roll: vpos=preroll
Mid-roll: vpos=midroll
Post-roll: vpos=postroll
Requirement
Recommended for Programmatic monetization
wta
(Why this ad)
The "Why this ad?" parameter accepts a constant
value which indicates the video player's support for rendering ad badging. When no &wta
parameter is sent, this defaults to &wta=1
.
The ad badging functionality is supported automatically when using the IMA SDK. When the IMA SDK is not used, video players must implement VAST Icon
and IconClickFallbackImage
support, as documented in the IAB VAST standard
.
Publishers are required to send &wta=0
if the publisher will not render the AdChoices icon, as provided in the VAST response. An ad request with &wta=1
or no &wta
parameter is understood to indicate that the publisher will render the provided AdChoices information.
Audio ad requests may send wta=1
if the AdChoices icon, as provided in the VAST response, will be rendered on companions or otherwise provided to the user.
For traffic from the EEA, requests with &wta=0
will not be eligible for reservation creatives where Google badging is enabled
.
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 appropriate form .
Usage example
Supported:
wta=1
or no wta
parameter
Unsupported: wta=0
Requirement
Required for Ad Exchange
Required for web and app EEA traffic
Recommended for Programmatic monetization