A larger FFT gives narrower frequency bins, but on a changing sound it also covers more time—so the strongest bin can move instead of simply converging on one perfect frequency.
The question behind the test
FFT-size explanations often use a stationary sine wave. That is useful for teaching the formula, but it hides the trade-off you meet in real recordings: the sound may change during the analysis window. I used the same whistle field recording from the clipping experiment and inspected a moment centred at 5.55 seconds.
The file is mono AAC/M4A at 44.1 kHz, decoded once to PCM without gain, denoising, normalization, or filtering. The whistle audibly changes pitch, so this test is about measurement behaviour on real material—not about declaring one bin to be the performer's exact pitch.
Four FFT sizes at the same timestamp
At 44.1 kHz, the nominal bin spacing narrows from 43.07 Hz with a 1024-point FFT to 5.38 Hz with 8192 points. The peak also moves from 1421.19 Hz to 1464.26 Hz. That movement is not a software contradiction: each larger FFT includes a longer slice of a whistle whose frequency is changing through time.
The 4096-point view is a useful working compromise here. Its 10.77 Hz bins separate the peak well without stretching the time window as far as the 8192-point view. For a steadier low-frequency hum, the balance might be different.

| FFT size | Bin spacing | Strongest bin | Bin level |
|---|---|---|---|
| 1024 | 43.0664 Hz | 1421.19 Hz | −30.83 dBFS |
| 2048 | 21.5332 Hz | 1442.72 Hz | −28.09 dBFS |
| 4096 | 10.7666 Hz | 1453.49 Hz | −25.16 dBFS |
| 8192 | 5.3833 Hz | 1464.26 Hz | −25.75 dBFS |
Why frequency resolution is not the whole story
The formula sample rate divided by FFT size describes bin spacing. It does not promise that the strongest bin is the one true frequency of a non-stationary source. Window shape, spectral leakage, interpolation, background noise, and pitch movement all influence what appears on screen.
A larger FFT is excellent when you need to separate nearby stable tones or inspect low-frequency detail. A smaller FFT responds faster to changes. On speech, musical attacks, bird calls, whistles, and machine run-up sounds, time localisation can matter as much as narrow bins.
How to reproduce it
Use the decoded WAV for the closest numerical match. Keep the channel, window, timestamp, and frequency scale unchanged while changing only FFT size.
- 01
Load the decoded whistle WAV
Use the decoded PCM file for the closest numerical match and wait until it is ready to play.

- 02
Seek to the same moment
Move playback to 5.55 seconds and keep that timestamp unchanged for every transform size.

- 03
Change only FFT size
Keep the mono channel, scale, and frequency range fixed while testing 1024, 2048, 4096, and 8192 points.

- 04
Record the strongest bin
For each FFT size, write down the Peak frequency value before moving to the next setting.

- 05
Compare the surrounding shape
Inspect the width of the main peak and nearby energy, not only the single strongest-bin number.

Limits and practical choice
This is a single phone recording and a single timestamp, not a benchmark of every FFT implementation. The original AAC encode and the analysis window affect the displayed spectrum, and a strongest-bin reading is not the same as a pitch-tracking estimate.
Choose FFT size for the question. Start with 2048 or 4096 for general inspection, reduce it when rapid timing matters, and increase it when closely spaced stable frequencies or low-frequency structure require narrower bins. Then confirm the result in the spectrogram instead of trusting one number alone.
Common questions
Does a larger FFT always give a more accurate frequency?
No. It narrows nominal bin spacing but analyzes a longer time window. On a changing signal, that longer window can blend different instantaneous frequencies.
Why did the strongest frequency move in this test?
The whistle pitch changes around 5.55 seconds. Each FFT size covers a different duration, so the weighted energy inside each window is different.
Which FFT size should I use first?
For general audio inspection, 2048 or 4096 is a practical start. Change it according to whether you need faster time response or narrower frequency bins.
See the frequencies for yourself.
Upload a file, use the microphone, freeze any moment, and export the result.
Analyze audio

