/ Free online tool — Time stretcher & BPM changer

Drop a file.
Match the BPM.

Source BPM read from the filename or worked out from the audio. Set the target BPM, hear the result, download the WAV. Pitch unchanged. No upload. No sign-up.

Click or drop audio.

WAV, MP3, FLAC, OGG, M4A, or AAC.

/ Method

How the BPM matcher
works.

Method: filename parsing + onset/autocorrelation BPM detection + STFT phase-vocoder · Built by Sample Vault · v1

The same BPM detection and time-stretching the desktop app runs across your library, in your browser.

/ 01Filename parsing

Sample-pack filenames usually carry the BPM (kick_loop_140bpm.wav). We pull it out the moment you drop the file, before the audio's even finished decoding.

/ 02Audio BPM detection

While that's happening, a second detector listens for onsets in the audio itself and works out the most likely tempo from how regularly they repeat. If the filename had nothing to say, the detected value goes in the source field. If both turn up, you pick whichever you trust.

/ 03Phase-vocoded stretch

Set source and target BPM. The rate is just target / source. We slice your audio into overlapping short windows and lay them back down at a different spacing — closer together to speed it up, further apart to slow it down. The frequency content of each window stays untouched, so the pitch doesn't shift.

/ 04Honest failure modes

Modest stretches (0.5×–2×) sound clean on most material. Extreme ratios (sub-0.4× or above 3×) get metallic on anything with sharp attacks. The detector also reports half / double alternatives — if the source feels off by an octave, halve or double it before matching.

/ Across your library

From one loop
to fifty thousand.

Matching one loop to your project tempo is easy. Doing it for thirty thousand of them, on playback, without re-bouncing or trusting filenames — that's the desktop app. Same engine, working across every folder you point it at.