📊

Noise Spectrum Analyzer

This free noise spectrum analyzer shows the live FFT spectrum of ambient noise on a logarithmic frequency axis. It marks dominant frequencies, suggests their likely sources (mains hum, motor whine, fan rumble), lets you toggle A/C/Z weighting, holds peaks, and exports the chart as a PNG.

Read the shape, not the absolute decibels. A browser microphone is uncalibrated, so the vertical dB axis here is relative (dBFS), not true dB SPL — this is not a sound-level meter and not valid as legal, complaint, or compliance evidence. What is genuinely meaningful is calibration-independent: the spectral shape, the peak frequencies, the noise-color slope, and before/after differences with the same mic. Consumer mics also roll off at the extremes and generally cannot capture true infrasound (<20 Hz). Nothing is recorded or uploaded.

Idle — press Start to allow your microphone and see the live noise spectrum.

Weighting

Vertical axis = relative level (dBFS, uncalibrated). Horizontal axis = log frequency. The dotted cyan trace is peak-hold.

Dominant frequencies

Strongest peaks above the noise, with a best-guess likely source. Frequencies are calibration-independent and reliable; source labels are heuristics — treat them as hints, not certainties.

#FrequencyRel. levelLikely source
Start the analyzer to detect peaks.

Calibration (shared, optional)

Optional. The spectrum shape needs no calibration. If you want an approximate dB SPL on the readout, set an offset once against a real meter — it is shared across every noise tool here.

Broadband level
SPL estimate not calibrated

No calibration offset stored. Showing relative dBFS only.

How It Works

The analyzer pulls a continuous stream from your microphone and runs a Fast Fourier Transform (FFT) on each short window of audio, splitting the sound into hundreds of frequency bins. Those bins are plotted on a logarithmic frequency axis — the same way we hear pitch — so a hum at 50 Hz and a hiss at 10 kHz each get readable space instead of bunching the lows into a sliver.

Every frame, the tool scans for local maxima that stand clearly above their neighbours, ranks them, removes near-duplicates, and lists the strongest. For each peak it compares the frequency to common noise signatures — mains hum and its harmonics (the characteristic noise hum frequency at 50/60 Hz and multiples), motor and compressor whine, fan blade-pass rumble, transformer buzz, and high-frequency switching noise — to offer a likely source. These labels are heuristics: the frequency is hard data, the source is an educated guess. If you want to characterise the overall spectral slope rather than individual peaks — for example, to confirm whether background noise is white, pink, or brown — the noise color analyzer does that in a dedicated view.

The A/C/Z weighting toggle applies an approximate emulation of the IEC 61672 curves. Z is flat (raw energy). A discounts the lows and slightly lifts 2–4 kHz to mirror how loud noise sounds. C is nearly flat through the mids with gentle roll-off at the extremes. The curves are computed from the standard formulas and are approximations, not certified filters. Peak hold overlays the highest level each bin has reached (with optional decay) so intermittent tones leave a visible trace, and PNG export saves exactly what is on the canvas as a local download — useful for documenting a before/after, with the caveat that it is indicative only, never legal evidence.

What is trustworthy and what is not

Because a browser cannot know your microphone's real-world sensitivity (and the OS may apply gain), the vertical dB axis is relative dBFS, not calibrated dB SPL. Do not read "the room is 60 dB" off this chart. What survives the lack of calibration is genuinely useful: the spectral shape, which frequencies peak, the noise-color slope (is it pink-ish, white-ish, low-heavy?), and how it changes before vs after you fix something — as long as you keep the same mic, distance, and gain. Consumer mics also roll off at the very low and very high ends, so deep sub-bass and true infrasound (<20 Hz) will read low or vanish.

A practical tip for troubleshooting environmental noise: use the peak-hold feature set to Infinite while you systematically switch off appliances one at a time. Each time you eliminate a tonal source, you will see a peak disappear from the held room noise spectrum trace — a reliable way to attribute a persistent hum or whine to its origin. For a faster view of the overall broadband noise level alongside the spectral shape, the noise pollution meter runs simultaneously in a separate tab and shares the same optional calibration offset.

The logarithmic frequency axis is essential for noise work because pitch perception is logarithmic — each musical octave doubles the frequency, so equal octave-width spacing on the horizontal axis means equal perceptual distance. On a linear axis, the low-frequency region where mains hum (50 or 60 Hz) and HVAC rumble live would be compressed into a tiny strip. The log axis gives each decade (e.g. 100 Hz to 1 kHz, or 1 kHz to 10 kHz) equal visual width, matching standard acoustic octave-band analysis.

Share or embed this tool

Free to use on your own website — WordPress, Wix, or any platform. Paste one line and it works instantly, resizing to fit.


Frequently Asked Questions

Can I read the actual loudness in decibels off this?
No. The vertical axis is relative dBFS, not calibrated dB SPL, because a browser can't know your mic's sensitivity or the gain the OS applied. This is not a sound-level meter and the numbers aren't valid as legal, complaint, or compliance evidence. The spectrum's shape and its peak frequencies, however, are calibration-independent and genuinely meaningful.
How accurate are the dominant frequency readings?
The frequency of each peak is reliable — it comes straight from the FFT and doesn't depend on calibration. Resolution improves with a larger FFT size (more bins). The "likely source" label beside each peak is only a heuristic based on common noise signatures, so treat it as a hint to investigate, not a definitive identification.
What do A, C and Z weighting do here?
They re-shape the displayed spectrum with approximate emulations of the IEC 61672 curves. Z is flat (raw energy). A discounts low frequencies and slightly lifts 2–4 kHz to match how loud noise sounds to people. C is nearly flat through the mids with mild roll-off at the extremes. They're computed from the standard formulas but are approximations, not certified measurement filters.
Why does the deep bass or infrasound look weak or missing?
Consumer microphones roll off at the frequency extremes and generally cannot capture true infrasound below about 20 Hz or very deep sub-bass. So a low reading down there may reflect your mic's limits rather than a quiet room. For low-frequency rumble, treat the very bottom of the chart with caution.
Why must auto-gain and noise suppression be off?
The tool requests the raw microphone signal with automatic gain control, noise suppression, and echo cancellation switched off. Those features would actively reshape the spectrum — pumping levels and carving out frequencies — making a noise measurement meaningless. If your OS forces processing that can't be disabled, the spectrum may look artificially clean; turn off mic enhancements in your system settings.
Is my audio recorded or uploaded?
No. The microphone signal is analyzed in real time entirely in your browser to compute the spectrum; nothing is recorded, saved, or transmitted. A PNG export is a local download you trigger yourself. The microphone is released when you press Stop or close the tab.
How do I tell whether my hum is 50 Hz (European mains) or 60 Hz (US mains)?
Start the analyzer and look at the dominant-frequencies table. A mains hum peak near 50 Hz (and typically harmonics at 100, 150, 200 Hz) indicates a European or international 50 Hz grid; a peak near 60 Hz (with harmonics at 120, 180, 240 Hz) points to a North American 60 Hz supply. The FFT frequency reading is calibration-independent, so it is reliable regardless of whether you have set a calibration offset. A larger FFT size (8192 or 16384) gives finer resolution and makes the 50 vs 60 Hz distinction clearer.
Which FFT size should I choose for noise analysis?
The default 8192 is a good balance: it gives frequency resolution of roughly 5–6 Hz at a 44.1 kHz sample rate, enough to separate a 50 Hz hum from a 60 Hz hum. Use 16384 if you need finer resolution to distinguish close tones, for example a blade-pass frequency from its harmonic. Use 2048 or 4096 if you want a faster temporal response and the display feels sluggish — the trade-off is coarser frequency bins.
Can I use this to identify noise from a neighbour or HVAC system?
Yes, with appropriate caveats. The tool is useful for identifying the characteristic signature of a noise source: a 50/60 Hz electrical hum, a motor whine at a fixed pitch, or a fan blade-pass frequency. Point your microphone toward the suspected source, use Infinite peak hold, and note which frequencies peak consistently. For HVAC diagnosis you can also compare spectra with the fan on versus off to isolate its contribution. The tool cannot prove origin or measure absolute levels — for that you would need a calibrated Type 1/2 sound-level meter. The HVAC noise analyzer on this site offers additional heuristics specifically for heating, ventilation, and air-conditioning signatures.