Design Reddit

Hard45 min
1 / 30
understanding10 min read

Problem Statement: A Read-Amplified Community Discussion Platform

Frames Reddit as a read-amplified, community-governed ranking system rather than a generic CRUD social app.

Problem statement

Design a forum-based social platform where users create communities (subreddits), submit text or link posts, vote up or down, and discuss in nested comment threads. The system must rank content with algorithms such as hot, new, top, best, and controversial; serve ranked listings for tens of thousands of communities; render deep comment trees; empower moderators to govern their communities; and stay fast for hundreds of thousands of concurrent users across the globe.

The defining economic property of this system is read amplification. A single post on a popular community can be viewed hundreds of thousands of times within hours, while the write path—submit, comment, vote—remains comparatively small but bursty. Public filings put the category's scale in perspective: Reddit's S-1 reports more than 500 million visitors in December 2023 and an average of 73.1 million daily active uniques in Q4 2023, and Q1 2024 results report DAUq growing 37% to 82.7 million. Publicly reported moderation-scale figures describe hundreds of millions of posts and well over a billion comments per year. These are cited context figures, not requirements for our design.

Why the problem is distinctive

A messaging backend retries delivery; a payment backend rolls back a transaction. A forum backend instead faces three problems that rarely appear together elsewhere. First, hot-key skew: a handful of communities and a handful of viral posts absorb a disproportionate share of all reads, so a naive cache or database key becomes a hotspot. Second, ranking as a first-class workload: votes arrive continuously and must be aggregated, scored with time decay or statistical confidence, and materialized into per-community ranked lists that feeds can merge cheaply. Third, delegated governance: moderators who are not employees remove content, configure rules, and ban users, so authorization is community-scoped and every moderation action must be auditable and reversible.

The attached brief requires subreddit creation and moderation, text or link post submission, upvote/downvote with hot/new sorting, and nested comment threads, plus scalability to hundreds of thousands of concurrent users, efficient caching of top posts, spam resilience, and multi-region availability. The section rhythm, visual vocabulary, recap contract, quiz placement, multi-cloud diagrams, and WinSystemDesign Friend rules follow the uploaded orchestrator and master prompt, while the 30-section pacing is modeled on the structural reference.

Public operating baseline versus design assumptions

Public evidence establishes that the category operates at extreme scale: 73.1 million DAUq in Q4 2023 and 82.7 million in Q1 2024 are cited company figures, and the ecosystem supports more than 100,000 active communities. For capacity planning this answer explicitly assumes a mature platform with 90 million daily actives, 1 million new posts per day, 8 million new comments per day, 60 million vote events per day, and a 5x read peak during global news events. Unless a number is tied to a citation, it is a stated design assumption, target, budget, or illustrative threshold—not a claim about any company's private architecture.

The four architectural planes

  1. Content plane: durable posts, comments, edits, deletions, media, and community metadata.
  2. Ranking plane: vote ledger, count projections, score computation, and per-community ranked lists.
  3. Distribution plane: feeds, caches, CDNs, pagination cursors, and multi-region read paths.
  4. Governance plane: moderation roles, rules engines, spam scoring, reports, appeals, and audit.

A strong interview answer keeps these planes separate. The content plane needs transactional correctness; the ranking plane tolerates eventual consistency but demands throughput; the distribution plane optimizes latency and hit ratio; the governance plane demands authorization scoping and immutable audit. Mixing them into one service or one database is the fastest way to fail this question.

Key Highlights

  • Read amplification is the core economic property: one viral post can be read hundreds of thousands of times.
  • Reddit's S-1 reports 73.1M DAUq in Q4 2023 and 500M+ monthly visitors; Q1 2024 reports 82.7M DAUq.
  • Hot-key skew, ranking as a workload, and delegated moderation make this different from a CRUD app.
  • The architecture has four planes: content, ranking, distribution, and governance.
  • Every uncited scale number in this answer is an explicit design assumption.
Lead With Read Amplification
State in the first two minutes that one post can be read 100,000+ times while written once. This instantly justifies the cache hierarchy, ranked-list materialization, and CDN strategy that dominate the rest of the answer.
Do Not Draw a CRUD Toy
A design that reads votes from the primary database on every feed request ignores the dominant workload. Ranking and distribution must be first-class planes with their own stores and consistency rules.

Section Rescue Kit

Buzzwords to use:

Read AmplificationHot-Key Skew

Safe statements:

  • "Let me separate the content, ranking, distribution, and governance planes before choosing any technology."
  • "The public scale figures are context; I will label every number I use for sizing as an assumption."
Design Reddit - System Design | WinJob | WinJob