Back-of-Envelope Estimation

System Design Process
13 / 21

Fast, rough calculations to size your system. Used in system design interviews to justify technology choices.

100M DAU * 2 Actions/Day= 2,314 QPS AverageQPSDISKRAMStorage: QPS * Size * TimeAlways design with a 30% margin buffer
SD blueprint: Capacity Estimate Formulas
The Analogy (Read This First)

A civil engineer doesn't design the Golden Gate Bridge before estimating "hmm, ~100,000 cars per day, each weighing ~2 tons, so load = ~200M kg/day". These rough numbers drive the design. You do the same for software systems.

Deep Dive Analysis

Before designing ANY system, estimate: (1) How much data? (2) How many QPS (queries per second)? (3) What is the acceptable latency?

Key Units: 1 million = 10^6, 1 billion = 10^9. Power of 2: 1KB=10^3, 1MB=10^6, 1GB=10^9, 1TB=10^12. Always round aggressively to enable mental math.

Estimation Example - Twitter Feed: 300M daily users, 50% post per day = 150M tweets/day = ~1,750 tweets/second. Average tweet = 140 chars + metadata ≈ 500 bytes. Storage per day = 1750/s × 500B × 86400s ≈ 75GB/day. In 5 years ≈ 140TB. This tells you: need distributed storage, need partitioning by tweet_id.

Traffic estimation: Daily active users (DAU) × actions per day / 86,400 seconds = QPS. For peak: multiply by 2-3x (reads often 100x writes). Example: 10M DAU - 10 reads/day / 86400 ≈ 1,157 QPS average, 3,500 peak.

Storage estimation: Data size - users - retention period. Example: Instagram - 100M users upload 1 photo/week, average 2MB per photo. Per week: 100M × 2MB = 200TB. Per year: 10PB. This drives: object storage (S3), CDN (CloudFront), image compression pipeline.

Bandwidth estimation: QPS - average response size. 1,000 QPS × 10KB/response = 10MB/s = 80Mbps. A 1Gbps NIC can handle this. But at 100k QPS × 100KB = 80Gbps - you need multiple load-balanced servers, CDN offloading, and edge caching.

Key Bullets
  • In interviews, never skip estimation - it justifies every technology choice you make.
  • QPS under 100: single server. 100-1000: single optimized server. 1000+: horizontal scaling needed.
  • Storage under 1TB: single server/managed DB. 1TB-10TB: managed cluster. 10TB+: distributed storage.
  • Always ask: read-heavy or write-heavy? 80:20 read:write is typical social media.
  • Cache ratio: if 80% of traffic is to 20% of data, caching has a massive ROI.

Curated Curation & Deep Insights

ScaleDojo Certified
Video Tutorial Pending

Our system architects are vetting high-quality, authorized video guides for Back-of-Envelope Estimation with zero third-party platform links.

Verification in Progress
Reading Material Pending

We are preparing premium, zero-competitor deep-dives for Back-of-Envelope Estimation. Authorized reading references will appear automatically.

Verification in Progress
ScaleDojo Logo
Initializing ScaleDojo