← Demos Playground

Recording Size & Bandwidth Calculator

Estimate disk space and bandwidth for webcam/screen recordings. Pick how you want to determine the video bitrate, set a duration, and see the result live - no submit button, everything recalculates as you type.

1. Video bitrate

Rule-of-thumb estimate: baseline bitrate for the resolution, scaled by frame rate and codec efficiency, relative to H.264 at 30fps. These are indicative, not precise — actual output depends heavily on content motion (a screen share is mostly static; a webcam talking head has more motion) and the specific encoder. For a number you can trust, use the "Calculate from a real file" tab with one of your own recordings.

Enter the size and length of a file you already recorded (e.g. from the webcam/screen recording demo). This computes the real combined bitrate (video + audio, whatever MediaRecorder actually used) and uses it directly — more accurate than the estimate tab since it's measured, not guessed.

2. Audio & target duration

Per-stream result

Video bitrate
—
Total bitrate (video + audio)
—
File size for target duration
—

3. Scale to a real exam session

One participant typically runs two streams at once (webcam + screen). This multiplies the per-stream numbers above by streams-per-participant and concurrent participants, to size actual server storage and upload bandwidth needs.

Total concurrent upload bandwidth
—
Total storage for the session
—
How this is calculated (formulas & sourcing)

Per-stream bitrate

Estimate tab:

videoBitrate = baselineMbps(resolution) × framerateMultiplier(fps) × codecMultiplier(codec)

Custom tab: entered directly, used as-is.

From-a-real-file tab (reverses the file-size formula below to back out the real bitrate a browser actually used):

bitrate = (fileSizeMB × 8) / durationSeconds

File size

fileSizeMB = (totalBitrateMbps × durationSeconds) / 8

where totalBitrate = video bitrate + audio bitrate, when audio is included.

Scale-up (concurrent participants)

totalBandwidthMbps = totalBitrateMbps × streamsPerParticipant × concurrentParticipants totalStorageMB = fileSizeMB × streamsPerParticipant × concurrentParticipants

Where the estimate-tab numbers come from

Resolution baselines are adapted downward from YouTube's published upload bitrate guidance (support.google.com/youtube — 8 Mbps at 1080p/30fps, 35–45 Mbps at 4K/30fps), on the assumption that webcam/screen-share content has far less motion than typical video and needs less bitrate for equivalent visual quality. This is an adjusted estimate, not a direct citation.

60fps multiplier (1.5×) matches YouTube's own published ratio exactly (12 Mbps at 1080p/60fps vs 8 Mbps at 1080p/30fps). 15fps multiplier (0.6×) is not sourced from any published table — none exists below 24fps in mainstream guidance. It reflects the general, well-documented principle that bitrate scales sub-linearly with frame rate (part of every frame's bitrate goes to spatial detail that doesn't change with fps), but the exact value is an interpolation, not a citation.

Codec efficiency vs H.264, from published comparisons — these vary widely by content type and test methodology, so the defaults used here sit mid-range, not at a settled figure:

CodecPublished range (savings vs H.264)Used here
VP9~5–50% (real-world tests often only 10–20%)20% (0.80×)
HEVC / H.265~18–50%35% (0.65×)
AV1~23–60%45% (0.55×)
VP8no published comparison found+10% penalty (1.10×), unverified assumption

None of the estimate-tab numbers should be trusted beyond rough planning precision. For a number you can actually rely on for your own recordings, use the "Calculate from a real file" tab with an actual recording — that one is measured, not modeled.