bugl
bugl
HomeLearnPatternsPathsSearchPremium
HomeLearnPatternsPaths
Learn/System Design/Design a News Feed
System Design•Design a News Feed

Design a News Feed: Capacity Estimation

Design a home timeline (Twitter/Instagram style) that shows recent posts from accounts a user follows.

How to approach it

Capacity estimation converts product numbers into engineering pressure. Go from daily active users to queries-per-second (QPS ≈ DAU × actions ÷ 86,400, with a 2–3× peak), then to storage (writes/day × payload × retention) and bandwidth (QPS × response size). You only need the order of magnitude — it tells you whether to design for read scaling, write scaling, or storage first.

Assumptions

AssumptionValue
DAU200M
Posts/user/day0.5
Timeline opens/user/day10
Avg followers200 (max millions)

Derived numbers

QuantityEstimate
Write QPS~1.2K/s
Read QPS~23K/s
Fan-out writes/post= follower count
Read:write~20:1

Note

The read:write ratio decides fan-out-on-write vs on-read; celebrity follower counts break naive fan-out.

Previous

Design a News Feed: Requirements & Scope

Next

Design a News Feed: API & Data Model

This chapter

Overview
7

Lessons

14m

Read time

1. Design a News Feed: Requirements & Scope2. Design a News Feed: Capacity Estimation3. Design a News Feed: API & Data Model4. Design a News Feed: High-Level Architecture5. Design a News Feed: Scaling6. Design a News Feed: Deep Dive7. Design a News Feed: Tradeoffs & Review

On this page

How to approach itAssumptionsDerived numbers