Feature Set | Feature | Description | PBS-Go | PBS-Java |
---|---|---|---|---|
Auction | Timeouts | Lower the incoming tmax before sending to bidders in order to account for internal processing time and network delay. | ||
Currency | Core | Loads currency conversions from an outside source, allows non-supported currencies to come in on the OpenRTB2 request, converts bid currencies to the request’s prefered currency. | ||
Currency | Request-Defined Rates | Allows the request to define its own currency rates. | ||
Currency | Convert Currency Method | Allows adapters to convert bid floors to a different currency if needed. | ||
Currency | Bidder Currency Filter | Allows adapters to define their acceptable currencies. PBS will not call them for auctions being conducted outside of this set. | ||
Deals | Core | Basic deal support, creating hb_deal targeting when appropriate. | ||
Deals | Deal prioritization | Supports the ‘preferdeals’ targeting flag to give deals the priority when PBS returns ad server targeting. | ||
AMP | Core | Reads and responds to the /openrtb2/amp endpoint | ||
Targeting | Core | Request can specify includewinners and includebidderkeys . These cause PBS to emit seatbid[].bid[].ext.prebid.targeting values. |
||
Targeting | Format | Request can specify includeformat , which causes PBS to emit hb_format along with other targeting values like hb_pb, etc. |
||
Targeting | Custom Targeting | Request can specify ext.prebid.adservertargeting , which causes PBS to emit custom targeting values. |
||
Targeting | Custom Prefix | The request can specify ext.prebid.targeting.prefix , which causes PBS to emit targeting with this value instead of hb as a prefix. |
||
Targeting | hb_env for mobile app | When called with an app object, PBS emits hb_env:mobile-app in the response targeting. | ||
Targeting | hb_env for AMP | When called by the /amp endpoint, PBS emits hb_env:amp in the response targeting. | ||
Request Params | Global Params | Publishers can specify adapter-specific cross-impression attributes. | ||
Price Granularity | Core | Request can define quantization rules. Bids are quantized before being added to ad server targeting. | ||
Price Granularity | Mediatype pricegranularity | Request can define different quantization rules for different mediatypes. Bids are quantized before being added to ad server targeting. | ||
Bid Adjustments | Core | Allows publishers to adjust bid prices to account for gross/net or consistent discrepancies. | ||
Bid Adjustments | By mediatype | Allows for different bid adjustments by mediatype banner, video, native, audio. | ||
Price Floors | Core | Support for the price floors feature. | ||
GDPR | TCF 2 core | Able to: read the TCF2 global vendor list, parse incoming TCF2 consent strings, and take appropriate enforcement action. | ||
GDPR | TCF 2 Account Config | Able to turn on and off TCF2 enforcement per account. | ||
GDPR | Support for basicEnforcementVendors | Host companies can define bidders that don’t require vendor consent but do require Purpose consent. | ||
GDPR | TCF 2 Geo-Fencing | If the incoming request contains device.geo.country, PBS will enforce the EEA if the request is flagged as being in GDPR scope. | ||
GDPR | TCF 2 Geo-Lookup | Can use a geographic lookup service to help determine whether the incoming request is in-scope for GDPR. | ||
GDPR | TCF 2 channel exception | Can be configured to turn off GDPR checks for a specific account and a specific channel. e.g. Account 123 has a different legal basis for AMP. | ||
DSA | DSA passthrough | Process ORTB DSA fields. | ||
DSA | DSA initialization | Inject account-specific ORTB DSA fields. | ||
US Privacy | USP core | Able to: read the US Privacy consent string (CCPA) and take appropriate enforcement action. | ||
US Privacy | USP AMP support | Able to: read the US Privacy consent string from AMP requests and take appropriate enforcement action. | ||
GPP | GPP Passthrough | Global Privacy Platform parameters are passed through auction and usersync requests. | ||
GPP | GPP TCF2/USP Support | PBS reads the Global Privacy Platform string and pulls out TCF2/USP strings when appropriate. | ||
GPP | USGen Privacy Module | The Activity Control system calls this module that examines the incoming GPP parameters and determines whether a given Activity should be allowed when the request contains SIDs 7-12. | ||
GPP | US Custom Logic Privacy Module | Similar to the USGen Privacy Module, but accounts specify the interpretation of the GPP string for SIDs 7-12. | ||
COPPA | Core | Able to read the COPPA flag and take appropriate enforcement action. | ||
Global Privacy Control | Core | Passes the Sec-GPC header through to bidders. | ||
Activity Controls | Core | Account-level controls over privacy sensitive activities. | ||
Activity Controls | GPP conditions | Support for gppSid , geo , and gpc conditions. |
||
Cache | Bids core | Accepts the ext.prebid.cache.bids parameter, storing bid objects in PBC. | ||
Cache | VAST core | Accepts the ext.prebid.cache.vastxml parameter, storing VAST responses in PBC. | ||
Cache | Winning-only flag | Accepts a ‘ext.prebid.cache.winningonly’ parameter on the request. If true, instead of caching all bids and VAST, only the winning bid or VAST is stored. | ||
Cache | Application Storage | Supports storing data beyond bids and VAST, e.g. module-specific data. | ||
Stored Requests | Core | Accepts a stored request ID in the OpenRTB, looks it up against a local data store, and merges with the OpenRTB request record. | ||
Stored Requests | Unique Per Account | If an account ID is provided, PBS can distinguish between otherwise identical SRIDs. | ||
Stored Requests | Unique BidRequest IDs | Supports the generate-storedrequest-bidrequest-id setting telling Prebid Server to override the static bidrequest.id in the stored request with a UUID. | ||
Stored Responses | Stored Auction Responses | Accepts a stored response ID in the OpenRTB, looks it up against a local data store, and merges with the OpenRTB response record. | ||
Stored Responses | Stored Bid Responses | Accepts a stored response ID in the OpenRTB, looks it up against a local data store, and uses that as the bid adapter response. | ||
Stored Responses | JSON can be supplied on the request | Accepts JSON in the OpenRTB and merges with the OpenRTB response record. | ||
First Party Data | Core | Accepts core first party data attributes and supports ext.prebid.data.bidders. | ||
First Party Data | Bidder-specific global data | Accepts bidder-specific first party data attributes for site, app, and user. | ||
First Party Data | Bidder-specific impression data | Accepts bidder-specific first party data attributes at the imp-level. | ||
First Party Data | AMP first party data | Accepts first party data attributes on an AMP request. | ||
Supply Chain | Bidder-specific schains | Accepts bidder-specific schain | ||
Supply Chain | Host SChain | The host company can supply a global schain that’s appended to the list of incoming nodes in source.ext.schain. | ||
Supply Chain | ORTB 2.4 compatibility | If source.ext.schain doesn’t exist but ext.schain does, PBS copies the latter to the former. | ||
Publisher Accounts | Core | Ability to enforce that requests coming in have a valid account ID. | ||
Publisher Accounts | AMP account parameter | Accept the account parameter on the AMP request. | ||
Publisher Accounts | Account-specific TTLs | Allow each account ID to have a custom PBC time-to-live for banner and video. | ||
Video | Core | Support for basic instream and outstream video: passes video parameters to adapters, stores VAST responses when instructed. | ||
Video | Outstream renderers | Support for bidders specifying their own renderers for outstream video. | ||
Video | Long-form video | Support for the long-form video endpoint. | ||
Video | IAB advertiser category mapping | Able to map IAB advertiser categories to a supplied mapping table. | ||
Video | Echo video attributes | To support mobile video, copies stored request video attributes to the response. | ||
Multiformat | Core | Impressions may specify more than one mediatype (banner, video, native) | ||
Multiformat | Preferred MediaType | Bidders differ with their ability to support multiple mediatypes in a single adunit. The preferred mediatype feature allows publishers to control which mediatypes are seen by certain bidders in a multiformat scenario. | ||
Mobile App | Request Passthrough | Apps can pass render-time parameters from the request through to the response. | ||
Audio | Core | Passes the audio mediatype through to bidders that support audio. | ||
Native | Core | Passes the native mediatype through to bidders that support native. | ||
Native | asset type preprocessing | If a native bid response doesn’t contain asset.type, PBS will link to the asset in the request by ID and copy the type into the response. | ||
Interstitials | Core | Support device.ext.prebid.interstitial.minwidthperc and device.ext.prebid.interstitial.minheightperc parameters, dynamically updating the impression format object from a configurable list of sizes filtered by these parameters. | ||
Aliases | Core | Maps a biddercode on an incoming request to a specific server-side bid adapter named in the request or defined in config. | ||
Aliases | GVL ID support | Define the IAB GVL ID for an aliased biddercode. | ||
User ID Sync | Core | Implements the /cookie_sync and /setuid endpoints. Bidders may choose either redirect or iframe method. | ||
User ID Sync | Multi-Method | Bidders can supply both pixel redirects as well as iframe syncs. | ||
User ID Sync | Cooperative sync | Does a pixel sync with more than just the bidders on the page. | ||
User ID Sync | Account override | Allows accounts to override the cooperative sync feature and bidder limits. | ||
User ID | EID Permissions | The Publisher can define which bidders receive which extended user IDs. | ||
Events | Events | Ability to process the /event endpoint, place /event URLs in the OpenRTB response, and place /event URLs in VAST XML. | ||
Events | Events vasttrack endpoint | Ability to process the /vasttrack endpoint initated by Prebid.js, placing /event URLs in VAST XML. | ||
Events | Events BidID Generation | Some bidders don’t generate unique enough BidIDs to join with auction events. This feature allows the host company to inject a PBS-generated BidID alongside the bidder-generated ID. | ||
Auction | MultiBid | Allow named bidders to supply more than one response. | ||
Analytics | Analytics module support | Allows developers to plug in a custom analytics adapter. | ||
Analytics | Client-side analytics support | Share analytics tags with client-side analytics adapters. | ||
Bid Response Validation | Validate secure markup | PBS can configurably reject bid responses that don’t supply a secure creative when in a secure context. | ||
Bid Response Validation | Validate bid sizes | PBS can configurably reject bid responses with sizes that are bigger than the request dimensions. | ||
Bidder Info Endpoints | Core | Provides details on which bidders and parameters exist in this Prebid Server. | ||
Troubleshooting | Test flag | Accepts the OpenRTB ‘test’ flag, emitting additional debug info on responses. | ||
Troubleshooting | Debug flag | Accepts the ext.prebid.debug flag, emitting additional debug info on responses. | ||
Troubleshooting | Account-level Debug Control | Allows host companies to turn off debugging by account but allow for request-level overrides. | ||
Operations | Core metrics | Emits detailed operational metrics to back-end systems: Graphite, Influx, and Prometheus | ||
Operations | Circuit breaker | Protects system performance during fault scenarios by detecting problems with external and internal endpoints, turning them off temporarily when a problem occurs. | ||
Operations | Server default request | Support global defaults for incoming requests. | ||
Operations | IPv6 | Support taking IPv6 addresses and forwarding them to bidders. | ||
Operations | Request Logging Admin Endpoints | Log a limited number of requests to understand the raw data clients are sending. | ||
Metadata | x-prebid header | Put version information in outgoing HTTP headers. | ||
Modules | ortb2-blocking | Configure per-account OpenRTB blocking details. | ||
Anti-Fraud | Ads.Cert 2.0 Authenticated Connections | Includes authenticated connection signing header on outgoing bid requests to supported adapters. * | ||
Request Enrichment | Enhanced tid and request IDs | Fills out id, imp.id, source.tid, and imp.ext.tid | ||
Request Enrichment | Request Correction Module | Address client-side bugs that are stuck out in the wild. | ||
Privacy Sandbox | Passthrough | “auction enabled” flags are passed through to bidders and auctionconfig is forwarded from bidders. | ||
Privacy Sandbox | Topics headers | PBS reads the Chrome topics header and copies to user.data segments. | ||
Privacy Sandbox | Testing labels | PBS reads the Chrome labels header and copies to device.ext.cdep | ||
Auction Response | Bidders can supply Fledge auction config | If the request contains imp.ext.ae, bid adapters can return ext.prebid.fledge.auctionconfigs | ||
Auction Response | Response Correction Module | Deal with problems caused by certain unexpected bid responses. |
* Experimental feature not yet recommended for production.