---
title: "Audio Spectrogram Online: Free Spectrogram Viewer"
description: "Free online audio spectrogram: drop an MP3, FLAC, WAV, M4A, OGG or DSD file and see its frequencies over time. Zoom, read levels, save a PNG. No upload."
url: "https://theaudiostuff.com/tools/audio-spectrogram/"
type: "website"
author: "Jakub Charkiewicz"
---

> Markdown rendering of https://theaudiostuff.com/tools/audio-spectrogram/
> Canonical URL to cite: https://theaudiostuff.com/tools/audio-spectrogram/
> Generated from the published page. Text and links only; see the HTML for layout.

Breadcrumb: [Home](https://theaudiostuff.com/) > [Tools](https://theaudiostuff.com/tools/) > Audio Spectrogram

# Audio Spectrogram Online

See the spectrogram of any audio file: drop an MP3, FLAC, WAV, AAC, M4A, OGG, AIFF or DSD file and this spectrogram viewer draws its frequencies over time, with time left to right, frequency bottom to top and the level of every moment as color. Zoom into any second, hover for the exact frequency and level, play it back under a moving playhead and save the picture as a PNG. It works as an audio spectrum analyzer for a whole song at once, and the file is read in your browser and never uploaded.

**Before you start:** the page opens on a demo made in your browser, a sweep, a chord, four clicks and a mains hum, so you can see what each one looks like. Drop your own file on the picture to replace it.

## Spectrogram {#asg-tool-h}

Spectrogram

Point at or tap the picture for the time, frequency and level there.

Read in your browser. The file never leaves your device. Turn your volume down before you press Play.

## How to read a spectrogram {#asg-read-h}

### The three axes

Time runs left to right and frequency bottom to top, and the color of each point is how loud that frequency is at that moment: the bottom of the color key is the quietest level drawn, and the top is 0 dBFS, the loudest a digital file can hold. A full-scale sine reads 0 dB, and anything quieter than the level range you picked is drawn as the bottom color.

A steady tone draws a horizontal line. A sine is one line; a sung or played note is a stack of lines at whole-number multiples of its pitch, its harmonics. Mains hum is a line at 50 or 60 Hz with its harmonics above it.

A click, a drum hit or a hard consonant draws a vertical line, because a short sound spreads its energy over many frequencies at once. A sweep draws a curve, and on the logarithmic scale an exponential sweep is a straight diagonal. For live sound from a microphone, the [spectrum analyzer](https://theaudiostuff.com/tools/spectrum-analyzer/) draws a scrolling spectrogram as it listens.

### What a file's ceiling tells you

A flat ceiling that runs through the whole file is a band limit. It can be the format's own: nothing can sit above half the sample rate, which is 22.05 kHz for a 44.1 kHz file. Or it can be the low-pass filter a lossy encoder applies before it codes: an MP3 often stops somewhere between 16 and 19 kHz, and a 256 kbps AAC file near 19 to 20 kHz.

In a 96 or 192 kHz file, a hard wall near 22 or 24 kHz with nothing above it is the mark of a source at 44.1 or 48 kHz that was converted up. The [FLAC and hi-res audio checker](https://theaudiostuff.com/tools/hires-audio-checker/) reads that for you, with the cutoff's frequency and shape.

Noise shows as haze. A faint band that rises toward the top of a 16-bit master is often noise-shaped dither, and a DSD file shows its own noise climbing above the audio band.

## Window size: time against frequency {#ref-asg-title}

Every column of the picture comes from frames of the window size you pick. A longer window separates frequencies that sit close together into fine lines but spreads a quick sound across its own length; a shorter one pins down when a click happened and blurs pitches into wider bands. A bin is one step on the frequency axis, the sample rate divided by the window size.

| Window | Bin at 44.1 kHz | Bin at 48 kHz | Frame at 44.1 kHz | Frame at 48 kHz |
| --- | --- | --- | --- | --- |
| 1,024 points | 43.07 Hz | 46.88 Hz | 23.2 ms | 21.3 ms |
| 2,048 points | 21.53 Hz | 23.44 Hz | 46.4 ms | 42.7 ms |
| 4,096 points | 10.77 Hz | 11.72 Hz | 92.9 ms | 85.3 ms |
| 8,192 points | 5.38 Hz | 5.86 Hz | 185.8 ms | 170.7 ms |
| 16,384 points | 2.69 Hz | 2.93 Hz | 371.5 ms | 341.3 ms |

## What a spectrogram measures {#tprimer-title}

Any sound can be described as a set of frequencies, each with its own level, and a Fourier transform measures that set from a stretch of samples. Measure the whole file at once and you get one spectrum: which frequencies the recording holds, with no idea of when. A spectrogram measures short frames one after another instead and stands their spectra side by side, so the picture shows what happened when.

Each column here is made from Hann-windowed frames taken from inside that slice of time, two per column, with their power averaged and converted to decibels below full scale. A sine at full scale centered on a frequency step reads 0 dB, the same scale the FLAC checker and the site's other analyzers use, so a level read off one means the same on the others.

The frame length decides what the picture can resolve. A frame of 4,096 samples at 44.1 kHz lasts 93 ms and splits the spectrum into steps of 10.8 Hz: shorten it and quick sounds sharpen while pitches blur, lengthen it and the reverse happens. No setting gets both at once, which is why the page lets you choose.

### The ideas behind the controls {#tprimer-ideas}

- **Frame**: The short stretch of samples one spectrum is measured from. Its length is the window size, counted in samples (points).
- **Window**: The fade applied to each frame's edges before it is measured. Without it the cut edges would spray false energy across every frequency; this page uses the Hann window.
- **Bin**: One step on the frequency axis: the sample rate divided by the window size. At 48 kHz and 4,096 points a bin is 11.7 Hz wide.
- **dBFS**: Decibels relative to full scale, the loudest level a digital file can hold. Every level in the picture is 0 or below.
- **Nyquist frequency**: Half the sample rate, the highest frequency a file can hold: 22.05 kHz for 44.1 kHz audio, 48 kHz for 96 kHz audio. The picture's top edge is drawn there.

### Common mistakes {#tprimer-mistakes}

- Reading color as loudness you would hear. The picture shows level per frequency, and hearing is far less sensitive at the bottom and the top of the range, so a bright patch at 30 Hz or 18 kHz can be faint to the ear.
- Judging a file's top end on the logarithmic scale. It squeezes everything above 10 kHz into the top slice of the picture, where a cutoff is easy to miss. Switch to linear to inspect the treble.
- Taking one loud moment for the whole file. A cymbal crash can reach higher than the rest of the song for a second, so look for a ceiling that holds across the file.
- Setting the level range too narrow. At 80 dB a quiet hiss, dither or a faint hum falls below the darkest color and vanishes, so widen the range to see the noise floor.
- Expecting a spectrogram to say how a file was made. A hard cutoff can come from an encoder, a converter or a mastering filter, and the picture alone cannot tell them apart.

### What this tool cannot tell you {#tprimer-limits}

- It reads what your browser can decode. Current browsers decode MP3, FLAC, WAV, AAC, M4A, ALAC, OGG and AIFF, though not every browser takes every format, and DRM-protected files cannot be read at all.
- A file is decoded at its own sample rate where the browser allows it. If the browser resamples on the way in, frequencies above the new rate's half are lost before the picture is drawn, and the file line shows the rate that was read.
- DSD files are converted to PCM first, at 88.2 or 96 kHz and flat to 30 kHz, so the picture above 30 kHz shows the converter's filter as well as the file. Past about eight and a half minutes of stereo only the start of a DSD file is read.
- Very long files at high sample rates take a lot of memory once decoded, and a phone browser can refuse them. A shorter file, or a laptop, avoids it.

### Where the math comes from {#tprimer-sources}

- [Stanford CCRMA: The short-time Fourier transform](https://ccrma.stanford.edu/~jos/sasp/Short_Time_Fourier_Transform.html)
  Reference Stanford University
  The short-time Fourier transform: windowed frames, each measured with an FFT, which is how every column of the picture is made.
- [Stanford CCRMA: Classic spectrograms](https://ccrma.stanford.edu/~jos/sasp/Classic_Spectrograms.html)
  Reference Stanford University
  The classic spectrogram display: time across, frequency up and the level of each frame and frequency as brightness or color.
- [Stanford CCRMA: Sampling theorem](https://ccrma.stanford.edu/~jos/mdft/Sampling_Theorem.html)
  Reference Stanford University
  Why a sampled file holds nothing above half its sample rate, the top edge of the picture.

## Spectrogram FAQ {#asg-faq-title}

1. ### What is a spectrogram? {#asg-faq-what-is-a-spectrogram}
   A spectrogram is a picture of sound with time across, frequency up and level as color. It is made by cutting the audio into short overlapping frames, measuring how much energy each frame holds at every frequency with a Fourier transform, and setting the results side by side. A spectrum shows the frequencies of one moment or of a whole file at once; a spectrogram shows how they change, so a melody, a drum hit, a hum and the top edge of an MP3 encode can all be told apart at a glance.
2. ### How do I see the spectrogram of an MP3, FLAC or WAV file? {#asg-faq-how-do-i-see-the-spectrogram-of-an}
   Drop the file on the picture at the top of this page, or press Choose an audio file and pick it. The page decodes it in your browser and draws the whole file in a second or two. MP3, FLAC, WAV, AAC, M4A, ALAC, OGG and AIFF work in current browsers, and DSD files (DSF and DFF) are converted to PCM first. Nothing is uploaded.
3. ### What do the colors on a spectrogram mean? {#asg-faq-what-do-the-colors-on-a-spectrogram-mean}
   Each color stands for a level, from the bottom of the key under the picture (the quietest level drawn) to the top (0 dBFS, the loudest a digital file can hold). The Level range setting decides where the bottom sits: at 120 dB, anything more than 120 dB under full scale is drawn as the darkest color. Point at the picture and the line under it gives the exact time, frequency and level there.
4. ### Can a spectrogram show whether a FLAC file is fake? {#asg-faq-can-a-spectrogram-show-whether-a-flac-file}
   It shows the evidence. A FLAC or WAV made from an MP3 keeps the lossy encoder's ceiling, often a flat cutoff somewhere between 16 and 19 kHz through the whole song, and a 96 kHz file converted up from 44.1 kHz shows a hard wall near 22 kHz with nothing above it. A spectrogram cannot prove how a file was made, because mastering can leave the same marks. The FLAC and hi-res audio checker on this site reads the cutoff for you and names what it found.
5. ### Should I use a linear or a logarithmic frequency scale? {#asg-faq-should-i-use-a-linear-or-a-logarithmic}
   Use linear to look at the top of a file: it gives the treble most of the height, so an encoder's cutoff or a 22 kHz wall is easy to see. Use logarithmic to look at music: it gives every octave the same height, the way hearing spaces pitch, so bass notes, voices and harmonics spread out where you can read them.
6. ### Which window size should I pick? {#asg-faq-which-window-size-should-i-pick}
   Start at 4,096 points. A longer window, 8,192 or 16,384, separates notes and hum lines that sit close together but smears short sounds across its length. A shorter one, 1,024 or 2,048, shows exactly when a click or a drum hit happens but blurs pitches. The window table on this page gives the frequency step and the frame length of each size at 44.1 and 48 kHz.
7. ### Why does my file stop at 16 kHz? {#asg-faq-why-does-my-file-stop-at-16-khz}
   Usually because it went through a lossy encoder: MP3 and AAC encoders cut the top of the spectrum to spend their bits lower down, and the lower the bitrate, the lower the cut. A file at a low sample rate stops early too, because nothing can sit above half its rate: a 32 kHz file stops at 16 kHz. If a file sold as lossless stops there, it was probably made from a lossy copy.
8. ### Does it work like Spek? {#asg-faq-does-it-work-like-spek}
   It draws the same kind of picture as Spek, the free desktop spectrum analyzer people use to check downloads, in a browser tab with nothing to install. It adds zoom, a level readout under the pointer, playback with a playhead and a choice of scale, window and colors, and it reads DSD files.
9. ### Is my audio file uploaded? {#asg-faq-is-my-audio-file-uploaded}
   No. The file is decoded and analyzed by your own browser, and the spectrogram is drawn on your device. Nothing about the file is sent anywhere or stored, so closing the tab clears it.
10. ### Does it work on a phone? {#asg-faq-does-it-work-on-a-phone}
    Yes. Press Choose an audio file and pick a song from your Files app or downloads. Phones draw the picture a little more slowly than a laptop, and a very long hi-res file can run out of the memory a phone browser allows, in which case try a shorter file or a laptop.

## You might also use these tools {#rt-title}

- Generator **Which test tone do you need?** [Online Tone Generator](https://theaudiostuff.com/tools/signal-generator/) Sine, square, triangle and sawtooth tones at any frequency or musical note, white, pink, brown, blue and violet noise, frequency sweeps, a channel test and a polarity check. Runs entirely in your browser.
- Test **Are my speakers or headphones wired right?** [Speaker & Headphone Test](https://theaudiostuff.com/tools/speaker-test/) Check that left and right come from the correct side, that a pair of speakers is in phase, how low the bass goes and how high the treble reaches, then sweep 20 Hz to 20 kHz for rattles.
- Test **How low do my speakers or subwoofer really go?** [Bass & Subwoofer Test](https://theaudiostuff.com/tools/bass-test/) Step a tone down from 200 Hz to 16 Hz, find the note where your bass fades out, set a subwoofer's phase by ear and sweep the bass for rattles and booms.
