Nepomuk Seiler
highfivve / Head of Engineering
A
Do you have a test page?
Q4 is ramping up, and so are the number of broken campaigns and creatives. “This should have been live last week” is the mantra for this time of the year. For a publisher it’s hunting season for creatives that trash your page’s user experience. This is a thankless and cumbersome task, because options to debug crappy creatives are too often not available.
What is a creative?
It is the ad that should be displayed. Technically it’s like a mini website – for standard display ads. For rich media formats, it contains logic that positions the ad directly on the publisher’s website by adding new elements and styles. Usually, creatives are built from a template with placeholders that are campaign specific, like images, texts, and links. Rich media formats can include page-specific variables to enable optimal styling. The smarter formats even allow the publisher to set these variables—for example, specifying where the ad should be placed or which elements should be used to align it.
The point is that there are millions of creatives but far fewer templates. And if those are broken, I want them fixed!
How to write a good bug report
If you want something to be fixed, you need to describe what’s broken. This is where shit gets complicated. A good bug report, in my opinion, must have a “steps to reproduce”-section. For a broken creative this most likely looks like this:
- Open Chrome Browser
- Go to URL xyz
- Reload the page until you get lucky
I think we can improve on step 3. Like a lot. Let me offer you some options to keep us sane.
Do you have a test page?
No! No, I don’t have one and I refuse to build one, because if I do,I need to build hundreds of them. For every website, every page layout, every partner, every goddamn format. No, I don’t have a test page. And there doesn’t have to be one.
Always On Test Campaign
You have a system with probably a gazillion targeting parameters. And if you can target on the moon phase or a user’s pet preference, your system should be able to handle a test parameter. I do not care how these test campaigns are triggered, but here are a few examples:
- Magic URL that sets a test campaign Cookie. You could trigger arbitrary formats through different URLs. Awesome! Best variant so far.
- Preview URL that triggers a certain campaign. This works even without Third Party Cookies, but some publishers strip unknown query parameters, which breaks this technique. Google Ad Manager has this feature built-in, which is one of the really useful ones!
- Magic user agent. A bit technical, but manageable and gets the job done.
- Using the Prebid debug mode. This was a little awkward as the page was littered by test ads from one partner.
- Prebid bids parameter that would enable a test mode. This requires an ad tag solution that supports this.
I really like the Cookie variant for a couple of reasons
- Easy testing – clicking a link. Done.
- Ability to switch between different formats by using different links.
- Extensible. New format, new link. It’s super easy to pre-audit new formats.
To all SSPs, creative providers, and anyone else who needs to hear this: Please give us a way to test your creatives!
Prebid Debugging Module
There’s another way, which is a bit trickier and more technical, but can serve as a last option: The Prebid Debugging Module. In nutshell, it lets you intercept and override bid responses. In order to test a creative, you would override the bid response of the given partner and set the CPM insanely high, so it always wins and gets rendered.
A few convenient features could improve the process, such as remote configurations that allow partners to simply send a link to a JSON configuration file. I could copy and paste it into the Chrome extension to view the test ad instantly. However, no SSP with problematic rich media formats has even been able to send a creative from a broken campaign—or a test creative, for that matter.
Rich Media Formats
All these points mostly apply to rich media formats that break out of the defined ad slot and change the page: adding an overlay (floor ads, push-up billboards), taking up as much space as possible (dynamic sidebar), placing the ad around the content on desktop (fireplaces, wallpaper, skins, … ), sticky video players and others.
I know that implementing those is genuinely hard. Every website is implemented differently and it is super hard to provide a generic solution that “just puts the ad correctly”. And things break in unimaginable ways, because a publisher changed something on their website, or your creative template is missing another edge case. This is why it is so important to make it incredibly easy to test a creative on any website at any time. Investing in the right tools and infrastructure will save hundreds of hours, keep users, publishers, and advertisers satisfied, and strengthen your reputation.
There should be standards for all standard formats. I covered this topic in my last ad tech diary, if you’re interested in learning more.
View the original article here.