Make Your Ad Server Serve You: 4 Questions to Ask

Phil Weinberg
Moving the Needle at RealSelf
4 min readMar 19, 2020

Don Draper would be awed into sobriety by the flexibility and targeting possessed by modern advertising. RealSelf serves close to 100 million ads a month to users, and we’ve learned a few things over the years about what makes an ad engine great. My aim here isn’t to endorse any particular ad platform, but to equip prospective buyers (or unsuspecting code monkeys tasked with implementing one from scratch) to ask the right questions.

1. Scale is more than requests per second: how many creatives can you support at once?

Imagine you have a feature-rich ad platform, with cutting-edge targeting and reports whose beauty and accuracy induces tears of joy among your data scientists. That sounds great, but if it can only handle 100 active creatives at once, it will dramatically constrain your ambitions to be the next Google. Engineers, when they think of scaling an ad engine, typically think of requests per second, but the total number of ads that can be in flight at any one time is equally important.

At RealSelf we allow providers to purchase ad units (we call them “spotlights”) that target a specific metro region (e.g. Seattle-Tacoma) and a specific treatment (e.g. Botox), and as a result we have over 70,000 active ads. These ads might have multiple creatives each, so the sheer scale of the number of creatives in the system might be problematic for some ad servers. If your ad solution effortlessly scales to millions of ad units, you can be as profligate with your ad provisioning as your sales strategy demands. If not, you can be creative with your creatives and reuse/reduce/recycle, like having a single creative that is just a JSON blob which can be restyled client-side for a given ad placement.

2. Emails don’t run Javascript: how do we serve ads in them?

Every week, RealSelf emails personalized digests to millions of users with updates on the site that may interest them (such as when new reviews or questions are posted). While it may be nice to have your platform serve ads across all mediums (email, web, mobile apps, etc.), not all ad servers have support for embedding advertisements in email. Depending on your email sending solution, you may be able to inject ads during email creation time, prior to sending. If that’s not an option, another way to get an advertisement in an email is to use an img tag with an anchor tag, the former of which will pull down an ad dynamically when the email is viewed and the latter of which points to a URL that can redirect to the ad’s target.

3. Reporting for duty, a duty for reporting: how quickly can we generate a report?

The great philosophical question that I’ve spent my life pondering is: if an ad is served, but the serving isn’t tracked, does it make a sound? My personal conclusion is yes — it is the sound is that of an angry advertiser walking away, while the account manager eyes me in a way that promises vengeance. Any ad server worth its salt should have ironclad impression and click tracking as well as fast, accurate, and segmentable reporting. Native support for third-party trackers is a nice plus, since that allows for hosting the advertiser’s preferred vendor at a per-creative level.

An added benefit of great reporting is forecasting, which will allow the sales team to ensure they don’t accidentally overpromise and underdeliver impressions or clicks. It can also reveal previously unknown — but valuable — segments like international traffic.

4. Iframe, you frame, we all frame: can we choose whether or not to iframe creatives?

It’s tempting to render ads directly on the page, without iframe’ing them, and it’s perfectly safe — as long as engineers dictate the ads’ content. When shady advertisers in trenchcoats start dropping off multimedia flash ads or bundles of obfuscated javascript, it’s probably better to encapsulate those in iframes, which limits their ability to do unsavory things (like steal users’ data or — gasp! — show a popup). If, due to regulatory requirements, the copy and/or style of an advertisement cannot change, iframing also insulates the creatives from site-wide CSS changes.

Closing thoughts

When I first joined RealSelf I had only the haziest idea of how internet ads worked, and I assumed getting a bunch of 300x250 slots rendered on a page was trivial work. Ah, the hubris of youth… Hopefully these few distilled learnings will help guide you on your quest for an ad server. There’s plenty I didn’t talk about, but asking these few questions to a prospective vendor will make you seem like a sophisticated customer.

Pssst, look here

I know I said I wouldn’t mention a particular company, but I’d like to give a shoutout to Adzerk, who’ve always been tremendously responsive and have been more of a partner than a vendor. Also, full disclosure, they gave us some sweet holiday treats from North Carolina, and I’m highly susceptible to bribery.

--

--