Back to blogs

September 27, 2026

Back of the Envelope Estimation | Guide for System Design Interviews

#System Design#System Design Interview#Scalability
Back of the Envelope Estimation | Guide for System Design Interviews

Back-of-the-envelope estimation is an important skill in system design interviews. It helps engineers quickly estimate the capacity, performance, storage and scalability requirements of a system before deciding how to build it. Instead of looking for perfectly accurate numbers, the goal is to make reasonable assumptions and arrive at a useful approximation. These calculations help us understand whether a proposed system can handle its expected workload.

What Is Back-of-the-Envelope Estimation?

Back-of-the-envelope estimation is a technique for solving large scale system design problems using simple calculations and approximate numbers. For example, an interviewer might ask how many requests per second a social media platform needs to handle or how much storage it would require over five years. You may not know the exact number of users or requests, so you make reasonable assumptions and calculate an approximate result. In system design, the process and reasoning are usually more important than mathematical precision.

Important Concepts to Know

A few basic concepts make back-of-the-envelope calculations much easier. First, you should be comfortable with data units such as KB, MB, GB, TB, and PB. For quick calculations, you can approximate 1 KB as 1,000 bytes, 1 MB as 1,000 KB, and so on. You should also understand time conversions. A particularly useful shortcut is that one day contains about 100,000 seconds. The exact number is 86,400, but 100,000 makes mental calculations much easier.

Another important concept is QPS or Queries Per Second. QPS tells us approximately how many requests a system needs to process every second. A simple way to estimate it is to divide the number of requests generated per day by 100,000. Since real systems rarely receive traffic evenly throughout the day, we also estimate peak QPS. For example, if the average traffic is 1,000 QPS, we might assume peak traffic is approximately twice that, giving us around 2,000 peak QPS.

Latency is another important consideration. It represents the time required to complete an operation. Memory access is generally much faster than disk access, while network communication can introduce additional delay. Understanding these differences helps engineers make better architectural decisions, such as using caching to avoid unnecessary database or disk access and placing data closer to users to reduce network latency.

Availability describes how consistently a system remains operational. It is usually expressed using percentages or "nines." For example, 99.9% availability allows significantly less downtime than 99% availability. As the number of nines increases, the acceptable downtime decreases. High availability is especially important for systems such as payment platforms, messaging services, and large-scale web applications.

A Simple Back-of-the-Envelope Example

Imagine we are designing a messaging application with 10 million users. Suppose 50% of users are active each day, and each active user sends an average of 20 messages per day. This gives us 5 million daily active users and approximately 100 million messages per day. Since one day is roughly 100,000 seconds, the average traffic is about 1,000 messages per second. If we assume peak traffic is twice the average, the system should be prepared to handle approximately 2,000 messages per second.

Now suppose each message requires approximately 500 bytes of storage. One hundred million messages would require about 50 GB of storage per day. Over a year, that becomes roughly 18 TB, and over five years it becomes approximately 90 TB, before considering replication, indexes, metadata, and other system overhead. This simple calculation gives us an initial idea of the scale of the system.

Best Practices for Estimation

When performing back-of-the-envelope estimation, start by clearly writing down your assumptions. Always include units such as MB, GB, seconds, or requests per day so your calculations remain understandable. Round complicated numbers instead of wasting time calculating unnecessary precision. Break a large problem into smaller steps: estimate users, calculate daily activity, convert that activity into QPS, estimate peak traffic, and then calculate storage or bandwidth requirements.

The most important thing is to show your reasoning. A good estimate with clearly explained assumptions is more useful in a system design interview than an exact-looking number with no explanation. Different assumptions can produce different results, and that is completely normal.

Conclusion

Back-of-the-envelope estimation is not about predicting the exact capacity of a system. It is about developing a quick understanding of system scale, traffic, storage, latency, and availability. By learning a few useful shortcuts and practicing calculations involving QPS, peak traffic, storage, and data volume, you can approach system design problems with much more confidence. The key formula to remember is simple: make reasonable assumptions, calculate the workload, convert it into useful metrics, and round the results to understand the overall scale.