How to flac to mp3 converter — zero upload, browser-based
- Step 1Open the converter — Load the flac-to-mp3 tool. On first use the FFmpeg WebAssembly engine downloads to your browser. That asset fetch is the only network activity — no audio is ever transmitted.
- Step 2Add your FLAC locally — Drop a
.flacfile onto the drop zone. The browser reads it directly from disk into memory; there is no upload progress bar because there is no upload. The file size and duration appear once it's loaded. - Step 3Choose a bitrate — Select
320k,256k,192k(default),128k, or64k. This is the only control. Higher bitrate = larger, higher-fidelity MP3. - Step 4Convert on your own machine — Run the conversion. FFmpeg decodes and re-encodes entirely in the tab. Speed depends on your CPU and the file length — a typical track is a few seconds.
- Step 5Download the result — The MP3 is generated in memory and offered as a download. It carries the original tags and cover art and never existed anywhere but your device.
- Step 6Verify privacy if you wish — Open your browser's Network tab before converting: you'll see the engine assets load, but no request carrying your audio file body. After the engine is cached, you can even disconnect from the network and the conversion still completes.
Where your file goes — local vs typical online converter
The processing model for this tool compared with a typical upload-based service. The difference is architectural, not a policy promise.
| Step | JAD (this tool) | Typical online converter |
|---|---|---|
| File read | Browser File API, in memory | Uploaded to a server |
| Decode + encode | FFmpeg WASM in your tab | Server-side FFmpeg/ffmpeg farm |
| Storage | None beyond your browser memory | Temp (or longer) on their disk |
| Network use | Engine assets only, no audio body | Full audio file transmitted |
| Queue | Your CPU only | Shared with other users |
| After download | Gone when you close the tab | Depends on their retention policy |
Tier limits for local conversion
Limits apply to the input FLAC's size and duration. They control capacity, not privacy — every tier processes locally.
| Tier | Max file size | Max duration | Files per run |
|---|---|---|---|
| Free | 50 MB | 30 min | 1 |
| Pro | 200 MB | 120 min | 10 |
| Pro-media | 100 GB | Unlimited | 100 |
| Developer | 100 GB | Unlimited | Unlimited |
Cookbook
Privacy-sensitive conversion scenarios. In every case the audio stays on your device — the bitrate is the only thing you choose.
Unreleased master to a shareable MP3 reference
Send a reference MP3 to a collaborator without exposing the lossless master to a third-party server. Convert locally, then share the MP3 by whatever channel you trust.
Input: master_v3.flac (confidential, 44.1 kHz) Setting: Bitrate = 256k Process: FFmpeg WASM, in-browser, no upload Output: master_v3.mp3 (reference copy) The FLAC master never left your machine.
Confidential interview FLAC to MP3 for transcription
An NDA-covered interview recorded in FLAC needs to be MP3 for a transcription app. Keep the raw recording off any converter's servers by doing it locally.
Input: interview_2026.flac (mono, voice) Setting: Bitrate = 64k (voice — small file) Output: interview_2026.mp3 No audio transmitted; safe for sensitive recordings.
Verify no upload happens
Open DevTools Network, then convert. You'll see the FFmpeg engine assets load once, but no request body carrying your FLAC.
DevTools -> Network -> Preserve log Drop file + Run Observed: ffmpeg-core.wasm (cached after 1st load) NOT observed: any POST/PUT with your audio bytes
Offline conversion after first load
Because the conversion is local, once the engine is cached you can go offline and it still works — proof the audio isn't being sent anywhere.
1. Load tool online (engine caches) 2. Disconnect network / airplane mode 3. Drop FLAC, set 192k, Run Result: MP3 produced offline — no server involved.
Client stems to MP3 proofs without cloud exposure
A mixing engineer converts client-owned FLAC stems to MP3 proofs. Local processing means the client's IP never sits on a converter's infrastructure.
Input: vocals.flac, drums.flac (per file, one at a time) Setting: Bitrate = 192k each Output: vocals.mp3, drums.mp3 Each converted locally; nothing uploaded.
Edge cases and what actually happens
First load needs network for engine assets
ExpectedThe FFmpeg WebAssembly core must download once before the first conversion. This fetches code, not your audio. After it's cached, conversions can run with the network off — confirming no audio is transmitted.
Very large FLAC stresses browser memory
Local resource limitBecause everything runs in the tab, a multi-gigabyte FLAC can hit browser memory limits even on Pro-media's 100 GB allowance. Long recordings are best handled on a desktop browser with plenty of RAM; close other tabs if the conversion stalls.
Free tier file over 50 MB / 30 min
Blocked on FreeCapacity, not privacy, is the limit. Free allows one file up to 50 MB / 30 minutes. Pro raises it to 200 MB / 120 minutes / 10 files; Pro-media/Developer to 100 GB with unlimited duration. The audio is still local at every tier.
Closing the tab mid-conversion
Output lostSince processing is in-memory and local, closing or refreshing the tab before the download discards the in-progress MP3 — there is no server-side job to resume. Re-run after re-opening; the source FLAC is unaffected.
Browser without WebAssembly support
Unsupported browserThe converter needs a modern browser with WebAssembly (all current Chrome, Edge, Firefox, Safari qualify). A very old or locked-down browser without WASM cannot run the engine. Update the browser; there is no server fallback by design.
Private/incognito clears the cached engine
Re-downloads each sessionIn private windows the cache is cleared on close, so the engine re-downloads next session. Conversions still run locally and privately — you just pay the one-time asset fetch again.
Corrupt FLAC fails locally
Decode errorA damaged or truncated FLAC makes FFmpeg's decoder error out in the tab. The failure is local — no partial upload exists. Re-source the FLAC and retry.
Expecting cloud-side speed-ups
CPU-boundThere is no server farm to offload to, so a slow or busy CPU means a slower conversion. The trade-off is total privacy. For routine sizes this is still seconds; for very long files, expect proportionally longer local processing.
Wanting an audit log of what was processed
Not retainedBecause nothing is uploaded, there is no server-side record of your files. That's the point for sensitive work — but it also means you keep your own copies. Save the MP3 before closing the tab.
Frequently asked questions
Does this converter upload my FLAC anywhere?
No. The FLAC is read directly from your disk by the browser and processed by FFmpeg compiled to WebAssembly, entirely in your tab. No request carrying your audio is sent to any server — you can confirm this in your browser's Network tab.
How can I be sure it's private?
Two ways: (1) open DevTools Network and watch — only the engine assets load, never your audio body; (2) after the engine is cached, go offline and convert anyway. If it works with no network, the audio clearly isn't being transmitted.
Is it safe for unreleased or NDA-covered audio?
Yes, that's the main use case. Because there is no upload and no server-side storage, unreleased masters, client stems, and confidential recordings stay on your device. There is no cloud copy to leak, expire, or subpoena.
Where is the converted MP3 stored?
Only in your browser's memory until you download it. There is no server-side copy. Once you save it and close the tab, nothing remains anywhere but the file you downloaded.
Does it work offline?
After the FFmpeg engine has loaded and cached once, yes — you can disconnect from the network and conversions still complete locally. The first load needs network to fetch the engine assets (not your audio).
Why might conversion feel slower than a cloud service?
All the work runs on your own CPU instead of a server farm. For typical files it's still just seconds; for very long recordings it scales with your hardware. The trade-off is complete privacy and no upload wait.
Are there any limits on the private conversion?
Yes — capacity limits, not privacy limits. Free: 50 MB / 30 min / 1 file. Pro: 200 MB / 120 min / 10 files. Pro-media and Developer: 100 GB / unlimited duration. Every tier processes locally.
Does a paid tier change where my file goes?
No. Privacy is identical across tiers — everything is local. Paying only raises the file-size, duration, and batch limits; it does not move processing to a server.
What if my file is too big for browser memory?
Very large FLACs can exceed what a browser tab can hold even within the 100 GB tier allowance. Use a desktop browser with ample RAM and close other tabs. There's no server to offload to, so memory is the practical ceiling for huge files.
Do you keep logs of what I convert?
There is no server-side processing, so there is nothing to log about your files. Usage metering for tier limits is about counts, not file contents — your audio is never seen server-side.
Can I convert several sensitive files in a row?
Yes, one file per run. Each conversion is independent and local. On paid tiers you can also process batches; on Free, convert them one at a time. None of them are uploaded.
What other audio tools are also no-upload?
All of JAD's audio tools run the same in-browser FFmpeg engine — for example audio-trimmer, bitrate-changer, and id3-editor are all local. You can chain them for a fully on-device workflow without your audio ever leaving the machine.
Privacy first
Every JAD Audio tool runs entirely in your browser via FFmpeg (WebAssembly) and RNNoise. Your audio files never leave your device — verified by zero outbound network requests during processing.