Back to Audio
Audio pitch shift — change key in semitones while keeping tempo

Audio pitch shift — change key in semitones while keeping tempo

Pitch-shift audio files (MP3 / WAV / M4A / AAC / FLAC / OGG / Opus) by semitones (±12 = one octave) without changing playback speed. Powered by soundtouchjs (SoundTouch library) running on Web Audio API samples. Great for karaoke key changes, matching keys across language-learning clips, tweaking narration tone for videos, or stylized voice effects. Export to WAV or MP3 with batch support. Your audio stays inside your browser — nothing is uploaded.

audio

How to use

Drop or pick one or more audio files (MP3 / WAV / M4A / AAC / FLAC / OGG / Opus). Set the pitch in semitones (-12 to +12). +1 = a semitone up, +12 = one octave up. Pick the output format (WAV or MP3). For MP3, choose a bitrate. Click Shift pitch. soundtouchjs processes everything in the browser. Long clips take proportionally longer. Save files individually or grab the whole batch as a ZIP.

FAQ

Does tempo stay the same?
Yes. soundtouchjs (the SoundTouch library) decouples pitch and tempo, so duration is unchanged while only the pitch moves.
What if I crank the slider all the way?
We cap the range at ±12 semitones (one octave). Even at the cap the artifacts (harmonic distortion, smearing) can be obvious. For natural results, keep within ±3 semitones.
WAV vs MP3?
Pick WAV for DAW work or lossless preservation. Pick MP3 for sharing. MP3 is lossy; repeated re-encodes will progressively degrade quality.
I want to change tempo too (time-stretching).
This tool is pitch-only. Tempo-only changes are planned for a separate tool. You can change tempo via Web Audio playbackRate, but that shifts pitch too.
Is anything uploaded?
No. soundtouchjs and the Web Audio API run entirely inside your browser.

Related tools