End-to-End Ad-Selection System Design
Context
You must choose, at impression time, which advertiser type to show to a user. There are three advertiser objectives with fixed value schemes (values reflect the platform's objective weights per action):
-
Gaming (CPI): $10 per install
-
E‑commerce (CPA): $5 per purchase
-
Branding (CPM): $3 per 1000 impressions
Design a system that maximizes expected advertiser value per impression while respecting budgets and pacing.
Requirements
Specify the following components:
-
Prediction
-
Features and models to estimate P(install | ad, user, context) and P(purchase | ·).
-
Calibration/debiasing for auction-time use.
-
Updating cadence.
-
Value Unification and Constraints
-
How to make scores commensurate across objectives (e.g., expected value per impression; convert CPM to per‑impression value).
-
Incorporate predicted win rate, quality thresholds, and user experience constraints.
-
Exploration, Cold Start, Guardrails
-
Exploration vs. exploitation (e.g., contextual bandits).
-
Cold‑start handling.
-
Guardrails (frequency capping, diversity, fairness).
-
Auction and Budgeting
-
Auction mechanics (second‑price/VCG), bid shading, pacing control.
-
Multi‑objective bidding interactions.
-
Evaluation
-
Offline/online evaluation: counterfactual replay, lift tests.
-
Success metrics (incremental ROAS, retention, long‑term engagement).
-
Detecting/mitigating feedback loops or gaming.