VAST ad tag URL parameters

VAST ad tag URL parameters

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 must contain /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

 bookmarkJump to a specific parameter in the list

aconp
ad_rule
ad_type
addtl_consent
afvsz
allcues
an
ciu_szs
correlator
cmsid
cust_params
description_url
dth
env
excl_cat
gdfp_req
gdpr
gdpr_consent
givn

hl
iabexcl
idtype
ipd
ipe
is_lat
iu
lip
ltd
max_ad_duration
min_ad_duration
mridx
msid
nofb
npa
omid_p
output
paln
plcmt

pmad
pmnd
pmxd
pod
pp
ppt
ppid
ppos
ppsj
ptpl
ptpln
pubf
pvid
pvid_s
pvtf
rdid
rdp
schain
scor

sdk_apis
sdmax
sid
ssss
sz
tfcd
trt
unviewed_position_start
url
vad_type
vconp
vid
vid_d
vpa
vpi
vpmute
vpos
wta

Parameter Details
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 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.

When ad_type is set to audio or audio_video, the vpmute parameter must be set to 0.

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.)

The 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 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 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 both of these parameters.

The cmsid is a unique number for each content source. To locate this in Ad Manager, click Video and then Content sources and 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 and then Content and 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 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

Required Required for web and app

recommended 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%2Fsample.com%2Fgolf.html

Non-encoded:
description_url=
https://sample.com/golf.html

Requirement

Required Required for webapp, and Ad Exchange

recommended 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 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

Required Required for web and app

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)

The Ad Manager schema indictor parameter accepts a constant value which indicates that the user is on the Ad Manager schema.

Usage example

gdfp_req=1

Requirement

Required Required for web and app

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 Recommended for Programmatic monetization

iabexcl

(IAB exclusion URL)

The URL parameter 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)

The ad unit parameter accepts a variable value which should be set to the current ad unit, in the format:

/network_code/.../ad_unit

Usage example

iu=/6062/videodemo

Requirement

Required Required for web and app

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

Required Both parameters are required for app

recommended Recommended for Programmatic monetization

nofb

(Fallback disabled)

The fallback disabled parameter accepts a constant value to indicate that the ad request should not return 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

Required Required for web and app

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 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 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 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 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 Required for app

recommended 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 Required for app

recommended 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 for schain to be parsed correctly

Based on the IAB documentation, the following defines the serialization for the SupplyChain object:

  • {SupplyChainObject}!{SupplyChainNode array}. SupplyChainObject and SupplyChainNode 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

Note: The contents of 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:

Serialize with commas for empty optional fields

1.0,1!exchange1,12345,1,bid-request-1,publisher1,publisher1.com!google.com,pub-12345678910,1,,,,

Serialize without commas for empty optional fields

1.0,1!exchange1,12345,1,bid-request-1,publisher1,publisher1.com!google.com,pub-12345678910,1

Learn more about the SupplyChain object.

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 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 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 A will be filtered because it's non-skippable and its duration exceeds the (non-skippable) max.
  • Creative B will 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 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 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

Required Required for web and app

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)

The delayed impressions parameter accepts a constant value to indicate delayed impressions for video.

Usage example

unviewed_position_start=1

Requirement

Required Required for web and app

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%2Fvideoad.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

Required Required for web and app

recommended 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 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 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 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 Required for Ad Exchange

Required Required for web and app EEA traffic

recommended Recommended for Programmatic monetization

Was this helpful?

How can we improve it?
Search
Clear search
Close search
Google apps
Main menu
5821895392856399761
true
Search Help Center
true
true
true
true
true
148
false
false