Accelerating Customer Acquisition
| Objective
Accelerate subscriber acquisition for Discovery+ globally at the lowest possible cost.
| Team Leads
Product: Deanna Gilbert
Engineering: Yasar Senturk
| Insights
The audience consisted of business development, marketing, and technology executives at companies that sell consumer goods and services. These companies have established customer bases and are looking for partnerships to grow their own businesses.
Consumer goods and services companies used media and entertainment products as part of marketing promotions to drive demand for their own offers (e.g., signup for wireless or redeem loyalty points to receive 1 year free of SVOD) or generate revenue from reselling partner’s products to their customers.
Distribution teams identified over 100 partners globally that will be required to achieve subscriber acquisition goals.
Target companies were resistant to any commercial terms that risked losing control of their consumers to a partner. We must provide features that enable sharing the consumer relationship with the partner to overcome their concerns of being disintermediated.
Industry baseline for direct to consumer acquisition marketing campaigns converting prospects to starting the signup process was 0.5% to no more than 10%, requiring the purchase of billions of impressions to fill the top of the funnel with the necessary volumes to achieve subscriber goals.
The industry baseline for pure prospecting subscribers with paid media had a cost of acquisition that was no less than $20.
| Hypothesis
We could reduce the cost of acquisition and accelerate subscriber gross adds with platform services that provide low cost partner integrations, automate the commercial terms of the distribution agreements and hide the complexities of the partnerships from consumers.
| Architecture
A new Global Auth Service was developed to provide authentication and authorization for one or more identity providers. It consisted of 3 components developed in Golang: Broker, Catalog, and Integration Services.
The Broker service linked one or more third-party identities with a Discovery consumer identity to enable authentication on websites, mobile apps, connected TV’s and set top boxes. If dictated by commercial terms the Broker was also capable of authenticating consumers with only the partner’s identity. The Catalog mapped what a partner sold to a consumer with the Discovery offer(s) and the business rules enabling authorization. The Broker stored the necessary data to continuously perform background checks against partner systems to reconcile consumer status. This process protected the consumer experience from any availability and latency issues with partner systems.
| Software Design
The new partnership capabilities were delivered by a New York City platform engineering team with support from Stockholm and Bellevue teams in February 2020.
The complete software design had 9 total entities across 7 sequences to enable all required use cases. The first determined the partner. The second, pictured below, initiated authentication. A third completed authentication with 5 entities and 20 steps that finished by returning an access token to the client. The remaining sequences were focused on redeeming voucher codes and reconciling user status between Discovery’s platform and partners.
| Technologies
Public API’s provided REST endpoints to ease partner systems and front-end integrations, while private APIs used gRPC to reduce latency and improve scalability.
OAuth 2 with OpenID, SAML, Microsoft ADFS, and Adobe Pass integration services were required to support the target partners.
JSON Web Tokens from partners were used to generate internal JW Tokens that were passed to front-end applications for interacting with platform APIs.
Public identity, authentication, and authorization endpoints as well as the front-ends implemented reCAPTCHA 2 to mitigate bot traffic.
Create account and login to account user interfaces from Discovery and partners were obscured from all front end and back end entities except the identity services to secure consumers’ credentials.
All teams published consumer behavior and operational events to the platform’s data pub/sub, which wrote the time series data to InfluxDB for access by monitoring, alarming, and analytics tools.
| Retrospective
◦ There was no manual testing. Quality engineering and product writing acceptance criteria and Gherkin-based test cases together during the requirements phase was the largest contributor to 100% automated testing coverage.
◦ Partner’s engineers rarely required more than 30 minutes of Q&A due to the Developers Guide. Continued revisions to the document will enable partners to complete integrations with no engineering support.
◦ Client applications should be migrated from REST to gRPC to remove additional latency from the consumer experience. Public APIs for partners will need to remain as REST due to the low level of gRPC adoption by partners.
◦ The team was excited about learning new technology and applying it to future projects. A brown bag lunch series would be useful to other teams.
| Key Results
Subscriber Growth
◦ The majority of Discovery+ subscribers have been acquired through this capability.
Fast Integrations
◦ Partners’ development, integration, and testing completed in under 2 weeks.
Full Test Coverage
◦ 100% automated quality assurance test coverage coinciding with the dev complete milestone eliminated manual testing.
Expanded Skills
◦ Engineering teams gained proficiency with containers, Kubernetes, protocol buffers and gRPC delivering this software.