DeepSeek speech API benchmark

DeepSeek ASR and TTS, tested: price, accuracy, latency

DeepSeek added a set of tool APIs, including speech to text (ASR) and text to speech (TTS). We wired both into BibiGPT on launch day and ran the same audio through Grok, Gemini, Qwen, StepFun and ElevenLabs.

Short answer: DeepSeek ASR is 2nd of 6 on Chinese (1.9% CER), mid-pack on English (6.4% WER), returns in about 1.2 s per clip and costs $0.058/hour at the promo price. Files max out at 120 seconds and there are no timestamps, so it fits voice input better than subtitles. DeepSeek TTS starts speaking in about 1 second, has two voices and costs $0.225 per 10K characters (a Chinese character counts as 2).

Pricing

  • Speech to text: list price $0.116/hour, $0.058/hour during the 50%-off promotion, billed per second (partial seconds round up).
  • Text to speech: list price $0.45 per 10K characters, $0.225 during the promotion. A Chinese character counts as 2; letters, digits and spaces count as 1.
  • In practice that is about $22.5 per million English characters and $45 per million Chinese characters. See the speech model comparison for every provider side by side.

Speech-to-text accuracy

The same 50 clips (25 Mandarin, 25 English) through six engines. Lower is better.

EngineChinese CEREnglish WERLatencyPer hourTimestampsMax file
Grok Voice Transcribe 2.01.4%5.3%2.2 s$0.1Yes500 MB
DeepSeek ASR1.9%6.4%1.2 s$0.058No120 s / 8 MiB
Gemini 3.5 Transcribe2.2%5.3%4.3 s$0.31Yes~20 MB inline
Qwen3-ASR-Flash2.3%4.6%0.8 s$0.112Yes5 min (flash)
StepFun ASR3.9%5.8%0.8 s$0.0211Yes—
ElevenLabs Scribe v27.1%6.4%2.8 s$0.22Yes3 GB

Method: 25 Mandarin and 25 US English clips drawn at random from the Google FLEURS test set (about 9 minutes), converted to 16 kHz 16-bit mono WAV and loudness-normalised. Chinese is scored by character error rate (CER), English by word error rate (WER), with punctuation, case and script normalised. Latency is the median per request.

What we saw

  • Chinese is the most consistent: its worst clip was 12% CER, versus 26% for Grok and 21% for Qwen. Most errors were transliterated foreign names.
  • Very quiet recordings lose words: FLEURS has a dozen near-silent clips. Without loudness normalisation DeepSeek dropped the start or end of some English sentences and WER rose from 6.4% to 17.5%. Normalise volume first.
  • Brand names drift: “BibiGPT” came back as “BB GPT”. There is no hotword parameter to fix it.
  • Cantonese is recognised, but in the one clip we tried it came back as standard written Chinese rather than colloquial Cantonese characters.
  • Fast: about 1 s per clip, on par with Qwen and StepFun and over twice as fast as Grok or Gemini.

Text-to-speech test

The same script (119 Chinese characters, 292 English characters, 83 Japanese characters) in both voices.

VoiceLanguageFirst audioTotalAudio length
stellaZH1.03 s4.37 s20.3 s
tideZH0.79 s3.85 s19.1 s
stellaEN1.26 s5.58 s27.0 s
tideEN0.96 s5.47 s24.6 s
stellaJA0.99 s2.45 s12.6 s
tideJA0.80 s2.19 s12.0 s

Listen

Raw, unedited audio we generated with DeepSeek TTS.

What we saw

  • Quick to start: first audio in 0.8–1.3 s and synthesis at about 5× realtime, good for streaming playback.
  • Numbers are read sensibly in Chinese. In English, “$0.06” is read as “zero point oh six dollars”.
  • Only two voices, Stella (female) and Tide (male), with no speed, emotion or voice-cloning controls. Use MiniMax or ElevenLabs for that.
  • Content review applies: rejected text returns HTTP 400.

Limits at a glance

ItemASRTTS
EndpointPOST /v1/tools/asr (multipart)POST /v1/tools/tts (JSON), plus WebSocket streaming
Format16-bit PCM WAV or Ogg Opus; MP3 is rejectedwav (default) or 24 kHz pcm; opus over WebSocket
Length≤ 120 s and ≤ 8 MiB≤ 10,000 billed characters, body ≤ 64 KiB, up to 30 min of audio
Languages21 incl. Cantonese, auto-detected10: Mandarin, Cantonese, English, Japanese, Korean, Malay, Arabic, Indonesian, Thai, Vietnamese
ParametersNo language, hotword or timestamp optionsvoice_id, format, filter_markdown; no speed
Concurrency50 in-flight requests per account50 in-flight requests per account
GotchasStereo uses only the left channel; a silent left channel returns an empty string, not an errorwav is streamed, so the header length is a placeholder; do not read duration from it

Using it in BibiGPT

  • Narration for image videos and document explainers: pick “DeepSeek TTS” as the voice engine. Pro members need no API key.
  • For long-video subtitles keep Auto: DeepSeek ASR has no timestamps and a 120 s cap, so BibiGPT has not added it as a subtitle engine yet.

Calling the API

Both endpoints use your regular DeepSeek API key, the same one as the chat models. ASR docs · TTS docs

curl https://api.deepseek.com/v1/tools/asr \
  -H "Authorization: Bearer $DEEPSEEK_API_KEY" \
  -F file="@speech.wav"
# → {"request_id":"…","text":"…","duration_ms":3200}

# MP3 / M4A 先转成 16 kHz 单声道 WAV,切成 ≤120 秒一段
ffmpeg -i in.mp3 -ac 1 -ar 16000 -sample_fmt s16 \
  -f segment -segment_time 110 part_%03d.wav
curl https://api.deepseek.com/v1/tools/tts \
  -H "Authorization: Bearer $DEEPSEEK_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"text":"你好,DeepSeek。","voice_id":"tide","format":"wav"}' \
  --output speech.wav

FAQ

Does DeepSeek have a speech-to-text and text-to-speech API?

Yes. Both launched in November 2026 under Tool APIs in the DeepSeek docs (Speech to Text and Text to Speech) and use the same DeepSeek API key.

How much does DeepSeek ASR cost?

List price $0.116 per hour, $0.058 per hour during the 50%-off promotion, billed per second. Cheaper than ElevenLabs Scribe, pricier than StepAudio 2.5 or Qwen-Audio-3.1.

How accurate is DeepSeek ASR?

On our FLEURS sample it scored 1.9% CER on Chinese, 2nd of six and just behind Grok, and 6.4% WER on English, mid-pack.

Can DeepSeek ASR make video subtitles?

Not directly. It accepts at most 120 seconds per request and returns no timestamps, so you would have to split audio and estimate timing yourself. It suits dictation and voice messages better.

How many voices does DeepSeek TTS have?

Two: Stella (female, default) and Tide (male). It speaks Mandarin, Cantonese, English, Japanese, Korean and five more languages, detected from the text.

How is DeepSeek TTS billed?

List price $0.45 per 10K characters, $0.225 during the promotion. Chinese characters count double, so Chinese works out to about $45 per million characters.

Use DeepSeek voices without writing code

Turn an article, PDF or video summary into a narrated short video in BibiGPT and pick DeepSeek TTS as the voice.