Normalize Audio

Set a file to a peak or average target in dBFS, and see how much gain it took, to a tenth of a decibel.

Runs on your deviceAudioWorkingNo account needed

What this tool does

Normalize Audio measures the decoded samples one of two ways and then multiplies every one of them by a single number. Peak takes the largest absolute sample found anywhere in the file; Average (RMS) takes the root mean square of every sample in every channel. Whichever you pick, the gain that brings that measurement to your target is applied uniformly, so the balance between left and right, and between one moment and the next, comes out exactly as it went in. The summary reports the measurement before, the measurement after and the gain in decibels, which is how you tell a file that moved from one that was already at level.

What this is not is a loudness meter in the broadcast sense. Streaming and broadcast targets are defined by ITU-R BS.1770, which applies a K-weighting filter, gates the quiet passages out of the average and measures true peak between samples; none of that happens here, so typing −14 into the target does not hand you a −14 LUFS master. Peak and RMS are the two measures that can be computed exactly from the samples this page has already decoded, and they are the two the tool names in its output.

A single gain also cannot even out the loudness inside a file. When a recording swings between a whisper and a shout, both move by the same amount and the distance between them is untouched — closing that gap is compression, and this tool does not compress, limit or ride the level. Where a constant gain earns its place is the level of a file as a whole: a set of recordings captured at different levels can be brought to one common target so nobody reaches for the volume control between them.

Two limits sit at either end of the job. Average (RMS) aims at a level rather than a ceiling, so on dynamic material the gain it wants would drive peaks past full scale; that gain is reduced until the loudest peak sits just under the limit, and the summary then says it was capped, which means your target was not reached. At the other end, output is WAV or MP3 and nothing else, because no browser exposes an AAC, FLAC or OGG encoder to a page — an MP3 in and an MP3 out costs a second lossy pass through the LAME encoder, and every other format comes back as WAV, larger than it arrived.

How to use it

  1. Add the audio file. MP3, WAV, M4A, AAC, FLAC, OGG and Opus are accepted, as far as your browser can decode each one. Queue several and each is measured and scaled on its own against the same target.
  2. Choose Peak or Average (RMS). Peak puts the loudest sample exactly on the target and therefore cannot clip. Average (RMS) tracks perceived level more closely and caps its own gain rather than letting a peak cross full scale.
  3. Set the target level. Given in dBFS, from −40 to 0 in half-decibel steps, and −1 by default so an encoder has somewhere to overshoot. A value outside the range is pulled back into it rather than refused.
  4. Pick the output format. Match the input where possible keeps an MP3 as an MP3 and writes everything else as WAV. Since that is not settled until the file arrives, this default leaves both the MP3 bitrate and the WAV bit depth on screen; choosing WAV or MP3 outright hides whichever one stops applying.
  5. Read the summary before downloading. It shows the level before and after and the gain applied, and adds a note when RMS gain had to be capped — the one case where the file is quieter than you asked for.

Processing & privacy

Runs on your device. Your file is processed directly in this browser.

Common use cases

Matching a set of recordings

Interviews captured on different days sit at different levels. One RMS target across the batch brings them close enough that the volume control can stay where it is between files.

Rescuing something recorded too quietly

A phone left too far from the speaker may peak around −25 dBFS. Peak mode lifts it to −1 dBFS, though it lifts the hiss by the same amount — this makes a quiet recording louder, not cleaner.

Making headroom before a lossy encode

A file pressed hard against 0 dBFS leaves an encoder nowhere to go, and a decoded MP3 can read higher than the source did. Normalising to −1 or −3 dBFS gives the encode room.

Levelling narration for a slide deck

Voice-over that sounds fine in headphones vanishes through a laptop speaker. An RMS target brings the average up, and the cap stops the loudest consonants from clipping on the way.

Questions

Is my audio uploaded?
No. The file is decoded, measured, scaled and written again inside this browser tab, so no audio is sent to a server and the tool still works with the network switched off.
Does this normalise to LUFS?
No, and the tool says so on the control itself. LUFS is defined by ITU-R BS.1770 with K-weighting, gating and true-peak measurement, none of which is implemented here. If you have to hit a platform's published loudness target, use a meter built for it and treat this as a level adjustment instead.
Should I choose Peak or Average (RMS)?
Peak when you want a predictable ceiling — a file that must not exceed −1 dBFS. Average (RMS) when several files need to sound about as loud as each other, since perceived loudness follows the average far more closely than it follows a single loudest sample.
Why did the summary say the gain was capped?
That only happens in Average (RMS) mode. The gain needed to reach your average would have pushed the loudest peak past full scale, so it was reduced until the peak sits just below the limit. The file is therefore quieter than the target you set, and the alternative would have been audible clipping.
Can normalising clip my audio?
Peak mode cannot: the loudest sample is placed on a target of 0 dBFS or below. RMS mode caps its gain for the same reason. The residual risk is downstream — a lossy encoder can reconstruct peaks slightly above the ones it was given, which is why the default target is −1 dBFS rather than 0.
Why was my file refused as silent?
Digital silence measures zero on both peak and RMS, and no multiplier turns zero into a level. Rather than hand back an identical file and call it normalised, the job stops and says the file is silent.
Can it write AAC, FLAC or OGG?
No. Browsers ship decoders for those formats but no encoders, so the only two things this page can write are WAV and MP3. A FLAC is read correctly and returned as a WAV, which is usually several times the size.
Does normalising cost quality?
The gain is one multiplication per sample in 32-bit float, finer than the file that was decoded into it, so the rounding it adds sits far below anything audible. The cost is in writing the result. An MP3 output is a second lossy encode, and it also folds anything above two channels down to stereo and shifts an unusual sample rate to the nearest one MP3 allows; a 16-bit WAV requantises the samples but keeps the rate and every channel. Pick 24-bit or 32-bit float WAV if the file is going on for further editing.

Related tools