Ch. 19 · System Design

System Design Feeds and Fanout Trade-Offs

System Design Feeds and Fanout Trade-Offs. Learn the reasoning, a practical example, common mistakes and an interview exercise.

~2 min readintermediateupdated Oct 3, 2026

Feed designs trade write-time fanout against read-time assembly. Highly connected users can make one uniform approach inefficient.

Before you start

You should understand API requests, storage and basic capacity estimates. Begin with a concrete user action and its correctness requirement. Draw data flow and failure boundaries before selecting infrastructure; a technology name by itself does not explain why a design meets the requirement.

The practical goal is to reason through this situation: Ordinary authors fan out on write while high-fanout authors may be combined during reads. Read the walkthrough first, then try the interview exercise before opening its answer. The important part is explaining the decision and its consequences, rather than remembering a definition alone.

Step-by-step walkthrough

Step 1: Estimate write amplification

One post can imply many follower updates.

Step 2: Choose workload-specific assembly

Ordinary and high-fanout authors may benefit from different paths.

Step 3: Define unified read semantics

Ranking, freshness and deletion must work across the hybrid.

Worked scenario

Ordinary authors fan out on write while high-fanout authors may be combined during reads.

A celebrity with ten million followers makes per-follower write fanout costly. Read-time assembly can reduce that write burst but adds work to feed requests. A hybrid policy needs a coherent pagination and ranking contract, plus removal of deleted or unauthorized content from both copied and assembled portions.

Common mistake

Copying every post to every follower can amplify work dramatically.

Verify the behavior

Test a celebrity publish, normal publish, deletion and page continuation.

Interview exercise

Handle a celebrity publisher.

Answer and reasoning

Use a measured hybrid policy and explain ranking, freshness, pagination and deletion propagation.

Continue learning

Compare the scenario with the System Design interview questions and test your understanding with the System Design MCQs. For terminology and implementation details, consult the reference material.

More in System Design

read ✓System Design · hard

System Design: Bloom Filters

Use a Bloom filter to skip lookups with a tiny memory footprint, and understand its false-positive-only guarantee.

~2 min readread →
read ✓System Design · hard

System Design: Idempotent APIs

Make retried requests safe with idempotency keys, store the result per key, and return the original response on a repeat.

~2 min readread →
esc