Banding

On this page 6

Banding is a video quality artifact in which a smooth gradient, such as a sky, a studio backdrop or a dark vignette, is reproduced as a series of visible flat steps instead of a continuous transition. It is also called contouring or posterization when severe, and it belongs to the most common artifacts in video quality assessment because the eye is highly sensitive to small, regular edges in otherwise smooth areas.

Banding appears when a signal has too few distinct code values across a gradient, either because of limited bit depth, because processing has discarded precision, or because a lossy encoder has flattened subtle variations to save bitrate.

Why banding appears in a gradient

A digital video sample can take only a fixed number of values. An 8-bit signal offers 256 code values per component, and in standard limited-range video luma uses only 220 of them (16 to 235). A gradient that changes slowly across a wide area must therefore repeat each value over many pixels, creating flat zones separated by one-step edges.

Whether those edges are visible depends on the step size relative to the eye’s contrast threshold. Human vision detects relative luminance differences of roughly one percent or less in mid-tones, and the eye is especially good at spotting long, straight or curved contours. Steps that are invisible in a busy texture become obvious in a clean, low-texture gradient.

The following table shows how bit depth determines the number of available steps.

Bit depthCode values per componentLimited-range luma stepsBanding risk in gradients
8-bit256220High in skies and dark scenes
10-bit1,024876Low in SDR, moderate in HDR
12-bit4,0963,504Very low
Bit depth and available tonal steps

HDR makes the problem harder. The PQ transfer function spreads a luminance range of up to 10,000 nits across the code values, so each step covers more brightness change than in SDR. This is why HDR10 and Dolby Vision delivery require at least 10-bit encoding.

Sources of banding in the video chain

Banding can be introduced at any stage that reduces precision, and it often results from several small losses adding up. Identifying the stage is the first step to a fix.

StageMechanismTypical situation
Capture8-bit recording with a log profileStrong grading stretches few code values
Color gradingLarge contrast or saturation changesA flat sky pushed into deep blue
Bit-depth reductionTruncation to 8-bit without ditherExport from a 10-bit timeline
Lossy encodingQuantization removes low-amplitude detailStreaming at low bitrate
DisplayPanel or processing with limited precisionInexpensive 8-bit or 6-bit panels
Where banding originates

Encoding is the most frequent cause in delivered video. Codecs such as H.264, HEVC and AV1 transform blocks into frequency coefficients and quantize away small values. In a gradient, the fine variations that would hide steps are exactly those small coefficients, so the encoder produces large flat blocks whose boundaries line up into bands.

Banding is easily confused with neighboring compression artifacts. Its distinguishing feature is that the edges follow the shape of the gradient, not a block grid or an object outline.

ArtifactAppearanceMain cause
BandingSmooth curves or rings of flat colorToo few tonal levels in a gradient
Blocking artifactsSquare grid of tilesCoarse quantization per coding block
PosterizationStrong, few-color look across the imageExtreme level reduction
RingingHalos next to sharp edgesLost high-frequency coefficients
Chroma bleedingColor spreading past edgesChroma subsampling and quantization
Banding and similar artifacts

Objective metrics handle banding poorly. PSNR and SSIM may report high scores for a banded frame because the numerical error per pixel is tiny, and even VMAF is not tuned specifically for it. Dedicated banding detectors and careful visual review on a calibrated display remain necessary.

Preventing and reducing banding

The most effective prevention is to keep precision high until the last step and to add a small amount of noise before the final reduction. Each measure addresses a different source.

  • Record in 10-bit or higher whenever grading or HDR delivery is planned.
  • Grade in a 32-bit float or at least 16-bit working space.
  • Apply dither when converting from 10-bit to 8-bit, so steps become fine noise instead of edges.
  • Add subtle grain to large gradients; the encoder must then preserve texture that masks the steps.
  • Encode in 10-bit even for SDR; 10-bit HEVC or AV1 bands less at the same bitrate.
  • Use encoder tuning such as adaptive quantization that protects flat areas.

Grain and dither involve a bitrate trade-off. Noise is expensive to encode, so at very low bitrates it can be destroyed by the encoder or cause other artifacts. Some modern codecs, notably AV1, offer film grain synthesis, which removes grain before encoding and re-creates it in the decoder.

SituationRecommended remedyReason
Banded sky in 8-bit sourceDebanding filter plus grain in gradingRestores smoothness, masks steps
Clean master, banded streamHigher bitrate or 10-bit encodeEncoder is the cause
Banding after export onlyEnable dither in export settingsTruncation is the cause
HDR delivery10-bit end to end, never 8-bitPQ steps are larger
Choosing a banding remedy

A plain-language summary

Banding is what happens when a smooth color fade turns into stripes. Picture a sunset sky that should glide from orange to dark blue, but instead looks like a set of painted stripes, each a slightly different shade.

It occurs because digital video has only a limited number of shades to choose from, and compression can throw away the tiny differences that would hide the steps. More shades, careful processing and a little added fine noise keep gradients smooth.

An example from practice

A documentary team films a sunrise over the sea in 8-bit 4:2:0 with a log profile. In grading, the editor increases contrast and saturation in the sky, and the export for an online platform at about 8 Mbit/s in 1080p shows clear rings around the sun.

The colorist reworks the shot in a 32-bit float timeline, applies a light debanding filter to the sky, adds fine grain across the frame and exports a 10-bit HEVC master before the platform’s own encode.

The delivered stream still uses the platform’s bitrate, but the added texture survives compression well enough to break up the contours. Viewers see a smooth sunrise, and the editor adopts 10-bit recording for future shoots with strong gradients.