SnipAudioCut audio

How many MP3 files can you merge into one, and in what order?

Published 2026-10-08 · by patrick-eu

Short answer: the number of files is not what stops a merge; the total length is. In our tests the audio joiner merged 100 MP3 files into one track in the order we gave them, with no samples lost or added between them:

To combine MP3 files: choose them all at once in the audio joiner, check the list, move clips with the arrows or the ☰ handle, then pick MP3 (or WAV if you will edit again) and press Merge and download.

Why length matters and the number of files does not

A browser cannot stick MP3 files together as they are. The joiner decodes each file to plain samples, keeps all of them in memory, lays them end to end, and writes one new file. A clip costs memory by its length: one second of stereo audio is 44,100 samples for the left side and 44,100 for the right, stored as 4-byte numbers, so 352,800 bytes, or about 21 MB per minute. Whether those minutes come from 5 files or 100 makes little difference.

Pressing Merge needs more memory again: the joined track is built as one more full-length copy, then turned into 16-bit samples and written into the file. So the merge step, not opening the files, is where a long job runs out.

How we tested

Results by number of files

Files (10 s each)Total lengthOpen all filesSave as WAVSave as MP3 128 kbpsMerged MP3 size
20:200.3 s0.2 s3.8 s320,574 bytes
101:400.6 s0.6 s16.4 s1,600,783 bytes
508:202.7 s2.8 s71.4 s8,000,574 bytes
10016:405.4 s5.2 s157.3 s16,000,731 bytes
20033:2011.0 stab killedtab killednone
Measured by snipaudio.com, 2026-10-08. Headless Chromium 153 on a 4-core server with 2,026 to 2,638 MB free; we did not time a phone. Opening time is for the WAV job; the MP3 job's own run took 0.4, 0.6, 2.5, 6.4 and 12.6 s.

Opening time grew with the number of files at about 0.05 s per 10 s clip, and nothing failed to open. Every WAV export from 2 to 100 files was exactly 441,000 samples per clip long, and every clip matched FFmpeg's decode of the same file within 2 steps of the 16-bit scale (out of 65,536), in the order we chose. So the joins were gapless: these MP3s carry the LAME header, and the browser used it to drop the encoder's padding.

The MP3 export is the slow part: 8.6 to 9.8 s of encoding per minute of audio on our server. That is the encoder, not the number of files.

Where it stopped: total length

MergeTotal lengthScript memory after openingResult
50 × 10 s8:20179 MBmerged
5 × 3 min15:00326 MBmerged: WAV in 5.0 s, MP3 in 130.6 s
100 × 10 s16:40347 MBmerged
10 × 3 min30:00631 MBopened in 7.6 s; tab killed on Merge (WAV)
200 × 10 s33:20712 MBopened; tab killed on Merge (WAV and MP3)
Measured by snipaudio.com, 2026-10-08. Script memory = the page's JavaScript heap right after all files opened. 2,026 to 2,638 MB of memory was free before each job; 1 MB = 1,048,576 bytes.

Script memory followed the length, not the file count: 15 minutes in 5 files used about the same as 16 min 40 s in 100 files. During the 100-file MP3 merge and the 15-minute MP3 merge, all Chromium processes together peaked at 2,019 MB and 2,029 MB. In the three failed merges the system log shows the kernel stopping the browser's page process for lack of memory, while it held 1,883 to 2,414 MB.

Your limit will be different: a computer with more free memory will go further, and a phone may stop sooner. We did not test phones. Splitting the job into batches does not get round it, because the final merge still has to hold the whole length at once.

MP3 files without the LAME header add a gap each

Not every MP3 says how much padding it carries. We merged 100 copies of the same kind of 10 s clip saved without the header. Each one opened 1,368 samples (31.0 ms) longer than 10 s, so the merged track came out 3.10 s longer, 16:43.102 instead of 16:40.000, with a short silence at every join. Why that happens, and how to remove it before merging, is in why there are gaps between joined MP3 files.

Getting the order right

  1. Pick all files in one go if you can. We handed four files over in a mixed-up order (7, 2, 10, 1); the list showed them exactly in that order, not sorted by name.
  2. Add the rest later if you need to. Two more files added afterwards (5, then 3) went to the end of the list.
  3. Check the list before you merge. The arrow buttons move a clip one place per press; for long moves, drag the ☰ handle. Each clip shows its length, and the total length is shown under the timeline.
  4. Pick the format. MP3 to share or keep, WAV to edit again; how big a merged audio file is has the sizes. Clips with different sample rates are fine; see combining files with different sample rates.

Questions

How do I merge voice memos on an iPhone?

Get the recordings into the Files app first. Apple's iPhone User Guide (iOS 27 version) says recordings are exported from Voice Memos in .m4a format: tap the recording, tap the More button, then Share, then scroll down and tap Save to Files (Export a Voice Memos recording to Files on iPhone). To share several at once, tap Select above the list of recordings (Share a recording in Voice Memos on iPhone). Both pages were read on 2026-10-08; neither describes joining recordings inside the app. Then open the audio joiner in Safari, tap Choose audio files, pick the recordings from Files, and merge.

We did not test on an iPhone or in Safari. In Chromium, three mono M4A (AAC) files of 20, 25 and 30 s, which we made as stand-ins (not real Voice Memos files), opened in 0.9 s and merged to a mono WAV of 75 s, 2 samples short of the exact length after conversion from 48 kHz to 44.1 kHz.

Can I combine two MP3 files the same way?

Yes. Two is the minimum; our two-file merge opened in 0.3 s and saved as WAV in 0.2 s.

Are the files uploaded?

No. The joiner opens and merges them in your browser; see how to check whether an online tool uploads your file.

Continue with the next audio task