See the frequencies inside any recording. Drop an audio file to render a full-length spectrogram, then change the FFT size, window, color map, frequency scale and dB range, zoom into any moment, read exact frequencies with the cursor and save the picture as a PNG.
Last updated:
Rendering…
Hover the spectrogram to read time, frequency and level.
-100 dB-20 dB
Advertisement
Advertisement
How to use the Audio Spectrogram Generator
Add an audio file by dropping it on the box or clicking Choose audio. A demo sound with a chirp, notes and noise is shown until you do.
Read the image: time runs left to right, frequency bottom to top, and the color shows how loud each frequency is. Hover to read exact values.
Adjust the analysis: a larger FFT size gives sharper frequencies, a smaller one sharper timing. Pick the color map, scale and dB range that show your sound best.
Zoom in with the + button and drag the image to pan. Click anywhere to listen from that point.
Download a PNG: set the size, choose whether to include axes and the whole file or only the current view, then press Download PNG.
How the spectrogram is calculated
The tool runs a short-time Fourier transform. For every column of pixels it takes a block of N samples (the FFT size) around that moment, multiplies it by a window function that fades the block's edges to zero, and computes a fast Fourier transform. The result is the strength of N/2 frequency bins, each sample rate ÷ N hertz wide. When one pixel column covers more audio than one block, several blocks across the column are averaged so short sounds are not skipped.
Each bin's power is converted to decibels relative to a full-scale sine wave: dB = 10 × log10(|X|² × (2 ÷ Σw)²), where Σw is the sum of the window values. A 0 dBFS sine therefore reads about 0 dB, and each 6 dB step down is half the amplitude. Gain and range then decide which part of that scale is mapped onto the colors.
FFT size: time versus frequency resolution
FFT size
Window length at 44.1 kHz
Bin width at 44.1 kHz
Good for
256
5.8 ms
172 Hz
Drum hits, clicks, very fast events
512
11.6 ms
86 Hz
Speech consonants, percussion
1024
23.2 ms
43 Hz
Speech, birdsong
2048
46.4 ms
21.5 Hz
General music and voice (default)
4096
92.9 ms
10.8 Hz
Melodies, harmonics, tuning
8192
186 ms
5.4 Hz
Bass notes, hum and its harmonics
16384
372 ms
2.7 Hz
Very fine pitch detail in slow, steady sounds
The window shapes the trade-off further. Hann is a balanced default. Blackman-Harris hides weak sounds next to loud tones much better (low leakage) at the cost of slightly wider lines. Hamming gives narrower peaks with more leakage, and rectangular (no window) gives the sharpest peaks but smears energy across the whole image.
Reading common patterns
Horizontal lines are steady tones: a sung or played note shows a stack of lines at the fundamental and its harmonics (2×, 3×, 4× …). A line at 50 or 60 Hz and its multiples is mains hum.
Vertical lines are short broadband sounds: clicks, claps, consonants like "t" and "k", and the attack of drums.
Diagonal or curved lines are changing pitch: sirens, birdsong, a voice going up at the end of a question, or a sweep.
Fuzzy regions are noise: wind, breath, hiss, cymbals and the "s" sound.
A sharp flat ceiling at 16 kHz or 19–20 kHz on the linear scale is the typical fingerprint of MP3 or AAC compression.
Frequently asked questions
What is a spectrogram?
A spectrogram is a picture of sound over time. The horizontal axis is time, the vertical axis is frequency (pitch) and the brightness or color of each point shows how much energy the sound has at that frequency at that moment. Speech, birdsong, instruments and noises each leave recognisable patterns.
What FFT size should I use?
It is a trade-off. A large FFT (8192 or 16384) separates close frequencies, good for musical notes and hum, but blurs fast events. A small FFT (256 or 512) shows drum hits and clicks sharply but smears frequencies. 2048 at 44.1 kHz (46 ms, 21.5 Hz per bin) is a good default for music and speech.
How can I tell if a FLAC or WAV is really lossless?
Look at the top of the spectrogram with the linear scale and the maximum frequency set to Nyquist. A real CD-quality file usually has content up to about 20–22 kHz. A file converted from a low-bitrate MP3 shows a sharp horizontal cutoff, typically at 16 kHz for 128 kbps or about 19–20 kHz for 192–320 kbps.
Which frequency scale is best?
The logarithmic scale gives every octave the same height, the way we hear pitch, so it suits music and speech. The linear scale gives every hertz the same height, which is useful for high-frequency details and codec cutoffs. Mel is a perceptual scale used in speech recognition and machine learning.
What do the dB range and gain controls do?
Levels are measured in decibels relative to a full-scale sine wave. Gain moves the brightest color down (with gain 20, everything at -20 dB or louder is shown at full brightness) and range sets how many decibels below that are still visible before the color reaches the background. Raise the range to see quiet noise, lower it for a cleaner image.
Is my file uploaded?
No. The audio is decoded by your browser and the spectrogram is calculated with a fast Fourier transform written in JavaScript on your own device.
Why do I see a mirror image or strange lines above a certain frequency?
Nothing above half the sample rate (the Nyquist frequency) can exist in a digital file, so the image always stops there. Thin horizontal lines are usually hum or electronic interference, and vertical lines are clicks or the start of drum hits.
Are all the tools on FreeToolCabin tested for quality and accuracy?
Yes! Every tool on our site undergoes automated Q/A testing in real browser environments to ensure high precision, correct output, and zero errors. If you happen to spot a bug or have a suggestion, please contact us at [email protected] and our team will review it right away.