Ad CTR Prediction: Problem Framing and Requirements
Explore how to effectively frame the ad click-through rate prediction problem by understanding auction mechanics, business metrics, and the critical sub-100ms latency constraint. This lesson guides you to align system design with revenue impact, advertiser ROI, and user experience, preparing you to propose precise ML solutions within real-world production limits.
Every time a user scrolls through Facebook or Instagram, searches on Google, or opens TikTok, an ad auction often runs within a few milliseconds. The ranking models behind that auction estimate the probability that the user will click a candidate ad. Even a small lift in CTR prediction accuracy can materially affect annual revenue, influence advertiser retention, and improve the relevance and quality of the user experience. That is why ad click-through rate (CTR) prediction is a common ML system design interview problem at large tech companies.
The problem touches every pillar of system design simultaneously. Data pipelines must ingest billions of impression logs daily. Feature engineering must handle sparse, high-cardinality categorical data. Model architectures like Wide & Deep and DeepFM must balance memorization with generalization. Serving infrastructure must return predictions under brutal latency constraints. Continuous training pipelines must keep the model fresh as user behavior shifts hour by hour.
This lesson focuses on the first step that distinguishes strong system design answers from incomplete ones: framing the problem and defining requirements. Before you propose a model or architecture, ground your design in three areas: the auction mechanics, business metrics, and latency constraints. Start with those requirements before designing the system.
The eCPM equation and auction mechanics
The entire ad ranking system rests on a single equation:
The platform receives an ad request and retrieves a set of candidate ads. Each candidate has a bid set by the advertiser and a predicted click-through rate (