Skip to main content
Easy EstimationScalabilityInterview SkillsMathFundamentals

Back-of-the-Envelope Estimation

Estimation is a core system design interview skill. Learn to reason about scale using powers of 2, latency numbers every engineer should know, availability math, and worked examples for QPS and storage calculation.

12 min read · Similar: Google, Twitter, Instagram, YouTube

Why Estimation Matters

System design interviews often ask you to estimate: "How much storage does Instagram need for photos?" "What QPS does Twitter handle?" These are not trick questions — the interviewer wants to see that you can reason about numbers, sanity-check your design choices, and identify the dominant constraints.

Estimation is about order-of-magnitude accuracy, not precise answers. The goal is to understand whether your design needs 1 server or 100, whether you need 1 TB of storage or 1 PB, whether a single database handles the read load or you need read replicas. Being off by 2× is fine. Being off by 1000× means you designed the wrong system.

Powers of 2 — Data Units

All storage and bandwidth estimation reduces to powers of 2. Know these:

1 byte = 8 bits 1 KB (kilobyte) = 1,024 bytes ≈ 10^3 bytes 1 MB (megabyte) = 1,024 KB ≈ 10^6 bytes 1 GB (gigabyte) = 1,024 MB ≈ 10^9 bytes 1 TB (terabyte) = 1,024 GB ≈ 10^12 bytes 1 PB (petabyte) = 1,024 TB ≈ 10^15 bytes

Quick mental shortcuts: a plain text tweet is ~140 bytes. A high-quality profile photo is ~200 KB. A 1-minute HD video is ~100 MB. An hour-long 4K video is ~5–10 GB. With these anchors, you can estimate storage needs for any user-generated content platform.

Latency Numbers Every Engineer Should Know

These numbers (approximate, modern hardware) are the backbone of latency estimation:

L1 cache reference: ~0.5 ns L2 cache reference: ~7 ns Main memory (RAM) reference: ~100 ns Read 4 KB from SSD: ~150 µs (150,000 ns) Round-trip within same datacenter: ~500 µs Read 1 MB sequentially from SSD: ~1 ms HDD seek: ~10 ms Read 1 MB sequentially from HDD: ~20 ms Network round-trip US to EU: ~150 ms

Key conclusions: memory is 200× faster than SSD. SSD is 70× faster than HDD. A datacenter round-trip is 3,000× faster than a cross-continental round-trip. Design your hot paths to stay in memory (cache). Avoid disk seeks in the critical path. Minimize cross-region network calls.

Availability Numbers

Availability is the fraction of time a system is operational. Every additional "nine" makes the SLA dramatically harder to achieve:

99% (two nines): 87.6 hours downtime/year (3.65 days/year) 99.9% (three nines): 8.76 hours downtime/year 99.99% (four nines): 52.6 minutes downtime/year 99.999% (five nines): 5.26 minutes downtime/year

Five nines requires virtually zero planned maintenance windows, instant automated failover, redundancy at every layer, and constant chaos engineering. Most web products target 99.9% (three nines). Financial systems often target 99.99%. Five nines is reserved for critical infrastructure like payment processing and emergency services.

Parallel systems: availability = 1 − (1−A)^n. Two 99.9% systems in parallel give 99.9999% availability. Sequential systems: availability = A_1 × A_2 × ... If both systems must be up, a chain of three 99.9% systems gives only 99.7%.

Example: Estimate Twitter QPS and Storage

Assumptions (these are illustrative, not real Twitter numbers): • 300 million monthly active users • 50% use Twitter daily → 150 million DAU • Each user posts 2 tweets per day on average • 10% of tweets contain media (images/video) • Data retained for 5 years

QPS estimation: • Tweet QPS = 150M users × 2 tweets/day ÷ (24 hours × 3,600 seconds) ≈ 3,500 tweets/second • Peak QPS ≈ 2× average = ~7,000 tweets/second

Storage estimation: • Average tweet: tweet_id (64 bytes) + text (140 bytes) + metadata (30 bytes) = ~230 bytes/tweet • Text storage/day: 300M × 2 × 230 bytes ≈ 138 GB/day • Media: 300M × 2 tweets × 10% media × 1 MB = 60 TB/day • 5-year media storage: 60 TB/day × 365 × 5 ≈ 109 PB

Key insight: media storage (images/video) dominates by orders of magnitude. Text storage is trivial compared to media. Design your storage tier around the media problem.

Tips for Estimation in Interviews

Round aggressively: "99,987 / 9.1" becomes "100,000 / 10 = 10,000." Precision is not the point.

Write down your assumptions explicitly: "I'm assuming 10% of users upload a photo per day." If your assumptions are wrong, the interviewer can correct them. If they are reasonable, you demonstrate structured thinking.

Label all units: "5" is ambiguous. "5 MB/user/day" is not. Getting units right prevents order-of-magnitude errors.

Think in powers of 10: 1K = 10^3, 1M = 10^6, 1B = 10^9. Multiplying and dividing powers of 10 is faster than carrying zeros.

Common interview estimations to practice: QPS for a social media platform, storage for a photo sharing app, bandwidth for a video streaming service, cache size for a search autocomplete system, and number of servers needed for a given QPS.

View all →

Syed Peera Saheb

LinkedIn · Substack

Buy me a coffee