Convert OPUS to MP3

Convert OPUS voice notes from WhatsApp, Telegram or Discord to MP3 in your browser. Free and private, with no upload and no size limit.

🌐 Español

Drop your file here (.opus)

🔒 Private by design: your files are processed locally in your browser and never uploaded to any server.

Opus, SILK and CELT: why a voice note is so small

Opus is the newest codec in wide use, standardised by the IETF as RFC 6716 in 2012, and it is unusual in being two codecs stitched together. One half is SILK, which Skype built for speech and then opened up. The other is CELT, from the same Xiph.Org people behind Vorbis, designed for low-latency music. The encoder switches between them, or blends them, depending on what it hears and how many bits it has been given.

That design is why it turns up everywhere audio has to travel live. Opus is mandatory to implement in WebRTC, which is the plumbing behind browser calls, so Discord, Signal, Telegram, WhatsApp voice messages and a long list of conferencing tools all speak it. It works from about 6 kbps for narrowband speech up to 510 kbps for stereo music, and it always runs internally at 48 kHz regardless of what you feed it.

For a voice message the practical outcome is a file so small it barely registers: a minute of speech can be well under 200 KB. Excellent inside the app. A problem the moment the audio has to leave, because outside real-time software the format’s support is patchy at best. iOS will not open one from Files or from an email attachment, car stereos do not list it, and a fair number of transcription services, editors and evidence-handling systems reject the extension without looking inside.

Getting the voice note out of the messaging app first

The conversion is the easy half. Extracting the file is usually where people get stuck, because messaging apps deliberately make their media directories awkward to reach.

On Android, WhatsApp keeps voice notes under its own media folder and a file manager can reach them directly. On iOS the reliable route is the share sheet: forward the message to yourself by email, or save it to Files, and you will end up with a .opus you can drop here. Telegram’s download option produces the same thing, though it sometimes labels it with an Ogg extension instead. Discord’s saved attachments arrive as .opus directly.

The MP3 will usually be larger than the .opus that made it

This surprises almost everyone, so it is worth stating plainly: converting a voice note to MP3 normally makes the file bigger, not smaller. A 90-second message that arrived as a couple of hundred kilobytes can come back as a couple of megabytes at the default bitrate.

Nothing has gone wrong. Opus at speech bitrates is simply far more efficient than MP3 can be, and the encoder here is asked for a target rate rather than a target quality, so it spends the bytes it was told to spend. You are trading size for the ability to open the file anywhere, which for a recording that matters legally or sentimentally is usually the trade you want.

If size does matter, take 128 kbps (smaller file). It is still generous for mono speech and it narrows the gap considerably.

Converting the file

  1. Drop the .opus file onto the box above, or click Choose a file and pick it.
  2. Set Audio quality. 192 kbps (recommended) is the default and is already comfortable for speech; 128 kbps (smaller file) trims the result if you are converting a lot of messages.
  3. Click Convert OPUS to MP3. The button gives way to a progress bar and a Cancel button while the encoder works.
  4. Download the MP3, which keeps the original filename with .mp3 in place of .opus.

Bitrate advice when the source is compressed speech

The three rungs map to a single -b:a value handed to libmp3lame. What none of them can do is add information. A voice note recorded at 16 kbps mono contains a fixed, quite small amount of signal, and choosing 320 kbps (highest quality) simply describes that same signal in more bytes.

The one case where the top rung earns its place is when the .opus holds music rather than speech, which happens with exported Discord recordings and with some podcast distributions. There the source may have been encoded at 96 kbps or higher in stereo, and the extra headroom keeps the second encode from adding audible artefacts on top of the first. The reasoning behind picking a number for speech against music is worked through in choosing a bitrate for voice versus music.

Since Opus files are Ogg containers underneath, they can also carry embedded artwork, which FFmpeg treats as a video stream. The converter passes -vn so only audio reaches the encoder.

Opus support outside the chat apps

Opus is genuinely the better codec, and it still loses this argument, because compatibility is decided by a long tail of devices and services that stopped being updated years ago. MP3 is what a 2009 car head unit, a courtroom playback system, an HR documentation portal and a video editor’s import dialogue all agree on.

So the sensible pattern is to keep the .opus as the untouched original and hand out the MP3. If what you want from the recording is text rather than audio, Transcribe Audio runs speech recognition on your own device, on the converted MP3 rather than on the .opus, which is not in its accepted list. OGG to MP3 covers the same file when an app has labelled it with an Ogg extension. The wider set of audio tools picks up from the MP3 too.

Frequently asked questions

My WhatsApp export gave me files ending in .opus but with long numeric names. Do those work?

Yes. WhatsApp names exported voice notes after their internal message identifier, which looks alarming but is only a filename. The module hands every file to FFmpeg under one fixed internal name, input.opus, regardless of what yours is called, so the original name affects nothing except what the downloaded MP3 is called.

Why did my 300 KB voice note become a 2 MB MP3?

Because Opus encodes speech at a fraction of the rate MP3 needs for the same clarity, often under 24 kbps for a mono voice note. Re-encoding that at the 192 kbps default produces a much bigger file carrying exactly the same information. Choosing 128 kbps helps, and even then MP3 will rarely match Opus for size on speech.

Will 320 kbps make the voice note clearer?

No. The bitrate sets how much room the MP3 encoder has to describe what it was given, not how much detail existed in the first place. A voice note recorded at 16 kbps mono has a fixed amount of information in it, and every rung of this selector is already more than enough to carry that faithfully.

Is the file I have really Opus if the extension says .oga or .ogg?

Possibly. Opus lives inside an Ogg container, so some apps label the same audio with an Ogg extension instead, and this page only accepts .opus. If the dropzone refuses your file with an unsupported-type message, the OGG to MP3 page takes .ogg and .oga and reaches the same decoder.

Does the conversion keep the stereo image of a Discord or WebRTC recording?

It keeps whatever channel layout the source had. Voice capture is almost always mono, so the MP3 comes out mono too and nothing is invented to fill a second channel. A stereo Opus file, such as a music export, stays stereo through the encode.

Related tools