System Design Calculator

Estimate RPS, storage, bandwidth and see the formulas behind.

Input parameters
Daily Active Users (DAU)
How many unique users actively use your system per day. Typical range: 1k–10M. Default here: 1,000,000.
Requests per user per day
Average number of requests (API calls, page loads, actions) one active user makes per day. Typical: 5–100. Default: 20.
Peak multiplier (burst factor)
How many times peak load is higher than average (for example, in the evening or during campaigns). Typical: 5–20. Default: 10.
Reads (%)
Share of read operations among all operations at peak load. Many systems are read-heavy. Typical: 80–99%.
Writes (%)
Share of write operations. Usually 1–20%. By default this is just 100% − reads%. (10% auto if reads = 90%)
Payload per read
Approximate amount of data read from storage per read operation. Small API payloads are often 0.1–10 KB. Default: 0.5 KB.
Payload per write
Approximate amount of data written to storage per write operation. Default: 1 KB.
Response size
Average size of the response that your backend returns to the client. Default: 4 KB.
Retention (days)
How many days of data you plan to store for this workload. Typical values: 7, 30, 90 days. Default here: 30.
Results & formulas
Average RPS
231.48 RPS
Formula: Average RPS = (Daily active users × Requests per user per day) / 86,400 (seconds in a day)
Example: avgRps ≈ (1M × 20) / 86,400 = 231.48
Peak RPS
2.3K RPS
Formula: Peak RPS = Average RPS × Peak multiplier
Example: peakRps ≈ 231.48 × 10 = 2.3K
Read RPS
2.1K RPS
Formula: Read RPS = Peak RPS × (Share of reads in percent / 100)
Example: readRps ≈ 2.3K × (90 / 100) = 2.1K
Write RPS
231.48 RPS
Formula: Write RPS = Peak RPS × (Share of writes in percent / 100)
Example: writeRps ≈ 2.3K × (10 / 100) = 231.48
Per day
19.07 GB / day
Formula: Daily storage = Write RPS × Payload per write (in bytes) × 86,400 seconds
Example: dailyStorage ≈ 231.48 × 1 KB × 86,400 ≈ 19.07 GB
Retention period total
572.20 GB
Formula: Retention storage ≈ Daily storage × Number of retention days
Example: monthlyStorage ≈ 19.07 GB × 30 572.20 GB
Per 365 days
6.80 TB
Formula: Yearly storage ≈ Daily storage × 365 days
Example: yearlyStorage ≈ 19.07 GB × 365 ≈ 6.80 TB
Inbound (requests)
1.24 MB/s
Formula: Inbound bandwidth ≈ Read RPS × Payload per read + Write RPS × Payload per write
Example: inbound ≈ readRps × payloadRead + writeRps × payloadWrite ≈ 1.24 MB/s
Outbound (responses)
9.04 MB/s
Formula: Outbound bandwidth ≈ Peak RPS × Response size
Example: outbound ≈ peakRps × responseSize ≈ 9.04 MB/s

All numbers are back-of-the-envelope estimations to get the correct order of magnitude.