PracHub
QuestionsPremiumLearningGuidesCheatsheetNEW
|Home/System Design/Netflix

Design an ad frequency capping system

Last updated: Apr 7, 2026

Quick Overview

This question evaluates competency in distributed systems architecture, real-time stateful services, high-cardinality time-series data modeling, API design for low-latency decision paths, and operational monitoring including consistency and latency trade-offs.

  • hard
  • Netflix
  • System Design
  • Software Engineer

Design an ad frequency capping system

Company: Netflix

Role: Software Engineer

Category: System Design

Difficulty: hard

Interview Round: Onsite

Design a real-time **ad frequency capping** system for an ads platform. When the ad server is deciding whether to show an ad, it must enforce caps such as: - Per user **per campaign**: at most `K` impressions in the last `T` hours (rolling window). - Optional: per user per advertiser, per user per creative, etc. Requirements: - Very low latency on the serving path (single-digit ms budget). - Very high QPS (millions/sec) and large cardinality (users × campaigns). - Events are generated on every impression and may arrive late/out of order. - Define what consistency you need (strict vs best-effort) and justify tradeoffs. - Support multiple time windows (e.g., 1 hour, 24 hours, 7 days). - Provide APIs for: (1) check-and-reserve (decision time) and (2) impression logging. Explain data model, storage choices, write/read paths, deduplication, TTL/expiry, sharding strategy, and how you monitor/alert on correctness and system health.

Quick Answer: This question evaluates competency in distributed systems architecture, real-time stateful services, high-cardinality time-series data modeling, API design for low-latency decision paths, and operational monitoring including consistency and latency trade-offs.

Related Interview Questions

  • Design Ad Frequency and Order Tracking - Netflix
  • Design Rolling-Window Ad Frequency Capping - Netflix (medium)
  • Design ad frequency capping - Netflix (medium)
  • Design a File Backup System - Netflix (hard)
  • Design an Ad Frequency Capping System - Netflix
Netflix logo
Netflix
Mar 9, 2026, 12:00 AM
Software Engineer
Onsite
System Design
150
0

Design a real-time ad frequency capping system for an ads platform.

When the ad server is deciding whether to show an ad, it must enforce caps such as:

  • Per user per campaign : at most K impressions in the last T hours (rolling window).
  • Optional: per user per advertiser, per user per creative, etc.

Requirements:

  • Very low latency on the serving path (single-digit ms budget).
  • Very high QPS (millions/sec) and large cardinality (users × campaigns).
  • Events are generated on every impression and may arrive late/out of order.
  • Define what consistency you need (strict vs best-effort) and justify tradeoffs.
  • Support multiple time windows (e.g., 1 hour, 24 hours, 7 days).
  • Provide APIs for: (1) check-and-reserve (decision time) and (2) impression logging.

Explain data model, storage choices, write/read paths, deduplication, TTL/expiry, sharding strategy, and how you monitor/alert on correctness and system health.

Solution

Show

Comments (0)

Sign in to leave a comment

Loading comments...

Browse More Questions

More System Design•More Netflix•More Software Engineer•Netflix Software Engineer•Netflix System Design•Software Engineer System Design
PracHub

Master your tech interviews with 7,500+ real questions from top companies.

Product

  • Questions
  • Learning Tracks
  • Interview Guides
  • Resources
  • Premium
  • For Universities
  • Student Access

Browse

  • By Company
  • By Role
  • By Category
  • Topic Hubs
  • SQL Questions
  • Compare Platforms
  • Discord Community

Support

  • support@prachub.com
  • (916) 541-4762

Legal

  • Privacy Policy
  • Terms of Service
  • About Us

© 2026 PracHub. All rights reserved.