Skip to main content

Supported languages

Tavus supports 43 languages for spoken interaction. By default, tavus-auto intelligently routes each conversation to the best TTS provider for that language.
Language availability also depends on your selected STT model. Some models support a subset of these languages. See the STT layer configuration for per-model language breakdowns.
  • English (en)
  • French (fr)
  • German (de)
  • Spanish (es)
  • Portuguese (pt)
  • Chinese (zh)
  • Japanese (ja)
  • Hindi (hi)
  • Italian (it)
  • Korean (ko)
  • Dutch (nl)
  • Polish (pl)
  • Russian (ru)
  • Swedish (sv)
  • Turkish (tr)
  • Tagalog (tl)
  • Bulgarian (bg)
  • Romanian (ro)
  • Arabic (ar)
  • Czech (cs)
  • Greek (el)
  • Finnish (fi)
  • Croatian (hr)
  • Malay (ms)
  • Slovak (sk)
  • Danish (da)
  • Tamil (ta)
  • Ukrainian (uk)
  • Hungarian (hu)
  • Norwegian (no)
  • Vietnamese (vi)
  • Bengali (bn)
  • Thai (th)
  • Hebrew (he)
  • Georgian (ka)
  • Indonesian (id)
  • Telugu (te)
  • Gujarati (gu)
  • Kannada (kn)
  • Malayalam (ml)
  • Marathi (mr)
  • Punjabi (pa)
  • Swahili (sw)
For a full list of supported languages for each TTS engine, please click on the following links:

Cartesia

ElevenLabs

By default, Tavus uses the tavus-auto TTS engine. It intelligently routes the conversation to the best TTS provider for that language. Only set tts_engine explicitly when you need a specific provider.
If your language is not in the list above, see Additional language support via Azure.

Setting the Conversation Language

To specify a language, use the properties.language parameter in the Create Conversation. You must use the full language name, not a language code.
cURL
Language names must match exactly with those supported by the selected TTS engine.

Smart Language Detection

To automatically detect the participant’s spoken language throughout the conversation, set language to multilingual when creating the conversation:
cURL
This enables the STT (speech-to-text) engine to automatically switch languages, dynamically adjusting the pipeline to transcribe and respond in the detected language throughout the conversation.
For the highest accuracy, we recommend setting a specific language rather than using multilingual. Smart Language Detection works best as a fallback when the participant’s language is unknown ahead of time.

Additional language support via Azure

There may be additional language support via Azure if you need a language that is not covered above. Use Azure only as a fallback in that case - prefer the default tavus-auto routing whenever your language is already supported. For the latest supported languages, check Azure Speech TTS language support. Unlike Cartesia and ElevenLabs (which Tavus hosts for you), Azure requires you to bring your own Azure Speech API key:
  1. Set tts_engine to azure explicitly on the PAL’s TTS layer.
  2. Provide your own Azure Speech resource api_key. The resource must be in the East US region (Tavus synthesizes via eastus; a key from another region returns an authentication error). Set external_voice_id to any standard Azure neural voice available in East US (for example de-DE-KatjaNeural); Custom Neural Voices must be deployed in that same resource.
Any Azure voice can speak any supported language, carrying the voice’s own accent. For a natural accent, pick a voice whose locale matches your target language (e.g. a de-DE-* voice for German), or use one of Azure’s *MultilingualNeural voices.