Skip to content

Latest commit

 

History

History
80 lines (61 loc) · 3.47 KB

bidViewable.md

File metadata and controls

80 lines (61 loc) · 3.47 KB
layout page_type title description module_code display_name enable_download vendor_specific sidebarType
page_v2
module
Module - Bid Viewability - GAM
Triggers a BID_VIEWABLE event when a rendered bid is viewable according to Active View criteria
bidViewability
Bid Viewability - GAM
true
true
1

Bid Viewability - GAM

{:.no_toc}

  • TOC {:toc}

Overview

This optional module will trigger a BID_VIEWABLE event which can be consumed by Analytics adapters. In addition, the winning bidder can implement an onBidViewable method to capture this event.

Notes:

  • The module does not work with adservers other than GAM and only with GPT integration. See the other Bid Viewable Event module for an ad server independent version.
  • The GPT API is used to find when a bid is viewable. See GPT documentation for more details.
  • This event is fired when an impression becomes viewable, according to Active View criteria.
  • When a rendered PBJS bid is viewable the module will trigger BID_VIEWABLE event, which can be consumed by the winning bidder and analytics adapters
  • The module works with Banner, Outsteam and Native creatives

Instead of listening for events, bidders may supply a bid.vurls array and this module may fire those pixels when the viewability signal is received. Publishers can control this with module config firePixels: true. Please note that GDPR and USP related parameters will be added to the given URLs.

{: .alert.alert-warning :} This feature doesn't work with Instream Video, as GPT's impressionViewable event is not triggered for instream-video-creative

The default logic used to find a matching Prebid.js bid for a GPT slot is

(bid, slot) => (slot.getAdUnitPath() === bid.adUnitCode ||
        slot.getSlotElementId() === bid.adUnitCode)

Configuration

{: .table .table-bordered .table-striped } | Field | Scope | Type | Description | |----------+---------+--------+-----------------------------------------| | bidViewability | Required | Object | Configuration object | | bidViewability.enabled | Required | Boolean | when set to true, the module will emit BID_VIEWABLE when applicable. Default: false | | bidViewability.firePixels | Optional | Boolean | when set to true, will fire the urls mentioned in bid.vurls which should be array of URLs. Default: false | | bidViewability.customMatchFunction | Optional | function(bid, slot) | this function will be used to find the matching winning bid for the GPT slot. See above for the default. |

Example of setting module config

    pbjs.setConfig({
        bidViewability: {
            enabled: true,
            firePixels: true,
            customMatchFunction: function(bid, slot){
                console.log('using custom match function....');
                return bid.adUnitCode === slot.getAdUnitPath();
            }
        }
    });

Example of consuming BID_VIEWABLE event

    pbjs.onEvent('bidViewable', function(bid){
        console.log('got bid details in bidViewable event', bid);
    });

Related Reading