Audio Noise Reducer

Learn the noise, then take it out gently.

  • Learns the noise
  • Before and after
  • WAV export
A small rounded grey fabric speaker on a light wooden desk, with a white ribbon curling in soft waves beside it and settling flat on the table

The guide

Steady Noise Can Be Learned and Subtracted. Everything Else Needs a Better Recording

Spectral subtraction works because hiss, fans and hum repeat themselves: measure them where nothing else is playing, take that much away everywhere, and stop before the voice starts to sound underwater.

  • 15.7 dB less noise in the built-in example at the default settings
  • 50 or 60 Hz the mains frequency; hum also sits at its whole-number multiples
  • 1.5 sum of the squared Hann windows at a hop of a quarter frame
  • 1979 the year S. Boll published spectral subtraction for speech
Read the full guide Fold the guide 8 min · 14 sources

Most background noise in a home recording is boring, and that is the best news a cleanup tool can get. The hiss of a preamp, the whoosh of a laptop fan, the hum of a mains cable: each one sounds the same this second as it did a minute ago. Anything that repeats can be measured, and anything that can be measured can be taken away.

That is the whole bargain behind spectral subtraction. It is not a clever guess about what a voice should sound like. It is bookkeeping: find out how much noise sits at each frequency, then remove roughly that much from every moment of the recording.

What steady noise looks like

A waveform is a poor place to look for noise. Hiss and fan noise turn the flat stretches of a recording into a fuzzy band, but the band says nothing about which frequencies are to blame. The useful picture is a spectrogram, which is what you get when you cut a signal into short, overlapping pieces, take the spectrum of each piece and stack the results side by side. The short-time Fourier transform does exactly that, and the squared size of its values is the spectrogram: time runs across, frequency runs up, and brightness shows how much energy sits there.

On a spectrogram, steady noise has an unmistakable look. Hiss is a haze that covers the whole height of the picture from one end to the other. A fan leaves a thicker fog at the bottom. Hum draws thin, perfectly straight lines that never move. A voice, by contrast, is made of short bright strokes that start, bend and stop.

There is a catch built into the picture. The length of each piece decides what you can see. A long piece separates frequencies that sit close together; a short piece shows exactly when something starts. You cannot have both at once, which is why the tool settles on pieces of 2,048 samples at 44.1 or 48 kHz, about 43 to 46 milliseconds.

Subtraction in plain words

In 1979, S. Boll described a noise suppressor for speech that still frames how most people think about the problem. Its idea is simple. While nobody is speaking, the spectrum of what you hear is the noise alone, so average it there. During speech, subtract that average from the spectrum of each short piece, then rebuild the waveform. Boll’s paper also noted that the residue left after subtraction needs further steps of its own, and that the whole job costs about as much computing as fast convolution.

The rebuilding step matters more than it sounds. Each piece is shaped by a window, a bell-shaped curve that fades the edges so that the cuts do not click. This tool uses the Hann window, a raised cosine whose ends just touch zero, and applies it twice: once before the transform and once after. When the pieces overlap by three quarters, the squared windows add up to exactly 1.5 at every sample. Divide by 1.5 and the overlapping pieces add back to the original signal, sample for sample. That is the overlap-add idea, and the tool checks it every time it is changed: with the strength at zero, the output matches the input to within one part in a million.

Change the overlap and the promise breaks. With only a quarter overlap, the summed windows swing between almost nothing and one, and the rebuilt audio wobbles in volume at the frame rate. That is not a subtle error. In the tool’s own test it leaves a difference of 0.6 on a signal that should come back unchanged.

The subtraction itself works on power. For each frequency, the tool compares the power it sees in a piece with the learned noise power. Where the piece holds only noise, the two are about equal and the frequency is turned down hard. Where a voice sits far above the noise, the gain stays close to one. In between, the gain slides smoothly. The Wiener filter, an older and more general idea, gives the same shape of answer: a gain at each frequency equal to the signal’s share of the total.

Why too much sounds watery

Noise is steady on average, not from moment to moment. In any single short piece, the noise at some frequencies will happen to be louder than its average, and at others quieter. If the tool subtracts the average exactly, the lucky peaks survive while their neighbours vanish. What is left is a scatter of tiny tones that pop in and out at random frequencies. The Audacity manual calls this result musical noise, bird song or tinkly bells, and anyone who has pushed a noise reducer too far has heard it. To many ears it sounds watery or metallic.

There are three defences, and the tool uses all of them. First, it subtracts a little more than the average, which the settings call strength: at the default of 2 it takes away twice the learned noise power, so random peaks are less likely to poke through. Second, it never cuts all the way: a floor keeps a quiet, even bed of the original noise, set by default at 30 dB below the learned level, and a separate limit caps the cut at any frequency, 18 dB by default. A smooth, faint hiss is far less distracting than a sparkle of artefacts.

Third, it smooths its own estimate of what each piece contains, averaging power over 50 Hz either side and about 30 milliseconds of time before deciding on a gain.

The order of that third step matters, and the tool’s own tests found out why. Smoothing the gains instead of the power felt natural, but it dragged the gain of every clear tone down toward its quieter neighbours. A test signal recorded 40 dB above its noise came out worse than it went in, at 31.7 dB. Smoothing the power instead left the tone’s gain near one, because a tone stays far above the noise even after averaging, while lonely noise peaks are flattened. The same test now comes out at 53.9 dB.

The honest advice is the same advice the Audacity manual gives: use the least reduction that gets the noise to an acceptable level. Listen to what was taken away as well. If the removed part has recognisable words in it, the settings are eating the voice.

Hum and its harmonics

Hum deserves its own treatment because it is not noise in the usual sense. It is a tone, tied to the mains frequency of 50 or 60 Hz, and it rarely comes alone. Mains-powered equipment and nearby wiring induce it into sensitive audio circuits; shared ground connections often produce it at twice the mains frequency, 100 or 120 Hz, because power supplies rectify the mains waveform; transformers buzz at twice the mains frequency too. The non-linear behaviour of magnetic materials adds further harmonics on top.

Because hum lives at exact frequencies, a notch filter can cut it with surgical precision. The tool uses the notch from the W3C Audio EQ Cookbook, one per harmonic, each with a Q of 30. At 50 Hz that is a notch about 1.7 Hz wide; half a hertz away it still cuts 5.7 dB, and at 100 Hz the 50 Hz notch costs only 0.002 dB. Spectral subtraction already lowers steady hum along with the hiss, so the notches are a choice, not a requirement.

They are not free. In the built-in example, a set of tones with fan noise and hum, the notches at 150 and 200 Hz land right among the example’s own tones. Turning on four notches at 50 Hz takes the hum bins down by nearly 18 dB, yet the measured signal-to-noise ratio of the result drops from 19.1 dB to 13.9 dB, because the notches also bend the wanted sound near them. On a real recording, use as few notches as clear the hum.

A worked example, and the limits

Open the tool and it processes its built-in example straight away: eight seconds at 48 kHz with a second and a half of noise before the first tone. With the default settings and the noise learned from the quietest tenth of the frames, the noise level falls from 28.3 to 44.0 dB below full scale, so the noise is 15.7 dB quieter. The loudest fifth of the recording changes by only 0.1 dB.

Because the example is built in code, the clean part is known, and the signal-to-noise ratio can be measured directly: 9.3 dB before, 19.1 dB after. Drag across the first second on the waveform instead and the tool learns the noise from that stretch: the noise falls to 45.2 dB below full scale and the ratio reaches 19.3 dB. The numbers barely move, which is what you would hope when both choices see the same noise.

On test signals the improvement is steady across noise levels. With white noise mixed in at 0, 5, 10 and 20 dB signal-to-noise ratio, the measured gain was between 14.9 and 15.8 dB; with a darker, fan-like noise it was between 11.3 and 13.3 dB.

The limits are just as plain. The method assumes the noise in the quiet stretch is the noise everywhere. Traffic, an audience, a door, a click or a second voice changes from moment to moment, so there is no average to subtract, and the Audacity manual says the same of its own noise reduction. Nor can subtraction separate a voice from music, or one voice from another. It cannot restore what was never captured, either: where the noise was louder than the voice, the voice at that frequency is gone.

That is why the best noise reduction happens before the record button. Every decibel the voice sits above the noise is a decibel nobody has to subtract later. Keep sensitive audio gear and its cables away from transformers and mains wiring, which induce hum, and watch for ground loops. Then leave a couple of seconds of room tone at the start of every take. A longer noise sample gives a steadier profile, and it costs nothing.

One last detail is about saving. The result is written as WAV, the RIFF format that IBM and Microsoft defined in 1991, whose 32-bit sizes limit a file to 4 GB. The 16-bit file adds triangular dither, made by summing two independent random values, a step that spreads rounding error into a faint, even hiss instead of distortion. The 24-bit file uses the extensible header recommended for anything above 16 bits, and the 32-bit float file keeps every value exactly. Each one is read back by the tool before it is offered to you.

Sources

Every source consulted for this guide. Links checked October 22, 2026.

  1. Noise reduction Wikipedia
  2. Short-time Fourier transform Wikipedia
  3. Window function Wikipedia
  4. Overlap-add method Wikipedia
  5. Wiener filter Wikipedia
  6. WAV - Wikipedia Wikipedia
  7. Mains hum Wikipedia
  8. Dither Wikipedia
  9. Suppression of acoustic noise in speech using spectral subtraction (S. Boll, IEEE Transactions on Acoustics, Speech, and Signal Processing, 1979) OpenAlex record of the IEEE article
  10. Audio EQ Cookbook W3C Audio Working Group, Working Group Note
  11. BaseAudioContext: decodeAudioData() method MDN Web Docs
  12. Audio File Format Specifications - WAVE or RIFF WAVE sound file Peter Kabal, MMSP Lab, McGill University
  13. WAVE Audio File Format Library of Congress, Sustainability of Digital Formats
  14. Noise Reduction - Audacity Manual Audacity Team (CC BY 3.0)