Free · no login · nothing uploaded

Spectrogram analyzer.

See what is actually in the file.

Frequency against time, drawn from your own audio in your own browser. The encoder cliff that exposes an upscaled MP3, marked and named. A bar grid over the top so the picture reads in phrases rather than in seconds. And the moment the low end drops out, which is the breakdown, and the moment it comes back, which is the drop.

Drop a track and see what is actually in it

WAV, AIFF, FLAC, MP3 or M4A. Drop several and they queue. Nothing is uploaded — this page makes no network request at all.

The three questions

A picture is not an answer.

Nobody opens a spectrogram to admire it. Every one of them was opened with a specific question, and a heat map on its own answers none of them — which is why almost every spectrogram tool gets used once.

The horizontal line that should not be there

A lossless file carries energy all the way to the top of the picture. A lossy one stops dead at a height set by its bitrate, because every encoder low-passes the signal before it throws anything away — roughly 16 kHz at 128 kbps, 19 at 256, 20 and up at 320. That corner is permanent. Convert a 128 kbps MP3 to 24-bit FLAC and you get a huge file with a hard edge two thirds of the way up, because no encoder can put back what the first one deleted. On a spectrogram it is not a subtle statistical finding, it is a straight black line across the whole track, and once you have seen one you will never mistake it again.

A grid, so the picture is in bars rather than in seconds

Time on its own is not a unit a DJ works in. Knowing the breakdown starts at 3:12 is far less useful than knowing it starts at bar 97 and runs for 32, because the second one tells you what to do with it. So the tempo is read off the same transform that draws the picture — no extra download, no second pass over the file — and the bar lines are drawn over the top with every sixteenth one brighter, which is the phrase boundary a track is actually built on. If the downbeat lands in the wrong place you can nudge it a beat at a time, the same way you would fix a grid in Rekordbox.

Where the low end leaves, and where it comes back

A club track is defined by whether the kick is playing. That makes structure detection a much simpler problem than it looks: track the energy below 150 Hz, find the stretches where it drops under half its usual level, and you have the breakdown; the moment it returns is the drop. No musical model and nothing trained on anything — just the sub-band envelope, thresholded against the track's own median so a quiet track and a hot master read alike, then snapped to the nearest bar because a breakdown that measures 31.6 bars is a measurement error and every DJ knows it is 32.

The grid, and how far to trust it

The bar lines come out of the same work that draws the picture, which is what makes them free. It is not the detector behind our key and BPM finder — that one is heavier, more accurate, and has to download a couple of megabytes before it reads a note. Here is how this one does against 300 tracks whose tempo was already set by the people who released them.

84.3%

Within ±2 BPM

88.7%

Within ±2, either octave

98%

Confident enough to draw

10.2%

Of drawn grids, wrong

The octave column is not a hedge. A lot of drum and bass ships tagged at half the tempo it is played at — a track you mix at 174 sold to you as 87 — so the detector and the tag can disagree by exactly a factor of two with neither of them wrong. That is why the tool puts the other octave next to its answer instead of picking for you.

Reading the picture

What you are looking at

Seven things worth recognising, and what each of them is.

Common spectrogram features and what they mean
What you seeWhat it is
A hard horizontal edge with black above itA lossy encoder's low-pass. Read its height against the bitrate table — 16 kHz is 128 kbps, 19 to 20 is 256, above 20 is 320 or lossless.
Colour running to the very top of the frameGenuinely full-band audio. Only a lossless file or a very high-bitrate encode looks like this.
Vertical stripes evenly spaced across the widthThe beat. Each stripe is a transient — a kick spans the bottom, a snare or clap reaches the middle, a hi-hat is a short mark near the top.
The bottom band emptying out for a stretchThe breakdown. The kick and sub have stopped and everything left is mids and top, which is exactly what a breakdown is.
A bright diagonal climbing towards a gapA riser into a cut. The diagonal is a sweep, the gap is the bar of silence before the drop lands.
A solid horizontal line low down, unchangingMains hum, at 50 or 60 Hz depending on where it was recorded. Common on anything captured off a turntable or a mixer with a ground loop.
Faint repeated copies of the top band above the cliffSpectral band replication — some AAC and MP3 encoders synthesise the top octave rather than storing it. It looks like a smeared echo of the band below and it is not real detail.

The one that trips people up is the last: an encoder that synthesises its top octave leaves a faint band above what looks like the cutoff, which reads as “there is still audio up there” when there is not. The detector ignores it, because the threshold is set relative to the track’s own mid-band level rather than to an absolute floor.

Frequently asked

Common questions

Does my file get uploaded?+

No, and it is easy to verify: open the network panel before you drop a file and watch it stay empty. This page makes no request of any kind once it has loaded. The file is decoded by the browser's own audio decoder, transformed by JavaScript already in the page, and drawn onto a canvas — all inside your tab. There is no upload endpoint behind it, so there is nothing to trust.

What is a spectrogram actually showing me?+

Time runs left to right and frequency runs bottom to top, so every vertical slice of the picture is the frequency content of one instant. Brightness is level. A kick drum is a bright blob at the bottom, a hi-hat is a thin mark near the top, a sustained pad is a horizontal band that lasts. Where a waveform tells you how loud a track is over time — which on a modern master is "loud, throughout" — a spectrogram tells you what it is made of, which is far more information.

Why can I see a line across the top of my MP3?+

Because that is where the encoder stopped. Lossy compression works by discarding what the ear notices least, and the top of the spectrum is both the least noticeable and the most expensive to store, so every encoder low-passes before it does anything else. The frequency it picks is a function of the bitrate. That is why the line is at a different height on a 128 kbps file and a 320 one, and why the height is a reliable fingerprint of what the audio was last encoded at.

Can this tell me a FLAC was made from an MP3?+

Yes, and it is the single most useful thing it does. Converting a lossy file to a lossless format stores the band-limited audio perfectly — including the cliff. So a file whose container claims 24-bit and whose picture goes black at 16 kHz was an MP3 an hour ago, and the container cannot change that. The tool states the cutoff frequency in words above the picture and draws a dashed line at it, so you get the answer whether or not you can read a spectrogram.

Should I use the linear or the log frequency axis?+

Linear for checking a file, log for reading the music. On a linear axis every kilohertz is the same height, which puts the encoder cliff at a consistent place and makes it obvious — it is what Spek and the other forensic tools use, and it is the default here. A log axis gives the bass and low mids the space they occupy musically, which is where a kick, a bassline and the body of everything actually live, and it is the better view for looking at arrangement rather than at quality.

How accurate is the tempo the bar lines come from?+

Measured, on 300 tracks whose tempo was already set by the people who released them: 84.3% within ±2 BPM, 88.7% once a half or double-time reading is allowed. It is deliberately not the detector behind the key and BPM finder — that one is heavier and more accurate, and it has to download a couple of megabytes before it can read anything, which is too much to ask of a page that draws a picture. This one comes free with the picture itself. Where it is unsure it says so and draws nothing, and where it is confidently wrong you can nudge it.

Why does the grid start in the wrong place on my track?+

Because finding which beat of the bar is beat one is a genuinely hard problem and the tool uses a heuristic: whichever of the four beat positions the kick band is loudest on. That is right by construction for house and techno and a coin toss for anything with a broken kick pattern — drum and bass, breaks, most hip-hop. The nudge buttons move the whole grid a beat at a time, which is the same fix you would apply in Rekordbox.

How long a file can I drop on it?+

Up to 800 MB, which is about 75 minutes of 24-bit stereo WAV, so a whole recorded set is fine. Past about nine minutes the transform gets a coarser time step to keep the analysis to a few seconds rather than a few minutes — the picture is a summary at that length whatever it does, since 1,600 drawing columns across an hour is a column every two seconds.

Can I download the spectrogram as an image?+

Yes, at 2400 × 900, and it is a real render at that size rather than a screenshot of what is on your screen. The palette, the axis and the contrast setting are all applied, and the frequency labels and grid stay out of the file so you get a clean image to put in a post or an email.

Which browsers does it work in?+

Chrome and Edge read every format a DJ owns. Safari and Firefox will refuse some AIFF and FLAC variants, because the decode is done by the browser rather than by us and their built-in decoders are narrower — if a file is rejected, that is what happened, and converting it to WAV will fix it.

Build a set from tracks that fit

DJ terms on this page: Waveform · Bit rate · Lossless · Lossy compression · Phrase · Breakdown · Drop · Beatgrid · Sub-bass · Sample rate · Full glossary