Multiple parent publishers - ad tags handling?

106 views
Skip to first unread message

Stenlik

unread,
Feb 23, 2024, 6:27:26 AM2/23/24
to Interactive Media Ads SDK

Hello, 


We as Ad Manager publisher use third-party provider to represent our inventory.


We are considering adding one more parent publisher (according to the documentation we could have up to 15 parents managing our inventory).


How do we handle the ad requests in Google IMA?


Every parent publisher delivers its own tag. Does it mean we send two requests (see here https://developers.google.com/interactive-media-ads/docs/sdks/tvos/client-side/multiple-requests?


What happens if both providers return us the video ad? Does the Google Ad Manager itself select the ad with the highest revenue? How does it work please?


Thanks a lot for help

Regards,

STeN


IMA SDK

unread,
Feb 23, 2024, 12:24:30 PM2/23/24
to petr.m...@gmail.com, ima...@googlegroups.com

Hi STeN,

Thank you for reaching out to the IMA SDK support team.

Looking at your query I understand that you have some questions related to Multiple parent publishers in Ad Manager.

Based on the information you provided I can confirm that the platform type is tvOS and the SDK integration type is client-side. Can you confirm the same?

Please find the answers below for your questions:

  • How do we handle the ad requests in Google IMA?
    • IMA SDKs can request ads from any VAST-compliant ad server and manage ad playback in your apps. IMA can also display companion ads, report metrics to ad servers, and incorporate key buying signals, such as Active View viewability, IDFA/ADID, and content targeting.
    • There are two ways to implement IMA SDKs: client-side, which combines ad and content video within your app, and dynamic ad insertion (DAI), which combines ad and content video on the Ad Manager servers, and then returns a single video stream to your app for playback.
  • Does the Google Ad Manager itself select the ad with the highest revenue? How does it work please?
  • Every parent publisher delivers its own tag. Does it mean we send two requests. What happens if both providers return us the video ad? 
    • Can you clarify what you mean by "2 requests"? Are you requesting for a playlist of ads (VMAP) or through multiple ad requests?
    • Can you provide us with the affected Ad Tags for us to check on our end?
    • Kindly check if you can replicate the behaviour you described on the VSI or our sample app as well.

You can provide the following details via reply privately to the author option or directly provide it to the link below

If the file(s) you are looking to share are less than 25mb in total you can attach them to this case on your next reply. If you are having trouble attaching your file to this case or if your file(s) are larger than 25mb, you can share your files with me by performing the following steps:

1. Navigate to

https://docs.google.com/forms/d/e/1FAIpQLSfkAiXMeYP-fw1W3Z-tT9uwmATEKO5X6S-th0gR2ezdKaaqfg/viewform?usp=pp_url&entry.400550049=IMA+SDK&entry.460850823=5004Q00002rzOa7QAE&entry.80707362=00224565

2. Fill out all fields, and attach your file(s).

3. Please reply back on this thread when you have uploaded your file(s). Please do not share this link. 

This message is in relation to case "ref:!00D1U01174p.!5004Q02rzOa7:ref"

Thanks,
 
Google Logo IMA SDK Team


Stenlik

unread,
Feb 24, 2024, 1:01:49 PM2/24/24
to Interactive Media Ads SDK

Hello IMA SDK Team,

Thank you for response! See please my answers in the text

>> Looking at your query I understand that you have some questions related to Multiple parent

>> publishers in Ad Manager.

[STEN] That is correct. In our case we are now one parent publisher in the "Inventory mode" and we use the ad tag they delivered to us. The parent publisher manages the inventory on our behalf. Newly we plan to add another parent publisher from the list here https://www.google.com/ads/publisher/partners/find-a-partner/#!?modal_active=none. It should be possible as described here https://support.google.com/admanager/answer/11130475.

>> Based on the information you provided I can confirm that the platform type is tvOS and the SDK

>> integration type is client-side. Can you confirm the same?

[STEN] I am sorry for including the wrong link. We use HTML5 IMA SDK. The correct link is https://developers.google.com/interactive-media-ads/docs/sdks/html5/client-side/multiple-requests 

>> Can you clarify what you mean by "2 requests"? Are you requesting for a playlist of ads (VMAP) or through multiple ad requests?

[STEN] Every parent publisher gives us one video ad tag (https://support.google.com/admanager/answer/9579170). So we have two ad tags and the question is what we should do with them?

  1. I guess to get the add now we need to call both as described here https://developers.google.com/interactive-media-ads/docs/sdks/html5/client-side/multiple-requests. Is that correct assumption?
  2. Based on the article you have kindly shared shared with us (https://support.google.com/admanager/answer/11204312?hl=en) I think the Ad Manager receives our two ad tag requests, next sends two bid requests to Ad Exchanges to get the advertisements. If Ad Manager receives back two bid responses I guess it selects the one with the higher CPM. Is that correct assumption?

See the layman drawing of our case:

Multiple_parent_publishers.png


Thanks a lot for response,

Kind Regards,

STeN

IMA SDK

unread,
Feb 26, 2024, 5:22:56 AM2/26/24
to petr.m...@gmail.com, ima...@googlegroups.com
Hi STeN,

Thank you for getting back to us.

Handling multiple ad requests with UserContext feature developed to handle multiple ad requests, With this feature you can send requests with one ads manager.

UserContext provides a mechanism to associate relevant information with each request, allowing you to identify which response belongs to which request during handling.

It is not to develop to prioritize with higher CPM etc. 

Example- If a user is using two video ads in one page, with this he can quickly load second ads, both ads will load async as per the context, it can be used for preloading. 
Both request can send like below:

 const adTagUrl1 = "https://pubads.g.doubleclick.net/gamp/ads?iu=/1234567890/video&sz=640x480&autoPlay=false";
  const adTagUrl2 = "https://pubads.g.doubleclick.net/gamp/ads?iu=/9876543210/video&sz=300x250&autoPlay=false";

  // Create ad containers
  const adContainer1 = document.getElementById("adContainer1");
  const adContainer2 = document.getElementById("adContainer2");




 const request1 = new google.ima.AdsRequest(
    adTagUrl1,
    adContainer1,
    null, // contentPlayhead not needed for pre-rolls
    context1
  );
  const request2 = new google.ima.AdsRequest(
    adTagUrl2,
    adContainer2,
    null, // contentPlayhead not needed for mid-rolls
    context2

 function onAdsManagerLoaded(event) {
    const adsManager = event.getAdsManager();
    const context = adsManager.getUserRequestContext(); // Access context

    // Handle ad manager based on context (e.g., initialize and play)
    if (context.id === "banner_top") {
      adsManager.initialize();
    } else if (context.id === "interstitial_mid") {
      // Handle mid-roll specific logic (e.g., pause content, play ad)
      adsManager.initialize();

Stenlik

unread,
Feb 27, 2024, 4:49:01 AM2/27/24
to Interactive Media Ads SDK
Hello.

Hello,

Thank you very much for the advice. I appreciate it very much.
You are a great support!

I wish you a nice day
Regards,
STeN

Reply all
Reply to author
Forward
0 new messages