Bitrate is a budget of bits per pixel
The clearest way to think about a video bitrate is as an allowance. Your encoder has a fixed number of bits to spend every second, and it must cover every pixel of every frame with them. Multiply out how many pixels that is — 1920 × 1080 × 60 is 124.4 million pixels a second — and you can see why the same bitrate that looks flawless at 720p30 falls apart at 1080p60. The same budget is being spread over four times as many pixels.
That gives the formula directly: bitrate = pixels per frame × frames per second × bits per pixel. The first two are settings you choose. The third is the interesting one, because it is not fixed — it depends on how compressible your content is.
Compression works by predicting each frame from the one before it. A talking head against a static background is almost entirely predictable, so very few bits are needed to describe what changed. Confetti, water, foliage, film grain and rapid camera movement are the opposite: almost nothing carries over, and the encoder must describe far more from scratch. That is why the motion setting on this page changes the answer by more than a factor of two while the picture on screen is the same size.
Codec choice is the other multiplier. Newer codecs find more redundancy in the same footage, so they hit the same visual quality at a lower bitrate — the rule of thumb used here is roughly a third less for HEVC and around 40% less for AV1 against H.264. The catch is support: your platform, your encoder and your viewers' devices all have to agree, and H.264 remains the only universally safe choice.
Why headroom is not optional
The second half of this calculator is the part that actually prevents failed streams. It is not enough for your upload speed to exceed your bitrate; it has to exceed it comfortably.
Three things make a stream need slack. First, the encoder is not constant even in constant-bitrate mode: a scene change or a sudden burst of motion produces a spike as the encoder spends its buffer, and if the link is at capacity that spike becomes a dropped frame. Second, you are not the only traffic on the connection — a game's own network traffic, a cloud backup, a software update or somebody else in the building will take capacity without asking. Third, consumer upload speeds vary with time of day, weather on a fixed wireless link, and congestion in the local segment.
Reserving 30% is a reasonable default for a shared home connection. On a dedicated business line with nothing else running you can safely go lower; on Wi-Fi, on a mobile connection, or in a house with other people, more is wise. What you should not do is stream at 95% of your measured upload and conclude that dropped frames are the platform's fault.
Measure the upload speed the right way. Test from the machine you actually stream from, on the connection you actually stream over — ideally wired, because a Wi-Fi test measures the weakest link in a chain you can fix. Test more than once and at the time of day you stream. Use the measured figure here, never the advertised one from the contract, which describes a maximum rather than an expectation.
The final output, data per hour, matters for anyone on a metered connection or a mobile hotspot. A 1080p60 stream at roughly 6.4 Mbps consumes about 2.87 GB an hour, so a four-hour session is over 11 GB before anything else on the network is counted.
Worked example: 1080p60 gaming on a 20 Mbps upload
Moderate motion at 0.05 bits per pixel, H.264, 160 kbps audio, reserving 30% headroom.
- Pixels per frame. 1920 × 1080 = 2,073,600.
- Pixels per second. 2,073,600 × 60 = 124,416,000.
- Video bitrate. 124,416,000 × 0.05 bits = 6,220,800 bits per second ÷ 1,000 = 6,220.8 kbps.
- Total with audio. 6,220.8 + 160 = 6,380.8 kbps, so audio is 160 ÷ 6,380.8 = 2.5% of the stream.
- Upload required. 6,380.8 × 1.30 = 8,294.99 kbps = 8.29 Mbps.
- Headroom on a 20 Mbps link. 20,000 ÷ 6,380.8 = 3.134, so 213% spare above the stream itself — comfortably more than the 30% requested.
- Highest bitrate this link supports. 20,000 ÷ 1.30 = 15,385 kbps total.
- Data per hour. 6,380.8 × 3,600 ÷ 8 ÷ 1,000,000 = 2.87 GB.
Now change one setting at a time and watch what each is worth. Dropping to 30 fps halves the video bitrate to 3,110.4 kbps, because frame rate is a linear term. Dropping to 720p60 instead multiplies by 921,600 ÷ 2,073,600 = 0.444, giving 2,764.8 kbps — a bigger saving than halving the frame rate, since resolution scales with area. Switching to AV1 at the original 1080p60 gives 6,220.8 × 0.6 = 3,732.5 kbps, roughly the same saving as halving the frame rate with none of the visible cost.
Which setting to give up first
If your connection cannot carry the stream, reduce resolution before frame rate for motion-heavy content, and frame rate before resolution for detail-heavy content. The reason is what each one costs the viewer. Halving the frame rate makes fast motion visibly stutter, which is disastrous for gaming and sport and barely noticeable for a slide presentation. Halving the resolution area softens fine detail — text, distant objects, interface elements — which is disastrous for a coding stream and tolerable for a face on camera.
Two things not to do. Do not raise the bitrate above what the calculator suggests in the hope of improving quality: past the point where the encoder has enough bits, extra bitrate buys nothing at all and only increases the chance viewers on weaker connections buffer. And do not send more than your platform accepts — most publish an ingest maximum, above which they may reject the stream or decline to transcode it into lower-quality options, which leaves viewers on slow connections unable to watch at all.
Read the headroom figure as the honest verdict. If it comes out below the percentage you asked to reserve, the calculator has already told you the highest total bitrate your link supports; use that number rather than negotiating with yourself. If it comes out very high, you have room to raise resolution, frame rate or codec quality — or simply to enjoy an unusually stable stream.
One thing this calculator cannot check for you is whether your machine can encode at these settings in real time. Bitrate is a network question; encoding load is a CPU or GPU question, and a hardware encoder that cannot keep up will drop frames on a connection with plenty of headroom. If you are export-bound rather than upload-bound, the video export and upload time calculator is the tool for that side.
Video bitrate by resolution and frame rate
| Resolution | Pixels per frame | 30 fps | 60 fps |
|---|---|---|---|
| 480p (854 × 480) | 409,920 | 615 kbps | 1,230 kbps |
| 720p (1280 × 720) | 921,600 | 1,382 kbps | 2,765 kbps |
| 1080p (1920 × 1080) | 2,073,600 | 3,110 kbps | 6,221 kbps |
| 1440p (2560 × 1440) | 3,686,400 | 5,530 kbps | 11,059 kbps |
| 2160p (3840 × 2160) | 8,294,400 | 12,442 kbps | 24,883 kbps |
Every figure is exactly proportional to pixel count and frame rate, which is why 1080p30 and 720p60 differ by only 12% — 3,110 against 2,765 — while looking completely different. Choose between them on content, not on bandwidth.
What the estimate does not account for
- Encoder preset and quality settings. A slower preset achieves the same quality at a lower bitrate by spending more CPU time searching. The bits-per-pixel figure assumes a typical real-time preset.
- Keyframe interval. Frequent keyframes cost bitrate because each one is compressed without reference to its neighbours. Platforms usually specify a required interval, commonly two seconds.
- Your machine's encoding capacity. Bitrate is about the network. If the CPU or GPU cannot encode in real time you will drop frames regardless of how much upload headroom you have.
- Latency and jitter. A connection can have adequate throughput and still deliver an unstable stream if latency spikes. Throughput tests do not reveal this; a sustained stream test does.
- Wi-Fi variability. A wireless link's real capacity changes minute to minute with interference and distance. Every serious streaming setup is wired for this reason alone.
- Platform transcoding rules. Whether your stream is offered to viewers at lower qualities depends on the platform, and on some it depends on your account status. Sending an unnecessarily high bitrate can leave viewers on slow connections with no watchable option.
- Upload contention from the stream's own content. Online games, voice chat and cloud saves all consume upload while you stream, which is exactly what the headroom figure exists to absorb.
How this relates to recorded and delivered video
Live streaming is the hardest case of a general problem: choosing a bitrate that is high enough for the picture and low enough for the pipe. The same arithmetic reappears everywhere in production, with different constraints. When you record rather than stream, the constraint moves from your upload speed to your card and drive capacity — the video project storage calculator handles that, and recording bitrates are typically an order of magnitude higher than streaming ones because there is no network to fit through.
When you export a finished cut and upload it, the constraint becomes wall-clock time rather than sustained throughput, and the file size at a given bitrate decides your deadline; that is the video export and upload time calculator. For audio-only delivery the same bits-per-second reasoning governs podcast file sizes and hosting bills, worked through in the podcast hosting bandwidth and cost calculator.
If you are streaming as a business rather than a hobby, the bandwidth is rarely the limiting cost. The YouTube ad revenue calculator and the sponsorship rate calculator cover what the audience on the other end of that connection is actually worth.
Key terms
- Bits per pixel (bpp)
- The bit budget allocated to each pixel of each frame. Lower for predictable content, higher for motion and detail. It is the one term in the formula that is judgement rather than arithmetic.
- Headroom
- Capacity reserved above the stream bitrate to absorb encoder spikes, competing traffic and variation in the connection. Streaming at full measured capacity is how dropped frames happen.
- Ingest limit
- The maximum bitrate a streaming platform accepts from a broadcaster. Exceeding it can cause rejection or prevent transcoding into lower-quality options for viewers.
- Transcoding
- The platform re-encoding your single incoming stream into several quality levels for viewers. Without it, everyone must have enough bandwidth for your original stream.
