System Capacity Calculator

Use this calculator to estimate system capacity including servers, storage and bandwidth requirements. Although the aim should be to design scalable systems regardless, back of the envelope capacity estimations help to better understand how increased demand might affect the reliability, consistency and availability of the system.


How many total users?
Percentage of users that use the system daily?
How many transactions does a typical user complete per session?
How many requests does a typical transaction create?
Requests per second handled by a single CPU?
How many cores in a single server?
Percentage of total requests at peak hour?


Percentage of users that upload data?
How many uploads per day?
What is the most uploaded data type?
Percentage most uploaded type accounts for?
Average text upload size in bytes?
Average image upload size in KB?
Average video upload size in MB?
Average file upload size in KB?


How many page views for a user per day?
Average size of a page in KB?
How many downloads for a user per day?
Average size of a download in MB?
Redundant factor
The server and bandwidth requirements are system aggregate calculations. You would still need to identify and test bottlenecks. These might be database connections, hard disk reading/writing, computationally intensive functions, API calls to 3rd party services. Every part of the system needs to be able to support the estimated workload.