Loudness normalization is what every streaming service does to your track on playback — Spotify, Apple Music, YouTube, Tidal all measure integrated LUFS and adjust playback gain so listeners don't have to ride the volume between tracks. Pre-mastering to the target gives you control over what they play; otherwise the platform decides.
Single-pass loudnorm. For mastering-grade accuracy, run a measurement first with the LUFS Meter, then apply a precise gain.
Music, podcast, voice — any audio file the browser can decode.
Up to 200 MB
-14 LUFS for Spotify / YouTube / Tidal. -16 LUFS for Apple Music / podcasts. -23 LUFS for EBU broadcast. -10 LUFS if the file is going somewhere with no normalization (SoundCloud, club PA).
ffmpeg filter: loudnorm=I=target:LRA=11:tp=-1.5
ffmpeg measures the integrated loudness, applies the gain offset, and limits true peaks to -1.5 dBTP so peaks don't clip after the boost. Output is 16-bit WAV.
Single-pass · transparent for most material
Match the platform you're delivering to. Spotify, YouTube, Tidal, Amazon Music: -14 LUFS. Apple Music: -16 LUFS. Podcasts: -16 LUFS (Apple) or -19 LUFS (Audible/ACX). Broadcast TV: -23 LUFS (EBU R128). SoundCloud and club playback don't normalize, so masters there sit at -8 to -10 LUFS.
Single-pass measures and adjusts in one go — fast, transparent, but accuracy is ±0.5 LU around the target. Two-pass measures the file once, then re-encodes with a more precise gain — usually within ±0.1 LU. For most material the difference is inaudible. For mastering deliverables where the LUFS spec is contractual, run a measurement pass with the LUFS Meter and apply gain manually.
No. The loudnorm filter runs a true peak limiter at -1.5 dBTP after the gain stage, so peaks stay safely below clipping even when the file is being boosted to a much higher loudness.
Spotify doesn't change your file on the server. They measure your integrated LUFS at upload, store the offset, and apply it on playback so users hear consistent loudness across tracks. Pre-mastering to -14 LUFS means listeners hear the loudness you intended; submitting a +6 LU louder file means they hear it 6 LU quieter than you intended (Spotify's algorithm pulls it down).