Audio Converter
Convert MP3, WAV, OGG, M4A and FLAC audio — free, unlimited length, entirely private.
Drop files here or click to choose
🔒 Your files never leave your browserHow it works
This tool decodes your audio file into raw samples using your browser's built-in Web Audio engine — the same decoder used to play audio in the browser itself, which handles MP3, WAV, OGG, M4A and FLAC — then re-encodes those samples into your chosen output format. WAV needs no encoder at all (it's just the raw samples with a small header), so it always works; M4A uses your browser's built-in AAC encoder when available.
Limitations
Output formats are WAV and M4A only — no MP3 (no cleanly-licensed encoder exists) and no OGG output yet (a real Ogg container is a different binary format from MP4/M4A and hasn't been built here yet, though it's on the roadmap). Input decoding is much broader than output encoding, since it relies on your browser's built-in decoder rather than anything this tool has to implement itself.
FAQ
- Can I convert to MP3?
- No — see this site's other audio tools for the full explanation, but in short: every available JavaScript MP3 encoder is either directly LGPL-licensed or wraps LGPL-licensed code under a misleading MIT label, so there's no cleanly-licensed way to produce one here. You can convert to WAV (always works) or M4A (when your browser's built-in encoder supports it).
- Can I convert from MP3, OGG or FLAC?
- Yes — reading/decoding those formats uses your browser's own built-in audio decoder, which is a completely different capability from encoding, and is broadly supported. Only the output (encoding) side is constrained.
- Why is WAV so much bigger than my original file?
- WAV stores every sample uncompressed. Any compressed format you started with (MP3, OGG, M4A, FLAC) will produce a larger WAV file when decoded and re-saved — that's expected, not a bug, and it's the tradeoff for a format that needs no encoder at all.
- Is there a length or file size limit?
- No hard limit is imposed by this tool — you're bounded by your own device's memory, not a server-side quota.