Normalize Audio Volume: Measure LUFS and Match Every File
To normalize audio volume across episodes you have to match loudness, not peaks: two dubs can share exactly the same peak and still sound loud and quiet side by side, because the ear hears average energy over time. Drop several MP3 or WAV files into the tool below. It measures each one's integrated loudness (LUFS) and true peak to ITU-R BS.1770 and works out how many dB each needs. The target starts at −16 LUFS (the figure Apple Podcasts publishes), and you can switch to the loudest file, the quietest file or another LUFS value; peak protection keeps the true peak under −1 dBTP by default, and the batch exports in one go. Everything runs in your browser; nothing is uploaded.
- BS.1770 integrated loudness
- 4× oversampled true peak
- Loudest / quietest / custom
- Nothing uploaded
Updated Nov 6, 2026Fact-checked Nov 6, 2026
Normalize audio volume
ON DEVICENormalize audio volume: drop several files, read the loudness table
Each file gets its integrated loudness, true peak and the gain it needs, and the table copies in one click. Pick a target and a peak ceiling, then export; several files come as one ZIP.
How to normalize audio volume: measure, set a target, export
Don't ride volume faders by ear one clip at a time. Let the tool measure every file first; with the numbers side by side, what to add and what to cut is obvious.
- 01
Step 1
Add the files to match
Drop several MP3, WAV or M4A files at once: every episode of a series, say, or the language versions of one episode, up to 50 per run. Each file can be up to 200 MB and 60 minutes, half that on phones.
- 02
Step 2
Read the loudness table
Every file shows integrated loudness (LUFS), true peak (dBTP) and the suggested gain. Readings for files under 3 seconds may be unreliable, and files with no valid integrated reading (almost all silence, for instance) are marked instead of being given a guessed gain. The table copies in one click for your records.
- 03
Step 3
Choose a target and a peak ceiling
Three targets: a LUFS value you type (−16 by default, anywhere from −40 to −5), the loudest file, or the quietest file. The ceiling defaults to −1 dBTP and can be set from −9 to 0. A file that would cross the ceiling only gets gain up to it and is flagged as not reaching the target.
Tip · Unsure? Match the quietest file. It only turns things down, so it almost never meets the ceiling.
- 04
Step 4
Switch on light limiting if you need it
With light limiting on, the little bit of peak above the ceiling is pressed down by a limiter (up to 6 dB) so the file reaches the target. Limiting softens the punch of the loudest words, more so the harder it works, which is why it starts off.
- 05
Step 5
Pick a format and export
Write MP3 or WAV. Every new MP3 encode loses a little more, so if you will edit or mix afterwards, WAV is the better choice. Several files download as one ZIP.
Peak normalization is not loudness normalization: what LUFS measures
Plenty of people who set out to normalize audio volume have “normalized” files by pushing each one's highest peak to 0 dB or −1 dB, and still ended up with loud and quiet episodes. A peak is a single instant; loudness is the average energy of the whole file, weighted the way the ear hears.
dBFS, dBTP and LUFS: what each one measures
| Unit | What it measures | Used for |
|---|---|---|
| dBFS | How far a sample sits below digital full scale (0 dBFS); a sample-peak reading | Avoiding clipping: no sample may exceed 0 dBFS |
| dBTP | True peak: the signal is oversampled to find the highest point between samples, a little above the dBFS peak | Avoiding distortion after MP3 or AAC encoding or digital-to-analog conversion |
| LUFS / LKFS | Integrated loudness: K-weighted average energy with silence and very quiet parts left out | Making programmes and episodes sound equally loud |
| LU | A loudness difference; 1 LU equals a 1 dB change | “This episode is 2.4 LU quieter than that one” |
How BS.1770 integrated loudness is computed
- 1.K-weighting: a high-shelf filter lifts everything above about 1.7 kHz by about 4 dB (a model of the head), then a high-pass at about 38 Hz removes the deepest lows. A brighter voice therefore measures louder at the same peak.
- 2.Blocks: the signal is cut into 400 ms blocks overlapping by 75%, and each block's mean energy is calculated.
- 3.Absolute gate: blocks below −70 LUFS, essentially silence, are dropped.
- 4.Relative gate: the remaining blocks are averaged, and any block more than 10 LU below that average is dropped too.
- 5.The blocks that are left are averaged and converted to LUFS: that is the integrated loudness.
The two gates keep silence from dragging the figure down: pauses between dubbed lines and blank heads and tails are excluded, so you measure how loud it is while someone is speaking. The tool resamples to 48 kHz before measuring, and its measuring code is tested against BS.1770's calibration point: a 1 kHz sine at 0 dBFS reads −3.01 LKFS, within 0.1 LU. True peak is approximated with 4× oversampling. The standard itself is ITU-R BS.1770.
Why dubbed episodes end up at different loudness
AI Drama Voice peak-levels every line to about −1 dBFS on export (boosting a single line by 3× at most), so within one episode the lines peak at much the same height. Equal peaks are not equal loudness, though. A line that stays full from start to finish and a line with one loud syllable can share a peak and differ a lot in average energy. Episodes differ in how dense and heated the dialogue is; languages differ in pace and timbre. The integrated LUFS of whole episodes can easily be several LU apart. How far apart, you only learn by measuring, which is exactly what this tool is for: drop in every episode and language and read the table.
Dubbing exports already peak near the ceiling
Because every line is peak-levelled to about −1 dBFS, an exported episode's true peak usually sits close to −1 dBTP already. Raising a quiet episode leaves peak protection almost no room, so it gets flagged as not reaching the target. Matching the quietest file, or turning on light limiting, is the practical way through.

What loudness should audio be? Published platform targets
No single number is right for every platform. This table lists only targets the platforms publish themselves; where we found no official figure it says “not published” rather than repeating forum lore.
| Platform or standard | Published target | Peak requirement |
|---|---|---|
| EBU R 128 (European broadcast) | Programme loudness −23.0 LUFS | True peak at most −1 dBTP during production |
| Spotify | Plays tracks at −14 LUFS (listeners can choose Loud −11 or Quiet −19) | Masters below −1 dBTP true peak; masters louder than −14 below −2 dBTP |
| Apple Podcasts | About −16 LKFS, ±1 dB | True peak no higher than −1 dBFS |
| ACX (Audible audiobooks) | Uses RMS, not LUFS: −23 to −18 dB RMS per file | Peaks no higher than −3 dB; unauthorized TTS or AI narration not accepted |
| YouTube, TikTok, Douyin | Not published | Not published |
Sources: EBU R 128, Spotify loudness normalization, Apple Podcasts audio requirements, ACX audio submission requirements. Note that Spotify adjusts at playback: loud tracks are turned down, but quiet ones are only turned up as far as 1 dB of headroom allows, so a master that is too quiet stays quiet. Video platforms publish no target for short dramas, so what matters most is that every episode of a series sits at the same level: pick one target (Apple's −16 is a reasonable reference) and bring every episode to it.
How the gain is worked out, and when a file falls short
Gain needed = target loudness − measured loudness; true peak afterwards = original true peak + gain. If the new true peak stays under the ceiling, the full gain is applied. If not, the default is to stop at the ceiling and flag the file. With light limiting on, an overshoot of up to 6 dB is handled by the limiter; anything beyond that is still flagged. Here are three files against a −1 dBTP ceiling.
| File | Loudness / true peak | Match loudest (−17.2) | Match quietest (−19.6) |
|---|---|---|---|
| Episode 1 · Chinese | −17.2 LUFS / −1.3 dBTP | 0 dB | −2.4 dB |
| Episode 1 · English | −19.6 LUFS / −1.1 dBTP | Needs +2.4 dB, gets +0.1 dB and is flagged; with limiting, full gain and about 2.3 dB of limiting | 0 dB |
| Episode 2 · Chinese | −18.0 LUFS / −2.6 dBTP | +0.8 dB | −1.6 dB |
Does loudness normalization hurt quality?
Plain gain doesn't change the tone; everything just gets louder or quieter. Two things can cost quality. Limiting presses the loudest moments down: 1 to 2 dB is usually inaudible, several dB makes shouts and slammed tables sound flattened. And re-encoding: MP3 in and MP3 out adds one more round of lossy coding. If you will keep editing or mixing, export WAV.

Where loudness normalization goes: after the dub, before merging and music
Normalize audio volume at the wrong point and later steps undo it. In this order, once is enough.
Normalize, then merge
To join episodes into one file, bring each episode to the same loudness here first, then merge MP3 files. Normalizing after the merge can only move the whole thing; the differences between episodes stay.
Normalize the voice, then add music
Background music raises the overall loudness and lets more of the file through the gates. Normalize the bare voice first, mix with add background music, then measure the finished mix once more.
Measure languages together
Drop the Chinese, English and Thai versions of one episode in together and match the quietest: every language then plays at the same level, and viewers who switch language don't reach for the volume.
Don't aim too loud
The louder the target, the sooner files hit the peak ceiling and need limiting. Spoken word has no reason to chase −14 like music; Apple Podcasts' −16 LKFS is a sensible reference, and keeping every episode the same matters more than the number.
Keep the loudness table
Copy the table and store it with the masters. When you add an episode later, bring it to the same LUFS without reprocessing the whole season.
Format is a separate job
Normalizing doesn't change sample rate or channels. If the edit wants 48 kHz WAV or a platform wants stereo, switch format with the WAV to MP3 converter.
Frequently asked questions
Match their integrated loudness (LUFS), not their peaks. Drop every file into this tool to normalize audio volume, read each file's LUFS, then match the loudest, the quietest or a value you type; the tool works out each file's gain and exports the batch.
LUFS is integrated loudness computed to ITU-R BS.1770: K-weighted average energy with silence and very quiet parts left out. An ordinary dBFS peak only looks at the single highest sample. LUFS is still a decibel scale relative to full scale, and a 1 LU difference equals 1 dB.
It depends on where it goes. EBU R 128 broadcast is −23 LUFS, Spotify plays at −14 LUFS and Apple Podcasts recommends about −16 LKFS; YouTube, TikTok and Douyin publish no target. For a dubbed series, the key is that every episode matches, so pick one value and bring every episode to it.
Plain gain doesn't change the tone. What can is limiting (the harder it works, the flatter loud lines sound) and re-encoding (MP3 in, MP3 out adds one more lossy pass). That's why limiting starts off and WAV output is recommended if you will keep editing.
Turning audio up raises the peaks too, and anything past full scale gets clipped flat, which you hear as crackle; after MP3 decoding the true peaks between samples run a little higher still. This tool keeps true peak under −1 dBTP by default and flags files it can't raise enough, instead of clipping them quietly.
Yes. To normalize audio volume in a batch, drop in several files; they are processed with one target and one ceiling, then zipped into a single download. Before you batch normalize MP3 files, check the table for anything flagged.
No. Decoding, loudness measurement, gain, limiting and encoding all happen in your browser. No AI, no credits and no sign-in.
Levels matched. Let us dub the next episode. One cast. Every episode at the same level.
Paste a Chinese episode script: AI casts the characters, dubs it line by line and keeps the same cast across 8 languages, with MP3 and timed SRT exports. Cast analysis is free.
Billed by characters generated · Failed runs refunded automatically · Alipay, WeChat Pay and cards







