You are watching a video at a comfortable volume. Then an ad starts and suddenly you are scrambling for the mute button. This is one of the most common complaints about YouTube, and it has been around for years. The fix is simpler than most people think, but first it helps to understand why it happens.
The loudness problem
Audio loudness is not as straightforward as "how high is the waveform." Two clips with the same peak level can sound very different in perceived loudness depending on how much of the signal is near the peak. A 30-second ad with constant loud music feels much louder than a 10-minute documentary at the same peak level, even though a level meter would show them as equal.
The broadcast and streaming industry settled on LUFS (Loudness Units relative to Full Scale) as the standard for measuring perceived loudness. LUFS integrates short-term loudness measurements over time and weights them to match how human hearing perceives different frequencies. A target of -14 LUFS, for example, means the integrated loudness of a piece of audio should average to -14 dB below full scale.
YouTube applies loudness normalization to uploaded videos. Content that is mastered too loud gets turned down to the platform target, roughly -14 LUFS. Content that is mastered quiet stays as-is, since YouTube does not boost quiet videos. The system works reasonably well for creator content. The problem is ads.
Why ads are different
Ads on YouTube are delivered through a separate pipeline from creator content. Advertisers submit their video creatives to Google Ads, and those creatives do not always go through the same loudness normalization as organic YouTube videos. Some ad buyers apply heavy compression and limiting to their audio to maximize perceived loudness within the allowed peak level, a technique sometimes called the "loudness war."
Even when YouTube does normalize ad creatives, the transition between the normalized ad and the video that follows can be jarring if the video was uploaded at a lower integrated loudness level. YouTube normalizes each piece of content independently, but it does not smooth the transition between them.
The result: the ad ends, your video resumes, and the perceived volume drops noticeably. Or the opposite happens and the ad blows your eardrums.
Why system-level solutions fall short
Most people who have tried to fix this problem have reached for a system-level solution first. Here is why those approaches have limits.
Windows Loudness Equalization
Windows has a feature called "Loudness Equalization" in the audio device properties (Playback devices -> your device -> Properties -> Enhancements). It applies dynamic range compression to the final audio output from all applications mixed together. It can soften the harshest jumps, but it has no visibility into individual sources. It compresses everything coming out of your speakers at once, which means it cannot distinguish between a loud ad and a loud explosion in a movie you are watching at the volume you chose. It also depends on the audio driver supporting it, and many drivers do not implement it well.
macOS Sound Check
macOS has no direct equivalent to Windows Loudness Equalization at the system level. Some people use third-party tools like Boom or eqMac, which work at the CoreAudio level. These can be effective but they cost money and, like Windows Loudness Equalization, they operate on the final mixed output from all apps simultaneously.
YouTube's built-in normalization
YouTube has a setting in the player (the gear icon) that was historically called "Stable Volume" and appears in some clients. It provides some leveling for the current video but it does not help with ad-to-video transitions and it is not consistently available across all YouTube clients and regions.
The core problem with OS-level solutions: they cannot distinguish between different sources playing through the browser. A tab playing a podcast and a tab playing a game both route through the same system output. Per-source control requires working at the browser level, not the OS level.
The browser extension approach
A browser extension can work directly with the Web Audio API inside Chrome, which gives it per-element control over audio. Instead of compressing everything coming out of your speakers, it intercepts individual HTMLMediaElement instances (video and audio tags) inside each tab and routes them through a custom audio processing graph.
This means the extension knows exactly which video element is playing and can measure its loudness independently. It does not touch your system volume, does not affect other apps, and can respond to loudness changes at the level of individual clips rather than the entire output mix.
How Volume Equalizer handles it
Volume Equalizer is a Chrome extension built around a real-time automatic gain control (AGC) loop. Here is what happens when you play a video with it installed:
- The extension creates a Web Audio processing chain for the video element using
createMediaElementSource() - Every 100 ms, an
AnalyserNodereads a 2048-sample buffer of the audio signal after the compressor stage - The extension computes RMS (root mean square) over the buffer, converts it to decibels:
20 * log10(RMS) - It compares this to your target loudness (default -18 dB, adjustable from -30 to -10) and computes the gain correction needed
- The correction is applied to a
GainNodeviasetTargetAtTime()with a smoothing constant, so gain changes happen gradually without audible artifacts
When an ad starts, the loudness measurement rises. The AGC responds within a few hundred milliseconds and reduces the gain to bring the ad back to your target level. When the video resumes, the opposite happens. The transition is smooth because the gain ramp uses setTargetAtTime() rather than an abrupt step.
A dynamic compressor upstream of the AGC handles within-clip peaks, so the AGC does not have to react to every transient. A brick-wall limiter at -1 dBFS sits at the end of the chain as a final safety net.
Volume Equalizer is free and takes about 10 seconds to install. Works on YouTube, Twitch, SoundCloud, and any other site with HTML5 audio or video.
Install for Chrome - free ->Comparing the approaches
| Solution | Per-source control | Works on ads | No setup | Free |
|---|---|---|---|---|
| Windows Loudness EQ | no | partial | mostly | yes |
| macOS Boom / eqMac | no | partial | no | no |
| YouTube Stable Volume | per-tab | no | yes | yes |
| DAW / virtual cable | yes | yes | no | mostly |
| Volume Equalizer | yes | yes | yes | yes |
A note on DAWs and virtual audio cables
Some power users route browser audio through a virtual cable into a DAW (digital audio workstation) like Reaper or a standalone compressor plugin. This gives precise control and high audio quality, but it requires significant setup, adds latency, and needs to be reconfigured when you switch audio devices. It is a reasonable solution for a studio environment where the setup stays fixed, but it is overkill for casual listening.
The LUFS standard and why it matters
Understanding LUFS helps make sense of why manual volume adjustment is not a real solution. When a YouTube video is quiet at -23 LUFS and an ad hits at -10 LUFS, that is a 13 dB difference. At typical listening levels, 10 dB is roughly perceived as twice as loud. You cannot set a single system volume that feels comfortable for both.
The EBU R128 standard recommends -23 LUFS for broadcast. Streaming platforms target different values: Spotify normalizes to -14 LUFS, Apple Music to -16 LUFS, YouTube to around -14 LUFS for video content. Ads often arrive at -9 to -12 LUFS integrated, which is noticeably louder than the content they interrupt.
Real-time AGC bridges this gap by continuously measuring and correcting, something static volume controls cannot do.
FAQ
Why are YouTube ads louder than the videos?
YouTube normalizes creator content to around -14 LUFS, but ads are delivered through a separate pipeline and may not go through the same normalization. Ad creatives are often mastered loud by advertisers to grab attention, and the gap between ad volume and video volume can be noticeable.
Does YouTube have a built-in volume normalizer?
YouTube applies loudness normalization to uploaded videos targeting around -14 LUFS integrated loudness. However, this normalization applies per-video at upload time and does not affect ads or smooth transitions between different videos.
How do I stop YouTube ads from being louder than videos?
The most effective browser-based solution is a Chrome extension that normalizes audio in real time. Volume Equalizer measures loudness continuously using automatic gain control and keeps everything at a consistent level, including ads.
Does Windows Loudness Equalization fix YouTube ads?
It can help reduce the overall dynamic range but it works on the final mixed output from all apps, has no per-tab control, and its behavior depends on the audio driver and hardware. It cannot distinguish between an ad and the video that follows it.
Related: Volume Equalizer - Auto-normalize loudness in Chrome