How AI music detection works
Detection is measurement, not recognition. This page describes exactly what happens between choosing a file and reading a result — including the parts that are weak.
Last updated August 2026
AI Music Detector evaluates multiple acoustic characteristics — including spectral, dynamic, timbral, stereo, and temporal features — to estimate the likelihood that a recording was AI-generated. Results are probabilistic and should not be interpreted as definitive proof.
The pipeline, step by step
- You choose a file. The browser checks the extension, declared type and size before anything else happens. Files over 25 MB or with no audio content are rejected immediately.
- Your browser decodes the audio. The Web Audio API turns the compressed file into raw PCM samples. If decoding fails, the file is unreadable by this browser and you are told so plainly. No bytes are transmitted to a server at any point.
- Channels are summed to mono for spectral work, while the original stereo channels are kept for a correlation measurement.
- Representative segments are selected. Up to five windows of four to eight seconds are taken from across the track, not just the intro. Near-silent windows are discarded so that a fade-in cannot dominate the result.
- Each segment is transformed. A 4096-point Hann-windowed FFT with 50% overlap produces an average magnitude spectrum for the segment.
- Features are extracted: spectral ceiling, spectral flatness, spectral centroid variability, crest factor, high-band energy ratio and the averaged log spectrum.
- Segments are compared. The mean pairwise distance between segment spectra measures whether the track keeps an unusually uniform tonal balance from section to section.
- Signals are weighted and shrunk. Each measurement contributes a weighted sub-score. The combined score is deliberately pulled toward 50% and clamped to 15–85%, because an uncalibrated estimate has no business claiming 3% or 99%.
- Confidence is assigned. Poor audio quality, short analysed duration or disagreement between segments forces the confidence down and the classification to Inconclusive.
- The result is rendered with every contributing measurement visible, so you can judge the reasoning rather than trust a number.
Why the analysis runs in your browser
Server-side inference would let us run a larger model, but it would also mean receiving and temporarily storing your audio. For the current engine there is no accuracy benefit that would justify that trade, so everything runs locally. The practical consequences are worth knowing: analysis speed depends on your device, and very large files take longer because your CPU is doing the FFT work.
What each measurement actually tells you
Spectral ceiling
Most lossy encoders and many generators produce a hard frequency ceiling — energy simply stops above a certain point. A 15 kHz ceiling is suspicious in a supposedly lossless master but completely normal in a 128 kbps MP3. The measurement is real; the interpretation is ambiguous, and the tool says so.
Segment agreement
Human arrangements move: a verse and a chorus rarely share an identical tonal balance. Generated tracks and template-driven productions often do. This is currently the strongest signal the engine measures, and also the easiest to defeat by editing.
Dynamic range and timbral movement
Crest factor and spectral-centroid variability describe how much a recording breathes. Loudness-maximised human masters score similarly to generated audio here, so both carry a low weight.
What happens next
The interface is built against a stable result contract, so a future trained model can improve the engine without changing anything you see. Planned additions are listed on the methodology page, and the honest current limits are set out on the accuracy page.
Ready to try it? Run a track through the free AI music detector.