CRF — Constant Rate Factor — is the rate-control mode used by virtually every modern encoder (x264, x265, SVT-AV1) for video-on-demand. Instead of telling the encoder "use exactly N Mbps", you tell it "aim for this perceived quality level" and let the bitrate land where it needs to. Calm scenes naturally compress to small bitrates; busy scenes get more bits. The result is consistent visual quality across the whole video at the minimum total file size.

CRF takes a number from 0 to 51 — lower = higher quality, larger file. The values that matter in practice: CRF 18 for x264 is visually indistinguishable from the source for most viewers (essentially "archive quality"). CRF 23 is the x264 default and a sensible web-streaming setting. CRF 28 is the x265 (HEVC) default. A move of 6 points roughly doubles or halves the bitrate. The exact number that's "right" depends on the codec, content type and audience — many teams settle on CRF 22–24 (H.264), 25–28 (HEVC), 28–32 (AV1) for general web delivery.

The reason CRF is preferred over fixed-bitrate VBR for VOD: same encode complexity, no second pass needed, no over-spending on easy scenes, and you can guarantee a quality floor across an entire library with one setting. The downside: bitrate is unpredictable, so file sizes vary 5–10× between a 90-minute concert film and a 90-minute interview. When CDN budgets matter, services use capped CRF — CRF, but with a hard upper bitrate limit — which preserves most of CRF's quality wins while keeping the worst-case file size in check.