reference — in the room
Back-of-the-envelope estimation
in short — written for this site
Powers of two, latency numbers, and a willingness to round hard.
powers of two
2^10 is a thousand — a kilobyte. 2^20 a million — a megabyte. 2^30 a billion — a gigabyte. 2^40 a trillion — a terabyte. 2^50 a quadrillion — a petabyte.
a working example
1 million users writing 1 KB a day is 1 GB a day, 365 GB a year. That fits on one machine, so the interesting question is not storage but read fan-out.
from the primer — full sectionsynced
You'll sometimes be asked to do 'back-of-the-envelope' estimates. For example, you might need to determine how long it will take to generate 100 image thumbnails from disk or how much memory a data structure will take. The Powers of two table and Latency numbers every programmer should know are handy references.
Powers of two table
Power Exact Value Approx Value Bytes --------------------------------------------------------------- 7 128 8 256 10 1024 1 thousand 1 KB 16 65,536 64 KB 20 1,048,576 1 million 1 MB 30 1,073,741,824 1 billion 1 GB 32 4,294,967,296 4 GB 40 1,099,511,627,776 1 trillion 1 TB
Source(s) and further reading
sourcedonnemartin/system-design-primer / README.mdanchor#appendixsyncedsynced from donnemartin/system-design-primer@master · 2026-08-16