Amphtml: Ad Tech Developers, please support render-start

Created on 26 Sep 2016  Â·  17Comments  Â·  Source: ampproject/amphtml

Dear @ampproject/ads team. We'd like to improve the ad loading experience in AMP and we need your help. Would you please implement the 'render-start' and 'no-content-available' APIs.
Once you've implemented the API, please update for your extension
https://github.com/ampproject/amphtml/blob/master/ads/_config.js

Below are the ones that have already added support.
CC @lannka

  • [x] adsense
  • [ ] accesstrade
  • [ ] adblade
  • [ ] adform
  • [ ] adgeneration
  • [ ] adition
  • [ ] adman
  • [ ] adreactor
  • [ ] ads.extern
  • [ ] adsnative
  • [ ] adspirit
  • [ ] adstir
  • [ ] adtech
  • [x] aduptech
  • [ ] amoad
  • [ ] appnexus
  • [ ] atomx
  • [ ] caprofitx
  • [ ] chargeads
  • [ ] colombia
  • [ ] contentad
  • [ ] criteo
  • [ ] dotandads
  • [x] doubleclick
  • [ ] eplanning
  • [ ] ezoic
  • [ ] flite
  • [ ] genieessp
  • [ ] gmossp
  • [ ] imobile
  • [ ] improvedigital
  • [x] inmobi
  • [ ] kargo
  • [ ] mads
  • [ ] mantis
  • [ ] mediaimpact
  • [x] meg
  • [ ] microad
  • [ ] mixpo
  • [ ] nativo
  • [ ] nend
  • [ ] openadstream
  • [ ] openx
  • [ ] plista
  • [ ] pubmatic
  • [x] pubmine
  • [ ] pulsepoint
  • [x] revcontent
  • [ ] rubicon
  • [x] sharethrough
  • [x] smartadserver
  • [ ] sortable
  • [ ] sovrn
  • [ ] taboola
  • [ ] teads
  • [ ] triplelift
  • [ ] webediads
  • [ ] weborama
  • [ ] widespace
  • [ ] yahoojp
  • [ ] yieldbot
  • [x] yieldmo
  • [ ] yieldone
  • [ ] zergnet
  • [ ] zucks
monetization

All 17 comments

@jasti PR merged in: https://github.com/ampproject/amphtml/pull/5080, scheduled for upcoming release.

From the example I see, to start using renderStart api, ad request has to emit an event to let amp-ad know that ad is successfully fetched. For e.g https://github.com/ampproject/amphtml/blob/216a628337fd472520bd839c312f82f1d839fde2/ads/google/doubleclick.js#L261

I believe not all ad network support this kind of event, instead of emit an event after fetching ad, we just insert the ad into DOM. To support this kind of event, I believe the integration with amp-ad will not be so easy like before.

We are happy to support this if this is neccessary and will provide a better experience for ad loading but if you have any advise I would like to listen

I have the same dilemma as yang-wei. My ad network adds the ad tag to the DOM, but does not trigger an event before it is rendered. I can call renderStart right before I add it to the DOM, but it is not really rendering at that point (because it hasn't even called our ad server at that point). We do trigger an event after the ad is rendered, but it seems like that is too late.

Also, my ad units will always return an ad so we will never call no-content-available.

@yang-wei @frazjp65 renderStart API is not mandatory. But it helps:

  • A better ad loading experience. We'll show loading indicator and fallback content at the right time point. #3817 #3831
  • Support multi-size ad request. Pub can request multiple ad sizes in one request, and do a resize based on the actual ad size via renderStart API. #3176
  • Client side ad latency reporting. And we would make this data available to ad networks.

@frazjp65 How exactly do you define "after the ad is rendered"?

renderStart should be called just after the ad was rendered (otherwise you cannot know the dimensions yet), but ideally before all its sub resources have finished downloading.

@cramforce

It is after the entire ad unit and all of the assets are loaded. I can add it then, but it would miss your ideal situation.

@frazjp65 Yep, that may be too late, especially because we have a timeout that is designed to be reasonable for an ad request, but not for more requests. Any chance you could add an event for "Ad request just came back and we can start rendering"?

@cramforce I think that is possible, but I am a bit backlogged and can't make any promises on when I will get that done.

@cramforce I have a branch in development to get revcontent updated with a
stripped down tag, and use of window.context.requestResize() to achieve
proper responsive height. Thank you.

On Sep 29, 2016 11:13 AM, "Joseph Frazer" [email protected] wrote:

@cramforce https://github.com/cramforce I think that is possible, but I
am a bit backlogged and can't make any promises on when I will get that
done.

—
You are receiving this because you are on a team that was mentioned.
Reply to this email directly, view it on GitHub
https://github.com/ampproject/amphtml/issues/5234#issuecomment-250495733,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ABqVmcuxYMNhO_e3fCZUZWPd0HYw3Dddks5qu9V1gaJpZM4KG25j
.

Has anyone experimented with a MutationObserver to monitor when ad elements are added to the DOM (async requests etc.)? Aside from using a setTimeout, I've found that when inside a MutationObserver.observe() event, this provides better timing for detecting a valid/non-zero body height value which can then be passed to renderStart() or requestResize().

@jasti @cramforce Implemented render-start (and made a few other updates) in https://github.com/ampproject/amphtml/pull/6214

Hey @RonanDrouglazet, a cursory review shows that Teads serves quite a high number of ads to AMP content. Would you please look into supporting render-start? Thanks!

Hi @jasti,
Stéphane from Teads here :)
I just wanted to let you know we're working on it ;)
Thanks!

@jasti @lannka : just to let you know the PR for Teads supporting renderStart is here => https://github.com/ampproject/amphtml/pull/6750
Have a good one!

@jasti @lannka

Hi guys,

here is the PR which contains the support for renderStart and noContentAvailable for adup-tech ads => https://github.com/ampproject/amphtml/pull/7152

@jasti @lannka

Our PR https://github.com/ampproject/amphtml/pull/7152 is merged and released, so you can activate the checkbox for adup-tech ads! :)

Thanks everyone for adding support. We are closing this issue since we have some decent adoption of the larger networks.

Was this page helpful?
0 / 5 - 0 ratings

Related issues

choumx picture choumx  Â·  50Comments

zhouyx picture zhouyx  Â·  60Comments

retornam picture retornam  Â·  52Comments

vockalimo picture vockalimo  Â·  49Comments

choumx picture choumx  Â·  113Comments