> ## Documentation Index
> Fetch the complete documentation index at: https://veniceai-feat-models-redesign.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Text-to-Speech Models

> Venice text-to-speech models like Kokoro, ElevenLabs Turbo, and Orpheus with multilingual voices, per-character pricing, and streaming audio.

export const HubMount = ({view, children, ...props}) => {
  const [hub, setHub] = useState(null);
  const [failed, setFailed] = useState(false);
  useEffect(() => {
    let alive = true;
    const w = window;
    if (!w.__veniceModelHub) {
      const urls = w.location.hostname === 'localhost' ? ['http://localhost:3333/data/model-hub.bundle.json', '/data/model-hub.bundle.json'] : ['/data/model-hub.bundle.json'];
      const load = i => fetch(urls[i], {
        cache: 'no-cache'
      }).then(res => {
        if (!res.ok) throw new Error(`bundle ${res.status}`);
        return res.json();
      }).catch(err => i + 1 < urls.length ? load(i + 1) : Promise.reject(err));
      const Frag = <></>.type;
      const h = (type, props, ...kids) => {
        const T = type;
        const {key, ...rest} = props || ({});
        if (!kids.length) return <T key={key} {...rest} />;
        if (kids.length === 1) return <T key={key} {...rest}>{kids[0]}</T>;
        return <T key={key} {...rest}>{kids.map((kid, i) => <Frag key={i}>{kid}</Frag>)}</T>;
      };
      w.__veniceModelHub = load(0).then(bundle => new Function(`return (${bundle.code})`)()({
        h,
        Fragment: Frag,
        useState,
        useEffect,
        useRef,
        useMemo,
        useCallback
      }));
    }
    w.__veniceModelHub.then(instance => {
      if (alive) setHub(instance);
    }).catch(() => {
      w.__veniceModelHub = null;
      if (alive) setFailed(true);
    });
    return () => {
      alive = false;
    };
  }, []);
  const View = hub ? hub[view] : null;
  if (View) return <View {...props}>{children}</View>;
  if (failed) {
    return <div className="vx-mount is-failed">
        <p className="vx-mount-note">The interactive model catalog could not load. The full data is below.</p>
        {children}
      </div>;
  }
  return <div className="vx-mount" aria-busy="true">
      <div className="vx-mount-skeleton" aria-hidden="true"><span /><span /><span /></div>
      <div className="vx-mount-source">{children}</div>
    </div>;
};

<HubMount view="ModelExplorer" modality="audio" task="tts">
  <div id="model-catalog-static">
    Use the `id` value as the `model` parameter in API requests. 11 models currently available.

    | Model | ID | Per 1M characters | Voices | Privacy |
    | - | - | - | - | - |
    | [Chatterbox HD (Resemble AI)](/models/chatterbox-hd) | `tts-chatterbox-hd` | \$50.00 | 9 | Private |
    | [ElevenLabs Turbo v2.5](/models/elevenlabs-turbo-v2-5) | `tts-elevenlabs-turbo-v2-5` | \$62.50 | 21 | Anonymized |
    | [Gemini 3.1 Flash TTS](/models/gemini-3-1-flash-tts) | `tts-gemini-3-1-flash` | \$187.50 | 30 | Anonymized |
    | [Gradium TTS](/models/gradium-tts) | `tts-gradium-v1` | \$47.50 | 12 | Anonymized |
    | [Inworld TTS-1.5 Max](/models/inworld-tts-1-5-max) | `tts-inworld-1-5-max` | \$12.50 | 14 | Anonymized |
    | [Kokoro Text to Speech](/models/kokoro-text-to-speech) | `tts-kokoro` | \$3.50 | 54 | Private |
    | [MiniMax Speech-02 HD](/models/minimax-speech-02-hd) | `tts-minimax-speech-02-hd` | \$125.00 | 15 | Anonymized |
    | [Orpheus TTS](/models/orpheus-tts) | `tts-orpheus` | \$62.50 | 8 | Private |
    | [Qwen 3 TTS 0.6B](/models/qwen-3-tts-0-6b) | `tts-qwen3-0-6b` | \$87.50 | 9 | Private |
    | [Qwen 3 TTS 1.7B](/models/qwen-3-tts-1-7b) | `tts-qwen3-1-7b` | \$112.50 | 9 | Private |
    | [xAI TTS v1](/models/xai-tts-v1) | `tts-xai-v1` | \$18.75 | 26 | Anonymized |
  </div>
</HubMount>

<div className="vx-prose">
  ## Voice catalog

  Voices are **model-specific**. The `voice` you pass must come from the catalog
  of the `model` you selected. Pick a model below to browse its voices.

  <div id="tts-voice-picker-placeholder">
    #### Chatterbox HD (Resemble AI) (`tts-chatterbox-hd`)

    | Voice ID |
    | - |
    | `Aurora` |
    | `Blade` |
    | `Britney` |
    | `Carl` |
    | `Cliff` |
    | `Richard` |
    | `Rico` |
    | `Siobhan` |
    | `Vicky` |

    #### ElevenLabs Turbo v2.5 (`tts-elevenlabs-turbo-v2-5`)

    | Voice ID |
    | - |
    | `Alice` |
    | `Aria` |
    | `Bill` |
    | `Brian` |
    | `Callum` |
    | `Charlie` |
    | `Charlotte` |
    | `Chris` |
    | `Daniel` |
    | `Eric` |
    | `George` |
    | `Jessica` |
    | `Laura` |
    | `Liam` |
    | `Lily` |
    | `Matilda` |
    | `Rachel` |
    | `River` |
    | `Roger` |
    | `Sarah` |
    | `Will` |

    #### Gemini 3.1 Flash TTS (`tts-gemini-3-1-flash`)

    | Voice ID |
    | - |
    | `Achernar` |
    | `Achird` |
    | `Algenib` |
    | `Algieba` |
    | `Alnilam` |
    | `Aoede` |
    | `Autonoe` |
    | `Callirrhoe` |
    | `Charon` |
    | `Despina` |
    | `Enceladus` |
    | `Erinome` |
    | `Fenrir` |
    | `Gacrux` |
    | `Iapetus` |
    | `Kore` |
    | `Laomedeia` |
    | `Leda` |
    | `Orus` |
    | `Puck` |
    | `Pulcherrima` |
    | `Rasalgethi` |
    | `Sadachbia` |
    | `Sadaltager` |
    | `Schedar` |
    | `Sulafat` |
    | `Umbriel` |
    | `Vindemiatrix` |
    | `Zephyr` |
    | `Zubenelgenubi` |

    #### Gradium TTS (`tts-gradium-v1`)

    | Voice ID |
    | - |
    | `Alice` |
    | `Davi` |
    | `Elise` |
    | `Emma` |
    | `Eva` |
    | `Jack` |
    | `Kent` |
    | `Leo` |
    | `Maximilian` |
    | `Mia` |
    | `Sergio` |
    | `Valentina` |

    #### Inworld TTS-1.5 Max (`tts-inworld-1-5-max`)

    | Voice ID |
    | - |
    | `Alex` |
    | `Ashley` |
    | `Craig` |
    | `Edward` |
    | `Elizabeth` |
    | `Hades` |
    | `Luna` |
    | `Mark` |
    | `Olivia` |
    | `Pixie` |
    | `Priya` |
    | `Ronald` |
    | `Sarah` |
    | `Theodore` |

    #### Kokoro Text to Speech (`tts-kokoro`)

    | Voice ID |
    | - |
    | `af_alloy` |
    | `af_aoede` |
    | `af_bella` |
    | `af_heart` |
    | `af_jadzia` |
    | `af_jessica` |
    | `af_kore` |
    | `af_nicole` |
    | `af_nova` |
    | `af_river` |
    | `af_sarah` |
    | `af_sky` |
    | `am_adam` |
    | `am_echo` |
    | `am_eric` |
    | `am_fenrir` |
    | `am_liam` |
    | `am_michael` |
    | `am_onyx` |
    | `am_puck` |
    | `am_santa` |
    | `bf_alice` |
    | `bf_emma` |
    | `bf_lily` |
    | `bm_daniel` |
    | `bm_fable` |
    | `bm_george` |
    | `bm_lewis` |
    | `ef_dora` |
    | `em_alex` |
    | `em_santa` |
    | `ff_siwis` |
    | `hf_alpha` |
    | `hf_beta` |
    | `hm_omega` |
    | `hm_psi` |
    | `if_sara` |
    | `im_nicola` |
    | `jf_alpha` |
    | `jf_gongitsune` |
    | `jf_nezumi` |
    | `jf_tebukuro` |
    | `jm_kumo` |
    | `pf_dora` |
    | `pm_alex` |
    | `pm_santa` |
    | `zf_xiaobei` |
    | `zf_xiaoni` |
    | `zf_xiaoxiao` |
    | `zf_xiaoyi` |
    | `zm_yunjian` |
    | `zm_yunxi` |
    | `zm_yunxia` |
    | `zm_yunyang` |

    #### MiniMax Speech-02 HD (`tts-minimax-speech-02-hd`)

    | Voice ID |
    | - |
    | `CalmWoman` |
    | `CasualGuy` |
    | `DeepVoiceMan` |
    | `DeterminedMan` |
    | `ElegantMan` |
    | `ExuberantGirl` |
    | `FriendlyPerson` |
    | `ImposingManner` |
    | `InspirationalGirl` |
    | `LivelyGirl` |
    | `LovelyGirl` |
    | `PatientMan` |
    | `SweetGirl` |
    | `WiseWoman` |
    | `YoungKnight` |

    #### Orpheus TTS (`tts-orpheus`)

    | Voice ID |
    | - |
    | `dan` |
    | `jess` |
    | `leah` |
    | `leo` |
    | `mia` |
    | `tara` |
    | `zac` |
    | `zoe` |

    #### Qwen 3 TTS 0.6B (`tts-qwen3-0-6b`)

    | Voice ID |
    | - |
    | `Aiden` |
    | `Dylan` |
    | `Eric` |
    | `Ono_Anna` |
    | `Ryan` |
    | `Serena` |
    | `Sohee` |
    | `Uncle_Fu` |
    | `Vivian` |

    #### Qwen 3 TTS 1.7B (`tts-qwen3-1-7b`)

    | Voice ID |
    | - |
    | `Aiden` |
    | `Dylan` |
    | `Eric` |
    | `Ono_Anna` |
    | `Ryan` |
    | `Serena` |
    | `Sohee` |
    | `Uncle_Fu` |
    | `Vivian` |

    #### xAI TTS v1 (`tts-xai-v1`)

    | Voice ID |
    | - |
    | `altair` |
    | `ara` |
    | `atlas` |
    | `carina` |
    | `castor` |
    | `celeste` |
    | `cosmo` |
    | `eve` |
    | `helios` |
    | `helix` |
    | `iris` |
    | `kepler` |
    | `leo` |
    | `lumen` |
    | `luna` |
    | `lux` |
    | `naksh` |
    | `orion` |
    | `perseus` |
    | `rex` |
    | `rigel` |
    | `sal` |
    | `sirius` |
    | `ursa` |
    | `zagan` |
    | `zenith` |
  </div>

  <Note>
    Voice IDs are case-sensitive and **only valid for the matching `model`**. Pass
    both fields together in your request payload. See the
    [Audio Speech API](/api-reference/endpoint/audio/speech) for examples.
  </Note>

  ### Example request

  ```bash theme={null}
  curl https://api.venice.ai/api/v1/audio/speech \
    -H "Authorization: Bearer $VENICE_API_KEY" \
    -H "Content-Type: application/json" \
    -d '{
      "model": "tts-kokoro",
      "voice": "af_sky",
      "input": "Hello from Venice."
    }' \
    --output speech.mp3
  ```

  To switch models, change **both** `model` and `voice` to a pair from the
  selected model above.
</div>


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.