Merge Audio

Join two or more recordings into a single track, with a gap or a crossfade at each seam.

Runs on your deviceAudioWorkingNo account needed

What this tool does

Merge Audio lays several recordings end to end and writes them as one file. Every input is decoded to raw samples first — WAV by a plain RIFF reader, everything else through the Web Audio API — and the joined samples are encoded again as WAV or MP3. All of that happens in this browser tab and no audio leaves it. A WAV merge therefore finishes with the network switched off; an MP3 one may not, because the encoder is a script the page fetches from this site the first time you ask for MP3.

Three settings shape the seam between clips. Silence between clips inserts a gap of up to 30 seconds. Crossfade instead overlaps each clip with the one before it, up to 10 seconds, and it takes precedence: any crossfade above zero cancels the gap, and the finished track ends up shorter than the sum of its parts by the length of the overlap at every join. Match levels peak-normalises each clip to −1 dBFS before joining, so one recording does not arrive noticeably louder than the next.

The clips do not have to agree with each other. The highest sample rate in the list and the widest channel count both win, so a 44.1 kHz mono voice memo dropped in beside a 48 kHz stereo track is resampled upward and copied to both sides rather than dragging the whole merge down to the weaker input. The resampler is linear interpolation, which is unremarkable for the usual 44.1-to-48 kHz step and rather less so if you push a low-rate recording a long way up. Two caveats sit on top of that. Writing MP3 pulls the result back to the nearest rate the bundled encoder accepts, with 48 kHz as its ceiling, and keeps only the first two channels of anything wider than stereo. And above two channels there is no real upmix: a stereo clip joined to a 5.1 one has its right channel repeated into the extra positions.

Four limits are worth knowing before you start. The output is WAV or MP3 and nothing else, because no browser exposes an AAC, FLAC or OGG encoder to call. “Match the input where possible” reads only the first file in the list, so a run of FLAC or M4A files comes back as WAV. Decoding is the browser's own, so a format it will not open — WMA anywhere, OGG or Opus on some builds, AIFF outside Safari — stops the whole run with a message naming that file rather than skipping past it. And the samples are held in memory as 32-bit floats while the work runs, a little over a gigabyte per hour of stereo at 44.1 kHz and roughly double that at the moment the joined copy sits beside the decoded clips, which is what limits a long queue, since nothing here imposes a file count or size cap of its own.

How to use it

  1. Add at least two audio files. MP3, WAV, M4A, AAC, FLAC, OGG and Opus are all accepted, in any mix. A single file is refused, because there is nothing to join it to.
  2. Check the order before you start. Clips are joined top to bottom in the list, and the rows have no drag handles. The X on a row removes it, and adding the file again puts it at the bottom.
  3. Set a gap, or a crossfade. Silence between clips runs from 0 to 30 seconds. Crossfade overlaps instead, up to 10 seconds, and overrides the gap whenever it is above zero.
  4. Turn on Match levels if one clip is louder. It peak-normalises every clip to −1 dBFS before the join, so a quiet phone recording meets the same ceiling as a studio one.
  5. Choose the output format. Match the input where possible follows the first file — MP3 in, MP3 out, anything else to WAV. Or force WAV at 16, 24 or 32-bit float, or MP3 from 64 to 320 kbps.

Processing & privacy

Runs on your device. Your file is processed directly in this browser.

Common use cases

Audiobook or lecture chapters

Twenty numbered files become one, which is far easier to keep your place in on a phone than a folder that reshuffles itself between apps.

A recorder that split a long take

Handheld recorders and dictaphones break a session at a file size limit, often mid-sentence. Joining with no gap puts the sentence back together.

Podcast intro, body and outro

Put a two-second crossfade between the segments so the music under the intro dissolves into speech instead of stopping dead.

Combine MP3 tracks into one continuous piece

A short crossfade between tracks removes the silence at each boundary and gives a set that plays through without pauses.

Assembling voice notes before transcription

One file and one timeline of timestamps, rather than feeding a transcriber a dozen fragments and hoping they stay in order.

Questions

Are my audio files uploaded?
No. Decoding, joining and encoding all happen in this browser tab, using the Web Audio API and an MP3 encoder served from this site. Your recordings are never transmitted or stored anywhere else. The one thing the page still asks the network for is that encoder script, fetched the first time a run writes MP3, so a WAV merge is the one that survives a dropped connection intact.
What format does the merged file come back as?
WAV or MP3. WAV the page writes itself, sample by sample; MP3 comes from a LAME build vendored with the site. Nothing equivalent exists to call for AAC, FLAC or M4A, so there is no way to concatenate audio here and get one of those out. The file is named after the first input with -merged added, and picking WAV or MP3 explicitly avoids any surprise about which one you get.
Can I change the order after adding the files?
Not in place. Rows are joined in the order they arrived, so the fix is to remove one with its X and add the file again, which drops it at the end. Check names like part2 and part10 first, since most file pickers sort those the wrong way round.
Do the clips have to share a sample rate or channel count?
No. The merge takes the highest sample rate and the widest channel count in the list and brings everything up to those. Mono is copied to both sides of a stereo pair, and a 44.1 kHz file is resampled to sit beside a 48 kHz one. Nothing is downgraded to match the weakest input. The one place anything comes back down is the writing stage: an MP3 output is capped at 48 kHz and at the first two channels, while WAV keeps whatever the merge produced.
Does merging cost any quality?
That depends on the output. WAV writes the decoded samples back out at the depth you choose, and 32-bit float is the only one of the three that stores them untouched — 16 and 24-bit round every sample to the grid and clamp anything past full scale. MP3 means encoding again, so joining MP3s and writing MP3 costs one generation — hard to hear at 256 or 320 kbps on most material, easier at 96. Choose WAV when the result is going on into an editor.
Do ID3 tags and cover art survive?
No. The merged file is written fresh and no tags are copied from any of the inputs, so title, artist and artwork all come back blank. Audio Metadata can put the text tags back afterwards, but it writes ID3 and therefore only onto an MP3 — a WAV merge stays untagged, and there is no cover-art field on that tool at all.
Why is my crossfade shorter than I asked for?
The overlap can never be longer than the shorter of the two clips it joins, so a 10 second crossfade against a 4 second clip overlaps 4 seconds. The fade is linear rather than equal-power, which means unrelated material can dip slightly in level halfway through a long overlap.
What does Match levels actually measure?
The peak sample, not perceived loudness. Each clip is scaled so its loudest moment sits at −1 dBFS. A quiet recording with one door slam in it is therefore already at the ceiling and will not be lifted, so it can still sound softer than the clip beside it. A digitally silent clip has no peak to scale from, and with the box ticked it stops the run with an error instead of being joined in flat.

Related tools