🎁 New Sign up free, 10 calls on us. Up to $1, no card needed.

Qwen3 TTS Instruct Flash vs TTS-1 HD

vs

Which one, when — curated verdict, not a benchmark table

qwen3-tts-instruct-flash costs $11.5 per million characters against $30, roughly 2.6x less, and it is the only one of the two that lets you direct the voice in natural language — tts-1-hd exposes no voice control. The trade is request size, 600 characters against 4096, so long copy has to be split. Both stream. Pick tts-1-hd for long passages in one call, qwen3-tts-instruct-flash for directed short lines at lower cost.

Pricing

Qwen3 TTS Instruct Flash TTS-1 HD Δ
Per 1M characters $11.5 $30 0.38×

Rates from the live catalog at build time; each model page carries the current card.

Where they sit — price per 1M characters across all 7 text-to-speech models on this billing unit (log scale)

Capabilities

Qwen3 TTS Instruct Flash TTS-1 HD
Streaming yes yes
SSML undocumented undocumented
Billing unit character character

Specs

Qwen3 TTS Instruct Flash TTS-1 HD
Input modalities text text
Output modalities audio audio
Request limit 600 characters 4096 characters
Voices

System voices published with one-line personas, among them Cherry (a sunny, positive, friendly and natural young woman), Serena, Ethan, Chelsie, Momo, Vivian, Moon, Maia, Kai, Nofish (a designer who cannot pronounce retroflex sounds), Bella, Eldric Sage, Mia, Mochi, Bellona, Vincent, Bunny, Neil, Elias, Arthur, Nini, Seren, Pip and Stella

the Qwen-TTS voice list pairs each voice with the exact model ids that accept it.

alloy, ash, coral, echo, fable, onyx, nova, sage and shimmer, a smaller set than the full 13-voice TTS list, and voices are currently optimized for English.
Languages

Chinese (Mandarin), English, German, Italian, Portuguese, Spanish, Japanese, Korean, French and Russian. language_type defaults to Auto for mixed-language or undetermined input, which Alibaba documents as not guaranteeing accuracy

naming a single language is documented to significantly improve synthesis quality. Unlike the Qwen3-TTS-Flash series, the Instruct series lists no Chinese dialect voices (Beijing, Shanghainese, Sichuan, Nanjing, Shaanxi, Hokkien, Tianjin, Cantonese).

Generally follows the Whisper model’s language support: Afrikaans, Arabic, Armenian, Azerbaijani, Belarusian, Bosnian, Bulgarian, Catalan, Chinese, Croatian, Czech, Danish, Dutch, English, Estonian, Finnish, French, Galician, German, Greek, Hebrew, Hindi, Hungarian, Icelandic, Indonesian, Italian, Japanese, Kannada, Kazakh, Korean, Latvian, Lithuanian, Macedonian, Malay, Marathi, Maori, Nepali, Norwegian, Persian, Polish, Portuguese, Romanian, Russian, Serbian, Slovak, Slovenian, Spanish, Swahili, Swedish, Tagalog, Tamil, Thai, Turkish, Ukrainian, Urdu, Vietnamese and Welsh, despite voices being optimized for English
Voice control
  • instructions steers speed, emotion and style in natural language, up to 1,600 tokens and documented for Chinese and English only
  • optimize_instructions (default false) rewrites the instruction into a directive better suited to synthesis and has no effect when instructions is empty
  • voice cloning and voice design are both listed as unsupported for this model id
none
Limits

HTTP non-real-time speech synthesis API

the -realtime suffix marks the WebSocket sibling. Input text capped at 600 characters, multilingual mixed input allowed. Non-streaming returns an audio file URL valid for 24 hours

streaming returns Base64-encoded PCM in chunks with the URL only in the final packet, played back in the official samples as 24 kHz mono 16-bit audio. Billed by input text characters, reported as usage.characters (input_tokens and output_tokens are always 0 on the Qwen3-TTS series)

output audio is free.

Speech generation endpoint (v1/audio/speech) only, with Chat Completions, Responses, Realtime, Batch and Fine-tuning all listed as not supported

input text is capped at 4096 characters

output mp3 (default), opus, aac, flac, wav or pcm (raw 24 kHz 16-bit signed little-endian samples)

realtime playback via chunked transfer encoding

Specs are transcribed from each vendor’s documentation; a row a vendor does not publish is left out rather than inferred. Full sources: Qwen3 TTS Instruct Flash · TTS-1 HD

Switch between them with one line

Both ids are in every tab below — the highlighted pair of lines is the only edit. Same endpoint, same key, same request shape.

from openai import OpenAI

client = OpenAI(
    base_url="https://synthorai.io/v1",
    api_key="sk-syn-...",
)

resp = client.audio.transcriptions.create(
    model="qwen3-tts-instruct-flash",
    # model="tts-1-hd",  # uncomment this line, comment the one above
    file=open("meeting.mp3", "rb"),
    language="en",
)
print(resp.text)

Get an API key →

FAQ

Which is cheaper, Qwen3 TTS Instruct Flash or TTS-1 HD?

Qwen3 TTS Instruct Flash is cheaper on per 1m characters ($11.5 vs $30, 2.6× apart). Other rows may point the other way — the table above carries the full card, and real cost depends on your mix.

Can I A/B test Qwen3 TTS Instruct Flash against TTS-1 HD without two integrations?

Yes. Both are served through the same OpenAI-compatible endpoint with one API key — switching is a one-line model-string change, so you can route a fraction of traffic to each and compare bills directly.

How is text-to-speech billed?

Per character of input text, with a per-request character ceiling shown in the spec table. Long scripts must be chunked across requests on either model.

Related comparisons