The PubMatic RTD module provides dynamic yield optimization by fetching real-time pricing floor data and generating targeting data for ad server integration and reporting. The module integrates with Prebid’s Price Floors system as per Dynamic Floor Data Provider guidelines.
Step 1: Contact PubMatic to get a publisher ID and create your first profile. Additional settings like floor multipliers, and key-values enablement can be managed through the PubMatic UI.
Step 2: Integrate the PubMatic Analytics Adapter (see Prebid Analytics modules) as well as the Price Floors module.
Step 3: Prepare the base Prebid file.
For example:
To compile the Price Floors, PubMatic RTD module and PubMatic Analytics Adapter into your Prebid build:
gulp build --modules=priceFloors,rtdModule,pubmaticRtdProvider,pubmaticAnalyticsAdapter
Note: The PubMatic RTD module is dependent on the global real-time data module : rtdModule
, price floor module : priceFloors
and PubMatic Analytics Adapter : pubmaticAnalyticsAdapter
.
Step 4: Set configuration and enable PubMatic RTD Module using pbjs.setConfig.
This module is configured as part of the realTimeData.dataProviders
. We recommend setting auctionDelay
to at least 250 ms and make sure waitForIt
is set to true
for the pubmatic
RTD provider.
const AUCTION_DELAY = 250;
pbjs.setConfig({
// rest of the config
...,
realTimeData: {
auctionDelay: AUCTION_DELAY,
dataProviders: [
{
name: "pubmatic",
waitForIt: true,
params: {
publisherId: `<publisher_id>`, // please contact PubMatic to get a publisherId for yourself
profileId: `<profile_id>`, // please contact PubMatic to get a profileId for yourself
},
},
],
},
// rest of the config
...,
});
Name | Type | Description | Default |
---|---|---|---|
name | String | Name of the real-time data module | Always pubmatic |
waitForIt | Boolean | Should be true if an auctionDelay is defined (mandatory) |
false |
params | Object | ||
params.publisherId | String | Publisher ID | |
params.profileId | String | Profile ID |
The module sets the following targeting keys for ad server integration and reporting:
Key | Description | Values |
---|---|---|
pm_ym_flrs | Whether RTD floor was applied to the auction | 0 (not applied)/1 (applied) |
pm_ym_flrv | Floor value after applying dynamic multipliers | Decimal value (e.g., “1.25”) |
pm_ym_bid_s | Bid outcome status | 0 (no bid), 1 (won), 2 (floored) |