Send the Global Placement Identifier (GPID) to Index

Before you begin: Make sure that you are integrated with Index Exchange (Index). If you did not integrate with Index and want to learn about the various integration options, see Integrating with Index.

The Global Placement Identifier (GPID) is a global unique identifier that represents a specific ad unit or placement on a publisher's site. It is defined by the publisher and is passed in OpenRTB bid requests to DSPs. Unlike the traditional exchange-specific identifiers that are passed by each exchange for an ad unit, the GPID is a consistent representation of the ad unit across all exchanges and demand sources. For example, instead of receiving multiple exchange-specific identifiers for a leaderboard banner ad unit on website.com, the DSP will receive the same GPID for the ad unit across all exchanges, including Index.

GPID helps DSPs accurately assess an impression opportunity and improves transparency for buyers. If bid requests do not specify the GPID, a DSP may choose not to buy inventory or may buy inventory through different exchanges or channels.

Note: The GPID is not applicable to OTT/CTV ad units.

How to define the GPID

The GPID should be a descriptive string that uniquely identifies an ad unit on a particular page. Additional information, such as the size and device type is not required, but may be provided.

Note: It is important to pass the same GPID for each ad unit to every SSP that you work with so that DSPs can have the most efficient path to your inventory. If various supply partners are suggesting different methods to format GPIDs, it is important that you select only one method to format all your GPIDs.

Depending on your ad server, we recommend the following:

  • If you are using Google Ad Manager, the recommended GPID string is the Google ad unit path. If the path alone does not uniquely identify the specific ad unit on the page, then we recommend that you append the div id using a "#" as a separator at the end of the Google ad unit path. For more information on the ad unit path, see Google’s documentation on Get Started with Google Publisher Tags.

    Example

    If your ad unit path is /1234/homepage/ads and the div id for the ad unit is div id ="header", your GPID should look like this: /1234/homepage/ads#header

  • If you are using an ad server other than Google Ad Manager, you can define a string that uniquely identifies the ad unit on the page. You can use the examples below as a reference to define a unique GPID string.

Examples of acceptable GPID formats

The following are examples of formats that do not include additional information such as the size and device:

  • /1234/website1/leaderboard_atf

  • website1_skyscraper

  • Website1.homepage.rr1

  • /1234/website1#div-rightrail1

The following are examples of formats that include additional information such as the size and device:

  • /1234/website1/desktop/728x90/leaderboard_atf
  • website1_mobile_skyscraper_160x600

  • website1.homepage.300x250.rr1

The following are examples of formats that include the ad unit name only. These are also acceptable formats as they uniquely identify the ad unit:

  • leaderboard_atf

  • skyscraper

  • rr1

Example of a poor GPID format

The following is an example of a poor format as it does not uniquely identify the specific ad slot on the page:

  • /1234/website1

How to send the GPID to Index

Index accepts the GPID in OpenRTB bid requests in the gpid field or dfp_ad_unit_code field of the imp extension object. Based on your integration type with Index, follow any of the following tasks:

Integration option Task

Prebid.js

You can send GPID to Index in one of the following ways:

Option Instructions

Send GPID manually in the PBJS AdUnits. This option is recommended for:

  • Publishers who want to control how the GPID is defined.

  • Publishers who are using an ad server other than Google Ad Manager.

  1. Update your Prebid.js version to 6.5.0 or later.

  2. Specify the GPID in the ortb2Imp.ext.gpid field of the ad unit. For more information about this field, see Prebid's documentation on The Prebid Ad Slot and the GPID.

    Example:

    var adUnits = [
        {
          code: '/19968336/home/mpu',
          ortb2Imp: {
             ext: {
               gpid: '/19968336/home/mpu/atf'
              }  
           },
           [...]
         }
       ]
  3. Index sends the identifier to DSPs in the bid request imp extension object gpid field.

Send GPID using the GPT Pre-Auction Module. This option is recommended for publishers using Google Ad Manager as their ad server and who want to use their existing GPT ad unit codes to define GPID.

  1. Update your Prebid.js version to 4.42.0 or later with the GPT Pre-Auction Module enabled. For more information about this module, see Prebid's documentation on GPT Pre-Auction Module.
    Note: The GPT Pre-Auction Module will only detect banner ad units. To send video ad units, you must set the ad unit path for the video unit manually in the PBJS AdUnits.
  2. Make sure that the googletag.defineSlot() code statements are defined prior to the pbjs.requestBids() code statements in your Prebid.js configuration. This allows Prebid to pick up the ad unit paths that are defined in your Google Ad Manager configuration.

    • If the ad unit path is not unique enough as described in the How to define the GPID section above , create a customPbAdSlot function within the GPT Pre-Auction Module to send a unique value that is suitable for GPID. For Index to get the GPID defined in this custom function, you must be using Prebid.js version 6.5.0 or later. For more information on how to create this function, see Prebid's documentation on Example custom PbAdSlot function.

  3. Index will receive one of the fields, gpid, pbAdslot, or adSlot, based on priority, as defined by the GPT Pre-Auction Module. Index sends the identifier to DSPs in the bid request imp extension object gpid field.

Google Open Bidding

  1. Google sends Index the path for the ad unit in the bid request imp extension object dfp_ad_unit_code field. It is the Google Ad Manager ad unit code that uniquely identifies the ad slot. For more information on ad units, see Google’s documentation on Ad unit hierarchy.

  2. Index sends the identifier to DSPs in the bid request imp extension object gpid field.

Prebid Server, OpenRTB, and other server-to-server integrations

  1. Send the identifier to Index in the bid request imp extension object gpid field. If you do not specify this field, Index will take the identifier from the dfp_ad_unit_code field, if available. For more information about these fields, see List of supported OpenRTB bid request fields for sellers.

    Note: If you are already sending a common identifier in the imp object tagid field, we recommend that you also send the gpid field. This is recommended because some DSPs require that the gpid field must always be included in the bid request.

  2. Index sends the identifier to DSPs in the bid request imp extension object gpid field.

All other third-party integrations

Note: Make sure that the third-party vendor that you are integrated with supports GPID and has activated it for your integration.

  1. Send the identifier to Index in the bid request imp extension object gpid field. If you do not specify this field, Index will take the identifier from the dfp_ad_unit_code field, if available. For more information about these fields, see List of supported OpenRTB bid request fields for sellers.

  2. Index sends the identifier to DSPs in the bid request imp extension object gpid field.

Amazon

Transparent Ad Marketplace (TAM)
Amazon TAM automatically sends GPID to Index when available.

IX Library™

Not yet supported.