Recommended Opus Bitrates (Xiph.Org)
These starting points come from the Xiph.Org Opus Recommended Settings page. Listen to the result and move up or down from there.
| Use case | Channels | Bitrate |
|---|---|---|
| VoIP | Mono | 10–24 kbps (narrowband at 10, fullband by about 24) |
| Audiobooks / podcasts | Mono / stereo | 24 kbps / 32 kbps |
| Music streaming / radio | Stereo | 64–96 kbps |
| Music storage | Stereo | 96–128 kbps (128 kbps VBR is “pretty much transparent”) |
| 5.1 / 7.1 surround | 6 / 8 | 128–256 / 256–450 kbps |
| Archiving | Any | Use FLAC, not Opus |
Opus Bitrate Range: 6–510 kbps
Opus can encode audio at any bitrate between 6 kbps and 510 kbps. For comparison, MP3 is limited to 32–320 kbps, and AAC typically ranges from 16–320 kbps. This extreme flexibility is what makes Opus suitable for everything from narrow-band phone calls to high-fidelity music streaming.
The codec achieves this range by combining two underlying technologies: SILK (originally developed by Skype for speech) handles the low end, and CELT (from Xiph.Org for music) handles the high end. Opus seamlessly blends between them depending on the content and bitrate.
Key insight: Xiph.Org describes Opus at 128 kbps VBR as "pretty much transparent". This means most listeners cannot distinguish it from the uncompressed original — at roughly half the bitrate that MP3 needs to reach the same quality.
Application Modes
Opus has three application modes that optimize the encoder for different content types:
| Mode | Optimized For | How It Works | Best Bitrate Range |
|---|---|---|---|
voip |
Speech | Uses SILK speech coding, emphasizes formants and clarity | 12–40 kbps |
audio |
Music & mixed | Uses CELT for full-bandwidth audio, adapts to content | 64–256 kbps |
lowdelay |
Real-time | Minimizes latency (down to 5 ms), uses CELT only | 64–128 kbps |
The audio mode is the recommended default for most encoding. It automatically detects whether the content is speech or music and switches algorithms accordingly. The voip mode is specifically tuned for voice calls and dictation. The lowdelay mode is for live performance, gaming voice chat, and other real-time scenarios where every millisecond of latency matters.
Recommended Bitrates by Use Case
| Use Case | Bitrate | Channels | Size per Minute | Quality |
|---|---|---|---|---|
| VoIP / phone call | 10–24 kbps | Mono | ~75–180 KB | Clear speech; fullband from about 24 kbps |
| Voice message | 24–32 kbps | Mono | ~180–240 KB | Good speech clarity for messages and audiobooks |
| Podcast / interview | 48–64 kbps | Stereo | ~360–480 KB | Excellent for multi-voice content |
| Music (good) | 96 kbps | Stereo | ~720 KB | Very good, minor artifacts on critical listening |
| Music (transparent) | 128 kbps | Stereo | ~960 KB | Sweet spot — indistinguishable from source |
| Music (maximum) | 192–256 kbps | Stereo | ~1.4–1.9 MB | Exceeds transparency, diminishing returns |
128 kbps stereo is the gold standard for music. The Xiph.Org recommended settings describe Opus at 128 kbps VBR as "pretty much transparent": most listeners cannot tell it apart from the original. Going higher than 128 kbps provides only theoretical improvement with no practical audible benefit for most content.
VBR vs CBR
Opus supports both variable and constant bitrate encoding:
- VBR (Variable Bitrate) is the default and recommended setting. The encoder allocates more bits to complex passages (cymbals, dense chords) and fewer bits to silence or simple tones. This produces better quality per byte and is ideal for file storage and on-demand streaming.
- CBR (Constant Bitrate) outputs a fixed number of bits per second regardless of content complexity. Use CBR only when the transport layer requires a fixed bandwidth — for example, live WebRTC streams over constrained network links.
- CVBR (Constrained VBR) is a compromise: mostly variable but with a hard ceiling. This prevents the encoder from producing bursts that exceed a bandwidth budget while still optimizing within that limit.
For file conversion and archiving, always use VBR. There is no quality advantage to CBR at the same average bitrate — CBR just wastes bits on easy passages while starving hard passages.
Opus vs MP3: Quality at Equivalent Bitrates
Opus dramatically outperforms MP3 at every bitrate. Here is how they compare:
| Opus Bitrate | Equivalent MP3 Bitrate | Saving |
|---|---|---|
| 32 kbps | ~64 kbps MP3 | 50% smaller |
| 64 kbps | ~96–128 kbps MP3 | 50–60% smaller |
| 96 kbps | ~192 kbps MP3 | 50% smaller |
| 128 kbps | ~256 kbps MP3 | 50% smaller |
These pairs are rough guides, not test results. In the HydrogenAudio 96 kbps test listed on opus-codec.org, Opus at 96 kbps was compared with MP3 at 136 kbps. As a rule, Opus reaches similar quality at a clearly lower bitrate than MP3. This efficiency comes from modern psychoacoustic models and the dual SILK/CELT architecture that MP3's 1993-era design simply cannot match.
Practical advice: When converting Opus to MP3, use an MP3 bitrate at least 1.5–2× the Opus source. For a 64 kbps Opus file, encode at 128 kbps MP3. For 128 kbps Opus, encode at 192–256 kbps MP3 to preserve quality.
FFmpeg Encoding Examples
Here are practical FFmpeg commands for encoding Opus at different quality levels:
- Voice (mono):
ffmpeg -i input.wav -c:a libopus -b:a 32k -application voip output.opus - Music (default):
ffmpeg -i input.wav -c:a libopus -b:a 128k -application audio output.opus - Maximum quality:
ffmpeg -i input.wav -c:a libopus -b:a 256k -application audio output.opus - Low-delay gaming:
ffmpeg -i input.wav -c:a libopus -b:a 96k -application lowdelay output.opus
For converting Opus to MP3 (when you need universal compatibility):
- Voice source:
ffmpeg -i voice.opus -c:a libmp3lame -b:a 128k output.mp3 - Music source:
ffmpeg -i music.opus -c:a libmp3lame -q:a 2 output.mp3(VBR ~190 kbps)
Bitrate vs Audio Bandwidth, Frame Size and Mono
- Frame size: Opus encodes 2.5, 5, 10, 20, 40 or 60 ms frames. 20 ms is the default and the right choice for files.
- Stereo to mono: below roughly 19 kbps the encoder starts downmixing stereo to mono to save bits. For speech, mono is often the better choice anyway; see mono vs stereo and when to use each.
- Complexity: the encoder uses its highest complexity, 10, by default. Lower values save CPU at some cost in quality.
| Audio bandwidth | Frequency range | Rough bitrate needed |
|---|---|---|
| Narrowband | up to 4 kHz | 6 kbps |
| Mediumband | up to 6 kHz | 9 kbps |
| Wideband | up to 8 kHz | 10 kbps |
| Super-wideband | up to 12 kHz | 12–14 kbps |
| Fullband | up to 20 kHz | 14–16 kbps |