QA Prod and Staging

Make sure your website is currently set with Pubstack Ad Management

Pubstack Inventory Configurations

  • Ad Refresh

    Ensure that you have Ad refresh rules in place. 2 examples of such rules are: mobile and desktop rules with 15s and 20s viewability timer respectively. These rules are afterwards called on their respective device in the last step of the creation of the ad stack. See example below:iimage

  • Adunits

    Check that the Ad units defined match the ad unit code in your adserver and the adunit html element match the id in your site’s html; Note that div ids are case sensitive. Ad unit sizes requested are also defined here. You may use the export feature on the right, see screenshot below, to download the list of ad units and match with your list from your adserver.

    ad units
  • Sites & Stacks

    • Check that your context keys are added in the Pubstack UI. This is what allows you to have different configurations per page types of your site.

    • The different context keys are then used to call the right stacks. For e.g. if your site has a premium subscriber section, defining a context key, “subscriber” to “true”, can enable you to not show ads to those users.

    • The context keys are also used to define the adpath as used on your adserver, which, in the below example, is Google Ad Manager. Ensure that each level is set up to correspond to the structure on the adserver.

      contextkey-1
    • Ensure that GAM and your wrappers are enabled and properly configured.

      gam
    • Under the “Modules” tab, ensure that your ID solutions have been connected with the right parameters, where necessary, and connect your Real Time Data modules accordingly.

    • Check that site stacks are deployed. A live stack looks as follows:

      stack
  • Integrations

    • Check that your bidders and adserver modules are properly enabled and implemented under the “Integrations” tab. Some bidders require unique id mappings per adunit, which are defined on the SSP/Bidder side. An example of a criteo bidder setup looks as follows:

      integrations

Pubstack HTML implementation

  1. Open the source code of your website (shortcut: Crtl + U) or go to the address “view-source:https://www.yourwebsiteurl.com

  2. Check if you are using the correct script code. This code should be called in the header of the page right after the Consent Management Platform and should look as follows:

    <script async src='<https://boot.pbstck.com/v1/adm/XXXXXXXXXX>'></script>

    The XXXXXXXXX represents your site id which can be found here: https://app.pubstack.io/settings/sites

  3. Check if you have added all <meta> pbstck_context for Context:

    <meta name="pbstck_context:site_name" content="my_website" />
  4. Check if you have added all <meta> ad to send key/values to GAM (+SSPs):

    <meta name="ad:KV_exemple" content="MyValue" />
  5. Check all the above implementations again on pages calling different ad stacks

Professor Prebid live check

Professor prebid extension for Chrome’s user guide can be found here: https://docs.prebid.org/tools/professor-prebid.html

Checks available on this extension:

  • Check Adunits being requested on the current live page

    • Check if all Prebid bidders are correctly called on each adUnit

    • Check if all the right sizes are called on each adUnit

    • Check if each bidder is able to send a bid (Bidder name in blue, when a bid is received, with the bid CPM next to it)

      prof prebid
  • Check your Configurations are correctly set

    • Check bidder timeout setup
    • Check CMP timeout
    • Check installed modules
      installed modules
  • Check if ID Solutions are correctly set:

    id solutions

Check all the above settings again in a mobile view.

GAM Console checks

Open GAM console by either adding the “?google_force_console=true” parameter to your url or by using the following function in the browser’s console(ctrl+shift+i) :

googletag.openConsole()

The GAM console overlay allows you to check the following integrations and ensure that they match with your GAM setup:

  1. AdUnitPath

  2. div_id

  3. sizes

  4. key values sent at page level (4.1) and adUnit level (4.2)

key values

Proper Ad Rendering Guidelines

Ensure your ads fit into your website layout and are properly centered

An example of a wrong fit looks as follows:

wrong fit

Change the ad sizes requested to include those that fit the layout:

right fit

An example of a quick css fix that can center an ad slot div within an element is:

margin:0.5em auto;

Pubstack Inventory Optimisations

  • Lazy Loading

    Lazy loading allows you to keep your viewability score high, which is appealing to advertisers. Pubstack lazy load settings are defined as rules which have to be assigned to your stack. Here’s an example of a lazy loading rule setup:

    lazy loading

    What the above setting implies is that ad units within 3 viewports of the user would start their prebid auctions with their connected SSPs, and all adunits within 2 viewports would make their GAM calls and finally the resulting winning bid, if any, would be rendered on the webpage when the user is 1 viewports away. A user visiting bbc.com would have the rules applied as follows:

    bbc
  • Floor Price

    Note that the floor price rule defined on the Pubstack Ad management platform applies to the prebid auctions. Once created, the floor price need to be called on their respective stacks under the right device. Below is an example of a stack that sets a 0.1 EUR floor price rule for its regular desktop ad (e.g. 300x250, 728x90) units, and 0.8 EUR rule for larger and high impact desktop ad sizes (e.g. 970x250, 1800x1000)

    floor price