Developer resources

Pass resettable device identifiers for user targeting with in-stream video

The information in this article applies to in-stream video only.

Device identifiers for mobile phones, video game consoles, and over-the-top (OTT) streaming devices, can be used to enhance ad serving by allowing developers and marketers to target based on user activities. In non-browser environments where there are no cookies, they also allow buyers to apply critical features that facilitate additional demand, such as frequency capping. This type of user targeting is similar to how cookies can be used with web browsers.

It is strongly recommended that you pass user identifier data on ad requests to provide additional buying signals for advertisers, increasing the value of your inventory.

Device identifiers are provided by the device operating system and can be reset by the user. The value of the identifiers are a string and contain 36 characters (32 alphanumeric characters and four hyphens). The characters are grouped in the form 8-4-4-4-12. For example, 123e4567-e89b-12d3-a456-426655440000.

You can use the device ID macro to propagate the identifier to a third-party ad network.

Device identifier availability per device type

See the supported device types.

Chromecast does not have its own resettable device identifier. The casting device determines the device ID, its idtype, and sends it to the Chromecast. For example, if the casting device is an Roku, the Roku device sends its rida to Chromecast.

To pass a resettable device identifier when you are not using a Google Ads SDK, the following parameters must be appended to the ad request URL (all 3 must be present):

Parameter Description Value

A resettable device identifier that can be updated by the user at any time.

For example, a Google AdID, an Apple IDFA, an Amazon AFAI, a Roku RIDA, or an Xbox MSAI.

Type: string

Pass the Universally Unique Identifier (UUID), in the format described above.

For example:



A signal to indicate users’ expressed privacy preferences on platform controls according to that platform’s policies.

It is a requirement of Google and Google Marketing Platform policies to ensure that user choices are accurately adhered to when data is passed on ad requests. 

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.

Type: boolean

Possible values:

Pass one of the following values from the platform:

  • 0: Platform indicates Limit Ad Tracking is disabled
  • 1: Platform indicates Limit Ad Tracking is enabled
idtype The type of device.

Type: string

Possible values:

Pass the following for each device where this is supported (values are case sensitive):

  • adid: Android
  • afai: Amazon
  • idfa: Apple phones (iOS)
  • lgudid: LG
  • msai: Xbox
  • rida: Roku
  • tifa: Samsung
  • tvOS: AppleTV (tvOS)
  • vaid: VIDAA OS
  • vida: Vizio

If you use Ad Exchange, you should disclose in your privacy policy how the advertising IDs from user devices will be used. Learn more about advertising ID usage in Ad Exchange.

Ad requests that pass device identifiers are required to be secure (https). While our SDKs ensure this, if they are not used and the request passing a device identifier is not secure (http), the identifier is not shared with third-party buyers in Ad Exchange.

Session identifier for frequency capping

Per the IAB's Guidelines for Identifier for Advertising (IFA) on OTT platforms, a session ID is a temporary, privacy-safe advertising identifier that can be used for frequency capping, competitive ad exclusions, and sequential ad rotation within a single user session. Unlike other advertising identifiers that persist across multiple sessions, such as PPID, device IDs (as described above), or web cookies, the max duration that a session identifier may persist in Ad Manager is 6 hours.

Session identifiers are supported on CTV environments and in-stream video inventory from mobile app devices. There are several instances where they may be valuable, such as:

  • Instances where a user has disabled personalization on their device (where is_lat=1)
  • If you're monetizing inventory on a device that doesn't have a privacy-safe IAB-compliant IFA value
  • When you need an alternative to an IFA or PPID value to limit access to your first-party audience data

This identifier may be passed alongside other identifiers that are supported in Google Ad Manager, such as cookies, though the identifier may not be used for ad targeting. The value of a session ID must not contain any personal information, third-party identifiers or device IDs. This identifier is used for enabling frequency capping on both programmatic-eligible requests and reservations.

Session IDs are automatically included on ad requests from IMA SDK and Programmatic Access Libraries, but publishers can opt out by setting sid=0. Learn more about the sid parameter.

Publishers are required to proactively inform users about this use case and provide opt-out controls where required by state or local law. Refer to the Ad Manager and Ad Exchange program policies for more information.

Was this helpful?

How can we improve it?
Clear search
Close search
Google apps
Main menu