ScreenTest.Pro

Screen Banding Explained: 8-bit vs 10-bit, FRC, and Gradients

by Screen Test Propublished last reviewed

Point a slow sunset at almost any screen and you’ll see it: instead of a smooth fade from orange to blue, a series of flat stripes with visible seams. That’s banding, and it’s the most misunderstood “defect” in display testing — because sometimes it’s your panel, sometimes it’s the content, and sometimes it’s your video card quietly throwing away data.

Run the gradient test on the homepage while you read; this article is much better with the evidence on screen.

Where the stripes come from

A digital gradient isn’t continuous — it’s a staircase of discrete levels, and banding is simply the staircase becoming visible.

With 8 bits per channel, a grayscale ramp has 256 possible levels. Stretch those 256 levels across a 2560-pixel-wide screen and each level occupies a 10-pixel-wide column. Whether you see those columns depends on how far apart the levels are perceptually — and human vision is cruelest in dark regions and in slow, large-area gradients. That’s why banding lives in sunsets, fog, vignettes, and dark movie scenes, and almost never in busy daylight footage.

With 10 bits, the same ramp has 1,024 levels — four steps inside every one 8-bit step. Large smooth gradients are where those extra bits actually matter; HDR formats assume 10-bit for exactly this reason.

The panel bit-depth food chain

What you bought and what you got are often different numbers:

  • True 10-bit panels are mostly professional monitors and high-end TVs.
  • 8-bit + FRC is what most “10-bit” consumer monitors are. FRC (frame rate control) flickers a pixel between two adjacent 8-bit levels frame by frame so the average lands in between. Done well, it’s genuinely hard to distinguish from true 10-bit at viewing distance.
  • True 8-bit is the mainstream desktop monitor.
  • 6-bit + FRC is common in budget laptops. 64 real levels per channel, dithered hard. If a cheap laptop’s gradients look crunchy next to your desktop’s, this is why — it’s built in, and no setting removes it.

The catch: a 10-bit panel only shows 10-bit gradients when the whole chain plays along — the content, the app, the OS, the GPU output format, and the cable all have to carry 10 bits. Any 8-bit link quantizes everything after it.

Why a browser test can’t prove bit depth

Honesty section. Our gradient test draws the smoothest ramp the browser will give it — and browsers, today, hand almost all page content to the screen at 8 bits per channel, with color management in between that can itself introduce or hide steps. What the test is genuinely good at:

  • Comparing regions of one screen — banding that appears only in a corner, or changes with viewing angle, is a panel property, not a content property.
  • Catching gross problems — a 6-bit-class panel, a display cable negotiated down to a lower format, aggressive “dynamic contrast” mangling the ramp.
  • Spotting dirty-screen effects — a ramp sweeping slowly across the panel makes uniformity problems obvious in a way solid colors don’t.

What it can’t do is certify your panel as true 10-bit. That requires a test pattern generator feeding known 10-bit signals through a controlled chain. Treat anyone’s browser test that claims otherwise with suspicion, ours included — which is why ours doesn’t claim it.

Is it the screen, the signal, or the source?

Three quick experiments separate the suspects:

  1. Our ramp is banded, everywhere on the panel, on every input. Panel or GPU output format. Check your display settings: output color depth (8 vs 10 bpc), and on TVs-as-monitors, whether the HDMI input is in “PC” mode. Long or cheap cables at high resolutions and refresh rates force lower formats more often than people think.
  2. Our ramp is smooth, your movie is banded. The content. Heavy video compression quantizes gradients before your screen ever sees them; streaming platforms’ dark scenes are famous for it. No monitor setting fixes upstream compression.
  3. Ramps band only after enabling HDR. The chain. HDR pipelines that tone-map badly, or fall back to 8-bit at certain refresh rates, produce worse gradients than plain SDR. Try dropping the refresh rate one notch — bandwidth limits force these tradeoffs silently.

What actually helps

  • Set the GPU to 10 bpc if the panel and cable support it (and accept that some combinations of resolution and refresh rate won’t).
  • Use good cables at spec, especially past 4K60.
  • Turn off “contrast enhancement” features, which posterize shadows by design.
  • For content you create: add subtle noise (dither) to large gradients before exporting to 8-bit. Film grain is a banding vaccine — that’s not an accident.

And calibrate your expectations along with the screen: a faint step in a full-screen black-to-white ramp at close range is an 8-bit panel behaving exactly as 8 bits behave. The test that matters is whether real content shows stripes at real distance.

Sources