← UploadCheck

Free LUFS checker

Drop in an audio or video file to measure integrated loudness (LUFS) and true peak (dBTP) against the target you're publishing to. No signup, and nothing is uploaded — the measurement runs in your browser, so the file never leaves your machine.

Integrated loudness
True peak
Target

Loudness is one of 40+ checks

Getting to −14 LUFS doesn't mean the file is publishable. A render can hit the loudness target and still ship with a frozen frame at a stitch seam, dead air where narration dropped, lips out of sync, or captions cropped by the platform UI.

UploadCheck runs the full gate on the finished file and returns PASS / WATCH / BLOCK with timestamps your editor — or your AI agent — can act on. Free tier includes 200 checked minutes a month, no card.

Check a full file free

Loudness targets by platform

TargetIntegratedTrue-peak ceiling
YouTube / Shorts−14 LUFS−1.0 dBTP
Podcast (Apple / Spotify)−16 LUFS−1.0 dBTP
Broadcast (EBU R128)−23 LUFS−2.0 dBTP
Music streaming−14 LUFS−1.0 dBTP

A file passes when integrated loudness is within ±2.0 LU of target and true peak is under the ceiling — the same thresholds UploadCheck's loudness gate applies server-side.

How this is measured

This implements ITU-R BS.1770, the standard behind EBU R128: K-weighting (a high-shelf plus high-pass filter that approximates how the ear weights frequency), 400 ms blocks at 75% overlap, and the two-stage gate that discards silence and quiet passages so long pauses don't drag the reading down. True peak uses 4× oversampling to catch inter-sample peaks — the reason a master that reads −0.1 dBFS can still distort after a platform re-encodes it.

Decoding happens through your browser's Web Audio API, so supported formats depend on your browser. Very large video files take a moment to decode. For long files the browser must hold the decoded audio in memory — if a multi-hour file fails to decode, that's the limit.