Mobile marketers commonly speak about programmatic media buying in the abstract as some sort of antidote to elevated CPMs on Facebook, Google, and other Self-Attributing Networks (SANs), as if accessing exchange traffic will help them gain a competitive advantage with user acquisition. The truth is that programmatic media buying’s allure is probably undeserved: buying on an exchange is really no more exotic than buying from an SDK network or from Facebook, with the exception that an advertiser is responsible for the mechanics of participating in the auction as well as the business intelligence (in the purest sense of the term) that goes into targeting users.
For most advertisers on mobile, programmatic media buying — which I define as bidding on impressions from an exchange — is the lowest-impact, highest-effort means of acquiring traffic, and it should probably be undertaken incrementally after other sources have experienced drastic diminishing returns on investment. I’d represent the effort vs. scale dynamics of the major traffic sources on mobile as follows:
The basic idea in the above diagram is that programmatic requires a substantial minimal level of effort to even get started and, for most advertisers, likely can’t offer as much scale as the SANs and only slightly more than SDK ad networks for games advertisers. I have left the “Scale” and “Effort” axes here ambiguous because they are relative and clearly contextual: a company spending $1MM per month on mobile media has a different appetite for “effort” (eg. investment into programmatic infrastructure) than a company spending $10MM.
For running campaigns on Facebook, other SANs, and SDK ad networks, the definition of “effort,” especially in the lower portion of the effort scale, is fairly obvious: button-clicking and manual reporting. As spend on those channels scales, the form of that effort may change into automated systems and more people doing more narrow tasks, but it ultimately changes in foreseeable, predictable ways (growing the team, automating reporting, building dashboards, automating bid changes, creating rules for killing off ads / ad sets / campaigns, etc.). But what, exactly, is the effort needed to buy media programmatically?
Essentially, the “effort” applied to buying media programmatically relates to the development of data infrastructure, bid pricing, and automated campaign management. This is mostly engineering work (or, when done to a minimum viable standard, analyst scripting work), but data pipelines and deployment stacks are really only as good as the data they utilize — without a large bank of data, programmatic media buying can’t be effective. This is because programmatic media buying fundamentally focuses on the value of any single user versus the value of a cohort: without specific knowledge of how a single user monetizes, programmatic media buying is like buying SDK traffic absent an ad network’s ability to optimize towards historical behavioral cues.
Put another way: the standard LTV valuation method, which uses broad averages for multi-dimensional filters applied to groups of users (eg. iPhone X users in the US) works on SDK traffic sources on mobile because 1) the major SDK ad networks (Unity, Applovin, Vungle, ironSource, etc.) can create their own bid modifiers based on billions of data points on the users they’ve seen, and 2) the major SDK ad networks simply “see” (are sent bid requests on impressions) a huge volume of traffic. Also note, for gaming advertisers, that the SDK networks are generally given first early slots in advertising waterfalls for rewarded video ads, meaning they get privileged access the early, more valuable impressions (although this isn’t true for banners and interstitials).
The multi-dimensional average approach to bidding doesn’t work for individual advertisers on programmatic traffic for the same reasons: most individual advertisers, even the large ones, have a limited amount of data on groups of users (smaller sample size from which to generate those averages), and most individual advertisers don’t “see” much traffic. Programmatic inventory is bid on with a CPM: how can the average advertiser know how to convert that into an LTV-based bid when they see so little traffic?
So what does it take to do user acquisition programmatically at scale (note that user acquisition is different from re-targeting)? My belief is that three things are needed:
- A massive bank of behavioral data. Programmatic media buying on mobile works best when the advertiser knows the value of the individual users they are targeting with ads. Obviously, advertisers with large DAU-bases have a broader reach on this basis than smaller developers: the advertisers that know which users monetize can target those people via their advertising IDs in non-competitive sites (apps) more cheaply than developers that are using broad LTV averages based on demographic data. The “buy low, sell high” concept in programmatic manifests in: knowing which users have historically monetized and targeting them in apps that tend to produce low average LTVs for advertisers. For example: I run a portfolio of apps. I know User X monetized in Portfolio App 1 before churning, so I want to acquire them for Portfolio App 2. I buy an impression shown to User X in External App 3, a flashlight app, that tends to produce users that don’t monetize and therefore receives lower average CPMs.
- Bid logic and pricing systems. In order to properly price bids, the data that the advertiser owns needs to be parsed and manipulated in order to produce price targets. As stated before, programmatic media is purchased on a CPM basis: how can an expected value of user-level monetization be converted into a CPM bid? This is the process that Facebook and ad networks describe as “learning”: observing conversion rates over time and determining what CPMs track to a specific CPI bid. This work can be automated or done manually by analysts, but it’s not trivial: it requires a concerted effort of aggregating data and converting it into user-level bids that can then be passed to a bidder.
- Bidding infrastructure. Whether an advertiser builds its own proprietary bidder or uses a bidder-as-a-service tool like Beeswax or Kayzen, bidding infrastructure requires the development of connective tissue that bridges the “brain” (the bid logic and pricing system) to the “hands” (the bidder). Building a bidder, even when it utilizes open source software, is not an immaterial amount of work — and bidders-as-a-service still require development effort to integrate properly with the advertiser’s internal data warehouse and other advertising infrastructure (eg. attribution, reporting).
Of course, another reason to pursue programmatic is the complete control it gives the advertiser over their data: data never needs to be passed to third-party networks and so it can’t be used to by them to help other companies.
But from a purely economic perspective, taking the above three components into account, it becomes clear that programmatic media should support a meaningful amount of spend before infrastructure investment is made. So which advertisers can justify this? If the effort vs. scale diagram is taken as valid, and an advertiser accepts that programmatic traffic represents the 20% in the 80/20 Pareto principle as applied to project management, then it’s really only the largest advertisers that benefit from adding programmatic media buying into their channel mix. Put another way: programmatic makes sense when that last 20% of impact is meaningful enough to justify hundreds of thousands or even millions of dollars of spend on infrastructure.