SEE HOW SOUND CHANGES OVER TIME

Audio Spectrogram Maker

Explore speech, music or sound effects as a frequency-over-time image. Choose a time range, channel and display scale, then export a labeled PNG without playing your audio.

Local audio decodingLinear / logarithmic frequencyPNG with axes + JSON report

1. Audio & analysis

No audio loaded. Browser codec support varies by format.

Choose audio or try the tones.

Larger FFT windows separate closer frequencies, but blur short events in time. Changing plot width adds display columns; it does not improve FFT frequency resolution.

2. Frequency-over-time plot

Move over the finished plot to read time and frequency coordinates.

No current spectrogram.

Dark colors are at or below the display floor; the brightest color is at or above the ceiling. Each displayed frequency row uses the strongest included FFT bin. On small screens, scroll the plot horizontally to keep its labels readable.

Levels are Hann-window amplitude estimates in dBFS, referenced to a full-scale sinusoid at an FFT-bin frequency. They are not calibrated loudness or acoustic sound-pressure measurements. Low-frequency rows may repeat the same FFT bin.

Up to 120 seconds and 8 decoded channels; analyze a 0.05–60 second range. Audio is decoded/resampled to 44,100 Hz; frequencies above 22,050 Hz are unavailable. Averaging channels can cancel opposite-phase signals; choose an individual channel when needed. PNG captures the selected view; JSON records settings rather than audio or raw spectra. No microphone access, playback, processing upload or saved audio history. Website ads and analytics follow the privacy information.

Using Audio Spectrogram Maker

Explore sound as a local frequency-over-time image with adjustable display settings and a labeled PNG export.

  1. Open a browser-supported audio file or try the built-in known tones.
  2. Choose a time range up to 60 seconds, channel, FFT window, frequency bounds and display level range.
  3. Generate the plot. Move over it for time/frequency coordinates, then download the labeled PNG or analysis settings JSON.

Example

The example changes from 440 to 880 Hz at 2 seconds with an additional1760 Hz tone.
Use a larger FFT to separate closer frequencies, or a smaller FFT to see brief events more clearly.

Questions & answers

What does a spectrogram show?

Time runs horizontally, frequency vertically and color represents a windowed amplitude estimate. Horizontal bands may represent sustained tones; short broadband events can appear as vertical regions. It is an exploratory view, not automatic speech or sound identification.

How do FFT size and plot width differ?

Frequency bin spacing equals decoded sample rate divided by FFT size. Larger FFT windows resolve closer frequencies while averaging over more time. More image columns sample more time positions; they do not add frequency resolution.

Does this play or record audio?

No. An OfflineAudioContext decodes your local file without audio playback or microphone access. The built-in example is a numeric tone signal and is not played.

What do the dBFS levels mean?

The tool uses Hann-window amplitude spectra corrected for coherent gain, with positive non-DC/non-Nyquist bins doubled. A full-scale sinusoid at an FFT-bin frequency is approximately0 dBFS. Off-bin tones, short events and row aggregation affect estimates. This is not calibrated loudness or acoustic SPL.

Why can a frequency row contain more than one bin?

A display pixel row covers a frequency interval. The strongest included FFT bin supplies its color. Low-frequency rows may repeat a single bin, especially on a logarithmic scale; image pixels do not provide extra frequency detail.

Why might the average channel look quieter?

Averaging can cancel signals with opposite phase. Choose an individual decoded channel to inspect it directly.

Which files and limits are supported?

Browser codec support varies. Try WAV, MP3 or another format your browser can decode. Files are up to 10 MiB, decoded audio up to 120 seconds and 8 channels, and a selected range is 0.05–60 seconds. Decoding resamples to 44,100 Hz, limiting displayed frequencies to 22,050 Hz.

What do exports contain?

PNG includes the selected plot, time/frequency axes and a display-level color scale. JSON records source filename, decoded dimensions and analysis choices/summary. It contains neither audio nor raw spectra.

Is audio sent to a server?

No processing upload or saved audio history is needed. Decoding and analysis run in the browser. Website ads and analytics follow the privacy information.

Help improve this tool

Report a problem or suggest an improvement

Describe the issue without pasting private tool input. Feedback goes to our admin inbox.

Find another tool · Read practical guides