Back to problems

Model Campaigns, Targeting, and Edit History for a Demand-Side Ad Platform

System Design · ByteDance · Hard

Below is a complete data model for a demand-side advertising platform, covering advertisers, campaigns, ad groups, ads, creatives, audience targeting, edit history, and explicit publication. Design Assumptions Creative reuse — Creatives are advertiser-owned and reusable across multiple ads. Each ad references a specific creative version, not the creative’s mutable “head”. Updating a creative creates a new version; existing ads keep pointing at the version they were published…

Checking your access…