How to split an audio file
- Drop an MP3, M4A, WAV, FLAC or Opus file on the box above.
- Choose how to split it. At silences finds the pauses for you; Into equal parts and Every… cut by time. The cuts appear on the waveform and in the list of parts. Click the waveform to add a cut, or click a cut to remove it.
- Press Split, then download the parts one by one or all together as a ZIP.
Splitting at the silences
The page measures the loudness of the whole file in 20-millisecond steps. It sets the threshold 30% of the way from the quiet background up to the loud parts, and cuts in the middle of every pause that stays below it for longer than the shortest silence you allow. Cutting in the middle leaves a little quiet at the end of one part and the start of the next, so no word is clipped.
We tested it on a 24-second spoken recording with eight pauses of 1.2 to 2 seconds and faint background hiss. With the default settings it found all eight pauses, and every cut landed in the exact middle of its pause in the WAV, MP3, M4A and FLAC copies of the file (within 67 ms in the Opus copy). Recordings differ, so check the list of parts: if a pause between two sentences is missed, raise the dB number a little; if a song or a sentence is split in two, make the shortest silence longer.
Why the parts fit back together exactly
Compressed audio is stored in small frames, and a file can only be cut between them without re-encoding. An MP3 frame is 26 ms long and often borrows data from the frame before it, so a plain cut garbles the first few milliseconds of every part. Many splitters avoid that by decoding the file and saving each part as a new MP3, which compresses the sound a second time.
This page copies the original frames instead. Each MP3 or M4A part starts two frames before its cut and carries a small note, the LAME gapless header in an MP3 and the edit list in an M4A, saying how many samples to skip at the start and where to stop. Players that read the note start every part on the exact sample. FLAC frames don't depend on each other, so FLAC cuts move to the nearest frame edge instead (at most 52 ms away in our test file), and the parts never overlap.
What we measured
The test recording was split at its eight pauses into nine parts. Each set of parts was decoded by Chrome and separately by FFmpeg, joined end to end and compared with the decoded original, sample by sample:
| File | Frames copied unchanged | Joined length | Joined sound vs original |
|---|---|---|---|
| WAV | — (samples copied) | Identical | Identical |
| MP3, 128 kbps | All 961 | Identical | Identical |
| M4A (AAC) | All 1,069 | Identical | Identical, or within 2.7% where the encoder used noise substitution (see below) |
| FLAC | All 232 | Identical | Identical |
| Opus | All 1,245 | 0.6 s longer | 80 ms of lead-in repeated at the start of each part |
The M4A test file was made with FFmpeg's AAC encoder, which by default fills some quiet high frequencies with "noise substitution": the decoder generates that noise itself, randomly, so it comes out slightly different depending on where decoding started. With noise substitution turned off in the encoder, the joined M4A parts matched the original sample for sample too. Opus parts keep 80 ms of lead-in because an Opus decoder needs a moment to settle; it is not marked to be skipped, so you hear it if you play the parts back to back.
Splitting the 24-second file took about 0.1 seconds. The MP3 parts together are about 4% larger than the original (404 KB against 389 KB), because each part repeats two frames and has its own header.
When to choose WAV
Choose WAV · exact when the parts are going into a program that may not read the gapless information, such as an older audio editor or a sampler, or when every cut has to be on the exact sample without relying on the player. The file is decoded once and each part is saved as 16-bit WAV, about 10 times the size of a 128 kbps MP3. To keep a single section instead of splitting the whole file, use Trim Audio; to put files back together, use Merge MP3.
The audio never leaves your device: it is read, analysed and split in your browser.