MP3 → FLAC
MP3 to FLAC converter
The MP3 is decoded to PCM and compressed losslessly into FLAC. Every sample the decoder produced is preserved exactly — but the information MP3 threw away is not coming back.
…or drag files and folders here. Add as many as you like — everything is processed on this device.
.aac .aif .aifc .aiff .m4a .mp3 .oga .ogg .opus .wav .wave
In one paragraph
This conversion has one legitimate use and one very common misunderstanding, so it is worth separating them. The legitimate use: you have a workflow that requires FLAC — an archive standard, a DJ library, a Hi-Fi streamer, a submission spec — and you need the MP3 to fit it without further generation loss. FLAC gives you that: from here on, no more quality is lost, no matter how many times the file is copied or re-compressed.
The misunderstanding: converting to a lossless format does not make the audio lossless. A FLAC made from a 128 kbps MP3 is a bit-perfect record of a 128 kbps MP3, in a file three to four times larger. If you can find the original CD, vinyl rip or download, use that instead.
Does this change the audio quality?
The FLAC is bit-identical to the MP3 decoder’s output, so no further loss occurs. It is not equivalent to a FLAC ripped from the source material — the MP3 encoder’s decisions are permanent.
- The FLAC will be roughly 3–5× the size of the MP3 while sounding identical to it.
- Some archive and Hi-Fi communities reject FLACs transcoded from lossy sources. Be honest about provenance if you share them.
- A spectrum analysis will show the MP3’s lowpass shelf (typically 16–20 kHz) clearly. That is how transcodes are detected.
A worked example
Feeding an archive that only accepts FLAC
- Drop the MP3s in and note their bitrates — the manifest will record them as provenance.
- Set bit depth 16 and compression level 8 (smallest file, same audio).
- Convert all and download the ZIP.
- Run one file through the spectrum analyzer afterwards so you have a record of the source lowpass.
Compression level 8, 16-bit
FLAC’s compression level only affects encoding time and file size — the decoded audio is identical at every level. Level 8 is the highest standard setting and typically 2–3% smaller than level 5 for a few times the CPU. Since the source is a decoded MP3, 16-bit is the right depth: 24-bit would store the same values with more zeroes.
Supported formats, limits and browser notes
Sonic Batch decodes with the browser when it can (faster, no engine download) and falls back to the self-hosted WebAssembly engine when it cannot. Every combination below works in every listed browser; the column only tells you which decoder does the work.
| Input | What it is | Chrome | Firefox | Safari | iOS |
|---|---|---|---|---|---|
| MP3 | The universal lossy format. Plays on essentially every device made since 1998. | Native | Native | Native | Native |
| AAC | Bare AAC frames with no MP4 wrapper — used by broadcast streams and some hardware. | Native | Partial | Native | Native |
| M4A | Apple’s default AAC container. Better quality than MP3 at the same bitrate. | Native | Native | Native | Native |
| OGG | Royalty-free lossy codec. Standard in game engines, Godot, Unity and Wikimedia. | Native | Native | Engine | Engine |
| Opus | The best-sounding lossy codec below 128 kbps. Used by WhatsApp, Discord and YouTube. | Native | Native | Partial | Partial |
| WAV | Raw PCM samples with a small header. Perfect fidelity, roughly 10 MB per stereo minute. | Native | Native | Native | Native |
| AIFF | Apple’s uncompressed PCM format — the WAV equivalent for Logic and Pro Tools. | Partial | Partial | Native | Native |
| Output | Encoder | Bitrates / depth | Sample rates | Tags |
|---|---|---|---|---|
| FLAC | flac | 16, 24-bit | 8–96 kHz | Yes + artwork |
- Max per file
- 400.0 MB
- Max per queue
- 4.00 GB
- Max duration
- 4:00:00
- Max archive
- 1.50 GB
These are enforced ceilings, checked before any decoding starts, not measured maximums — a file over the limit is rejected rather than allowed to exhaust the tab’s memory. Real-world capacity is lower on older phones, which is why the scheduler runs one file at a time on iOS and Safari.
Where your audio goes
Nowhere. Your file is read from disk into this browser tab with the File API, decoded and encoded by code running in that same tab, and handed back to you as a download. It is never transmitted.
That is a structural property of the application, not a policy promise: there are no API routes, no server actions and no third-party processing services in this project, so there is nothing capable of receiving a file. The page’s Content-Security-Policy also restricts connections to this origin, and the automated test suite includes a browser test that fails if any network request during import, preview, conversion or download carries media bytes.
The trade-off, stated plainly:results live in your tab’s memory until you download them. Closing or reloading the page discards them. There is nothing on a server to recover, because nothing was ever put there.
Troubleshooting
The FLAC is bigger than the MP3. Is something wrong?
No, that is expected and unavoidable. FLAC has to store every sample the MP3 decoder produced, which is far more data than the MP3’s compressed representation.
A community rejected my FLAC as a transcode.
They are right to. Lossy-sourced FLACs are detectable from the frequency cutoff. Use the original lossless source if you can obtain one.
Should I use 24-bit for better quality?
No. The extra bits would carry no additional information from a 16-bit-equivalent MP3 decode. It only makes the file larger.
Frequently asked questions
Does converting MP3 to FLAC improve the sound?
No. Nothing can reconstruct data a lossy encoder discarded. The FLAC preserves exactly what the MP3 sounds like — no better, no worse.
Then why does this page exist?
Because format requirements are real. When a system demands FLAC, this gets you there without any further loss, and states plainly what you do and do not gain.
How can someone tell my FLAC came from an MP3?
A spectrogram shows a sharp cutoff where the MP3 encoder’s lowpass filter was, usually between 16 and 20 kHz. Real lossless audio has content up to the Nyquist limit.
Is FLAC actually lossless?
Yes — decoding FLAC returns the exact PCM that went in, verified by an internal MD5 of the audio data. That is a property of FLAC, independent of where the PCM came from.