Loading...

Capacity Estimation in System Design

A small startup launched a feature on Friday. Everything looked fine in the morning. By evening, the system slowed down. By night, it stopped responding. The reason was not a bug. It was traffic.

The team never asked:

  • How many users will use this?
  • When will traffic peak?
  • How much data will be generated?

Capacity estimation is simply thinking about scale before it surprises you.

What Capacity Estimation Is

Capacity estimation is not about exact numbers.

It is about:

  • understanding order of magnitude.
  • spotting bottlenecks early.
  • making reasonable assumptions.

Interviewers don’t expect perfect math. They expect clear thinking.

DAU and MAU

Before anything else, you estimate users. MAU means monthly active users.
DAU means daily active users. If a product has 1 million MAU, maybe 10–30% are active daily. That gives you a starting point. From DAU, everything else is derived.

QPS and Peak Load

QPS means queries per second. Not all users are active at the same time. Most systems have peaks. Morning, evening, or special events.

A simple approach:

  • Estimate daily actions per user
  • Spread them over active hours
  • Multiply for peak traffic

You don’t need exact precision. You need a defensible estimate.

Read vs Write Ratio

Most systems read more than they write.

Examples:

  • Viewing content (read)
  • Posting content (write)

This matters because:

  • reads can be cached
  • writes usually go to the database

Knowing this helps you decide:

  • caching strategy
  • database scaling
  • queue usage

Estimating Storage

Storage estimation answers one question:

How much data will we store over time?

Think in categories:

  • user data
  • objects (images, videos, certificates)
  • logs and metadata

Estimate:

  • size per item
  • number of items per day
  • retention period

Even rough numbers help avoid surprises later.

Data Moving In and Out

Bandwidth is often ignored. But it matters. Downloading files, streaming videos, serving images, all consume bandwidth. Caching and CDNs reduce bandwidth usage. In interviews, simply acknowledging this shows maturity.

The Impact of Caching on Capacity

Caching changes everything.

With a good cache:

  • fewer database hits
  • lower latency
  • higher throughput

When estimating capacity, always consider:

“What percentage of traffic can be cached?”

Even a simple assumption makes your design stronger.

Producing a One-Page Capacity Plan

In interviews and real projects, you don’t want long documents.

A good capacity plan fits on one page.

It includes:

  • estimated users
  • traffic assumptions
  • storage growth
  • bandwidth needs
  • major bottlenecks

This one page guides your architecture decisions.

What Interviewers Look For

They don’t check your calculator.

They look for:

  • logical flow
  • reasonable assumptions
  • awareness of peak traffic
  • understanding of tradeoffs

If your explanation is clear, small math mistakes won’t matter.

Key Takeaways

Capacity estimation removes surprises.

It helps you:

  • design confidently
  • avoid overbuilding
  • explain decisions clearly

You don’t need to be perfect. You need to be reasonable and structured.

Frequently Asked Questions

Capacity estimation is the process of estimating users, traffic, storage, and bandwidth so a system can handle real-world usage without surprises.

No. Interviews and real projects focus on reasonable assumptions and clear thinking, not perfect calculations.

MAU is monthly active users, and DAU is daily active users. DAU helps estimate daily traffic and system load.

QPS means queries per second. It helps estimate how much traffic the system must handle, especially during peak times.

Most systems read more than they write. This affects database load, caching strategy, and overall system performance.

Caching reduces database load, improves response time, and allows the system to handle more traffic with fewer resources.

Still have questions?Contact our support team