GPU guide

Open-source text-to-speech models compared: licence, VRAM and what each is for

Kokoro, Chatterbox, VibeVoice, Qwen3-TTS, F5-TTS, XTTS, Fish Audio and Orpheus compared: licences, voice cloning, streaming and GPU needs.

Faiz Ahmed12 min read

The open text-to-speech model I would start with is Kokoro: 82M parameters, Apache-2.0, 54 preset voices in 8 languages, and small enough to run on a CPU. For cloning a voice under a licence that allows commercial use, I would pick Qwen3-TTS or VoxCPM2, both Apache-2.0. The licence is where most comparisons go wrong. F5-TTS, OmniVoice and Coqui's XTTS-v2 are non-commercial, Fish Audio's Drama 3 is free only below USD 500,000 in annual revenue, Microsoft's model cards limit VibeVoice to research although its licence is MIT, and Chatterbox is retired. None of these needs a 48 GB card to speak. A big card earns its place for batch synthesis, for the largest models and for serving many requests at once.

The open TTS models, compared#

I checked every row on the model card, licence file or repository on 2026-11-12, and chose the models from what people search for and what Hugging Face lists as most downloaded.

Model and makerParametersLicenceCommercial useLanguagesVoice cloningStreamingMemory the maker statesLatest release
Kokoro-82M, hexgrad82MApache-2.0Yes8, with 54 preset voicesNoAudio comes out text chunk by chunkNone. Its library falls back to the CPUv1.0, January 2025
Chatterbox, Resemble AITurbo 350M, Multilingual V3 500M, Nano 110MMITYesTurbo English, Multilingual V3 23Yes, from a reference clipNot documentedNano: 3x faster than real time on 8 CPU coresMultilingual V3 and Nano in 2026. Retired in August 2026
VibeVoice-Realtime-0.5B, Microsoft0.5BMIT, with research use only on the model cardNot recommended by MicrosoftEnglish, plus 9 experimentalNo: built-in voices onlyYes, about 300 ms to first audioReal time on an NVIDIA T4December 2025
VibeVoice-1.5B, Microsoft1.5B language modelMIT, with research use only on the model cardNot recommended by MicrosoftEnglish and ChineseFrom voice promptsNoNoneAugust 2025. Inference code removed
Qwen3-TTS, Qwen0.6B and 1.7BApache-2.0Yes10Yes, from 3 seconds of audioYes, 97 ms latencyNoneJanuary 2026
VoxCPM2, OpenBMB2BApache-2.0Yes30Yes, plus voices designed from a descriptionYesAbout 8 GB of VRAMApril 2026
Fun-CosyVoice 3, FunAudioLLM0.5BApache-2.0Yes9, plus 18 Chinese dialectsYes, across languagesYes, about 150 msNoneDecember 2025
Orpheus TTS, Canopy Labs3B, fine-tuned from Llama 3.2 3BApache-2.0 on the card, plus Meta's Llama 3.2 termsYes, on Llama's termsEnglish, plus a multilingual research previewPartly: the pretrained model follows example voices in the promptYes, about 200 msNone. A llama.cpp route runs without a GPUMarch 2025
Fish Audio Drama 335B, 3B active per tokenFish Audio Community License 1.0Only below USD 500,000 annual revenue, and never as a hosted speech service without a separate licence83 taggedYes, up to 16 speakers per textYes, per chunkNone. Fish Audio's figures come from H200 GPUsOctober 2026
Higgs TTS 3, Boson AI4.7BBoson Higgs TTS 3 Research and Non-Commercial LicenseOnly creators' own content, with credit100+YesYesNone. Benchmarked on one H100June 2026
F5-TTS, SWivid337MCode MIT, weights CC-BY-NC-4.0NoEnglish and ChineseYes, from a clip and its transcriptNot documentedNonev1 Base, March 2025
OmniVoice, k2-fsa0.6BCode Apache-2.0, weights CC-BY-NCNo600+Yes, plus voice designNot documentedNoneMarch 2026
XTTS-v2, CoquiNot statedCoqui Public Model License 1.0.0No, for the model or its output17Yes, from a 6-second clipYes, under 200 ms in the maintained forkNoneDecember 2023

F5-TTS's parameter count is ours, read from its checkpoint, and Higgs TTS 3's comes from Hugging Face's count of its weights. Everything else is the maker's own figure. "Coqui TTS" usually means the library rather than a model. The original repository has had no release since December 2023 and no commit since February 2024, and its maintained fork, idiap's coqui-tts, version 0.28.0 of October 2026 under MPL-2.0, describes it as unmaintained. The library is free to use commercially, while the XTTS-v2 weights it is best known for are not.

What each licence allows#

The licence decides more than the voice quality, because a voice that is free for a hobby project can be off-limits for your company.

LicenceModelsWhat it allows
Apache-2.0 or MITKokoro, Qwen3-TTS, VoxCPM2, Fun-CosyVoice 3, ChatterboxCommercial use, changes and redistribution, keeping the licence notice. Chatterbox adds an imperceptible PerTh watermark to every output
MIT, with a research-only statementVibeVoiceThe licence is MIT, but both model cards limit the intended use to research, and Microsoft writes that it does "not recommend using VibeVoice in commercial or real-world applications". VibeVoice-1.5B also embeds an audible AI disclaimer and a watermark in every file
Apache-2.0 plus Llama 3.2 termsOrpheusCommercial use, though the Apache-2.0 is only a tag on Canopy Labs' model card, with no licence file beside the weights. As a fine-tune of Llama 3.2 3B it also carries Meta's Llama 3.2 licence: if you distribute it or a product that contains it, ship a copy of that licence and display "Built with Llama", and above 700 million monthly active users ask Meta for a licence
Fish Audio Community License 1.0Drama 3Free for research and non-commercial use. Commercial use only while your company, with its affiliates, has annual revenue under USD 500,000. No hosted text-to-speech or voice-cloning service at any revenue without a separate licence. No imitating a real person's voice without consent
Boson Higgs TTS 3 Research and Non-Commercial LicenseHiggs TTS 3Research and non-commercial use, plus a Creator Use Grant that lets creators monetize podcasts, videos, audiobooks and posts they publish on their own channels, if they credit Boson AI's Higgs Audio. Hosting the model for others, redistributing it and building it into a product need a commercial licence
CC-BY-NCF5-TTS and OmniVoice weightsNon-commercial use only. Both makers say the cause is their training data, the in-the-wild Emilia dataset
Coqui Public Model License 1.0.0XTTS-v2In its own words, "only non-commercial use of a machine learning model and its outputs", so generated audio cannot be sold either. The licence names no way to buy a commercial licence, and its link on the model card, coqui.ai/cpml, returned a 404 on 2026-11-12, like the rest of coqui.ai

Fish Audio's older open models carry stricter terms than Drama 3: S2 Pro, from March 2026, is under the Fish Audio Research License, which grants no commercial rights, and the earlier OpenAudio S1-mini and Fish Speech 1.5 are CC-BY-NC-SA-4.0. VibeVoice's history is the other caution. Microsoft removed the VibeVoice-TTS inference code from its repository in September 2025, citing use inconsistent with its stated intent, and disabled the Large model, so the 1.5B weights still on Hugging Face no longer come with Microsoft's own code to run them. Treat this table as a summary and read each licence before you build a product on a voice.

Which model for which job#

The rule I follow is to settle the licence first, then pick on features, and only then on quality, which you can only judge on your own text.

JobModel I would start withWhy
A product with fixed voicesKokoroApache-2.0, 82M parameters, and it runs on a CPU as well as a GPU
Commercial voice cloning in several languagesQwen3-TTS, or VoxCPM2 for 30 languagesApache-2.0, cloning from seconds of audio, and streaming
A real-time voice agentQwen3-TTS or Fun-CosyVoice 3Both stream, at 97 ms and about 150 ms by their makers' figures, under Apache-2.0
Long-form audio: audiobooks, drama, podcastsDrama 3, if your company is under its revenue limit and you are not offering speech as a service, or Higgs TTS 3 for your own monetized contentDrama 3 takes up to 16 speakers in one text. Higgs TTS 3's Creator Use Grant covers podcasts, videos and audiobooks you publish on your own channels. Check the licence rows above first
Research and evaluationF5-TTS, OmniVoice for rare languages, VibeVoiceModels whose licences or makers rule out commercial use
No GPU at allKokoro, or Chatterbox NanoKokoro falls back to the CPU, and Resemble AI rates Nano at 3x real time on 8 cores

For speech going the other way, transcribing audio with Whisper covers speech-to-text on the same GPUs.

When a 48 GB card earns its place#

The honest answer is that most of these models do not need a big GPU, and several run on a CPU. Kokoro's weights are 0.33 GB, VoxCPM2's maker asks for about 8 GB of VRAM, and Microsoft reports real-time speech from VibeVoice-Realtime on an NVIDIA T4. Every QuantaCloud GPU has at least 48 GB, so a single voice on a single request uses a small slice of the card. Three jobs use the rest.

JobWhy the memory matters
Batch synthesisAn audiobook's chapters or a catalogue of product videos can run as many requests at once, and each one needs its own working memory
The largest modelsDrama 3's weights are 41.47 GB, which is 38.63 GiB against a 48 GB card's 41.39 GiB budget (our calculation): the weights alone fit, with 2.8 GiB to spare, too little for a serving cache. Its int4 build is 22.33 GiB. On the 96 GB RTX PRO 6000 the full model leaves 49.3 GiB for its cache
Serving many requestsDrama 3 and Higgs TTS 3 run on serving engines, SGLang-Omni or vLLM-Omni, that batch requests. Fish Audio measured Drama 3 on one H200 at about 2.7 times faster than playback with 16 streams at once

The RTX A6000 is the card I would rent for everything except serving Drama 3 at scale, which belongs on the RTX PRO 6000 Blackwell.

GPUMemoryFromAvailable now
RTX A600048 GB$0.48/GPU-hrYes
L40S48 GB$1.09/GPU-hrYes
RTX PRO 6000 Blackwell96 GB$2.16/GPU-hrYes

Run Kokoro on a GPU VM#

The shortest recipe uses QuantaCloud's Bare Metal template, an Ubuntu 22.04 VM with the NVIDIA driver and Docker that you reach over SSH as ubuntu. Deploying a GPU walks through the launch and connecting over SSH the login.

Launch an RTX A6000 for text to speech
  1. Check the driver. The PyTorch build PyPI installs today uses CUDA 13.2, which needs driver 580 or newer:
Terminal
nvidia-smi --query-gpu=name,driver_version --format=csv
  1. Install espeak-ng, which Kokoro uses for words its dictionary does not know, and create a Python 3.12 environment with uv, because kokoro 0.9.4 supports Python 3.10 to 3.12:
Terminal
sudo apt-get update && sudo apt-get install -y espeak-ng
curl -LsSf https://astral.sh/uv/install.sh | sh
source $HOME/.local/bin/env
mkdir -p ~/tts && cd ~/tts
uv venv --python 3.12 --seed --managed-python
source .venv/bin/activate
  1. Install Kokoro. On a driver older than 580, first install PyTorch's CUDA 12.8 build, which runs on older drivers, with uv pip install torch --index-url https://download.pytorch.org/whl/cu128:
Terminal
uv pip install "kokoro>=0.9.4" soundfile
  1. Save this as speak.py. It reads a text file, speaks it in the af_heart American English voice and writes one WAV file:
Python
import sys

import soundfile as sf
import torch
from kokoro import KPipeline

pipeline = KPipeline(lang_code="a")  # "a" is American English, "b" British English
text = open(sys.argv[1], encoding="utf-8").read()
audio = torch.cat([chunk for _, _, chunk in pipeline(text, voice="af_heart")])
sf.write(sys.argv[2], audio.numpy(), 24000)
print(f"wrote {sys.argv[2]}: {len(audio) / 24000:.1f} seconds of audio")
  1. Run it, then copy the file to your own machine before you stop the instance, because Stop deletes the disk:
Terminal
python speak.py chapter1.txt chapter1.wav

Kokoro downloads its weights from Hugging Face on the first run. For cloning, give Qwen3-TTS a fresh environment of its own, as Qwen recommends, because qwen-tts pins its own transformers version: create a second venv the same way, run uv pip install -U qwen-tts in it, and take the code for each of its three model types from its model card. Checking the driver and CUDA version explains the nvidia-smi numbers, and moving files to and from a GPU server covers getting the audio off.

The official repositories#

Every model above, at its maker's own address:

Questions about open-source TTS#

What is the best open-source TTS model?

There is no single answer for every voice and language, so I choose on licence first. For commercial work that means Kokoro for fixed voices and Qwen3-TTS or VoxCPM2 for cloning, all Apache-2.0. Drama 3 handles long scripts with up to 16 speakers and Higgs TTS 3 is free for creators' own content, but read both licences before you rely on them.

Which open-source TTS models allow commercial use?

Kokoro, Qwen3-TTS, VoxCPM2 and Fun-CosyVoice 3 under Apache-2.0, Chatterbox under MIT, and Orpheus under Apache-2.0 with Meta's Llama 3.2 terms. Drama 3 allows it only below USD 500,000 in annual revenue. F5-TTS, OmniVoice and XTTS-v2 do not, and Microsoft's model cards limit VibeVoice to research, though its licence is MIT.

Can I clone a voice with open-source TTS?

Yes, with Qwen3-TTS, VoxCPM2, Fun-CosyVoice 3, Chatterbox, Drama 3, Higgs TTS 3, F5-TTS, OmniVoice and XTTS-v2, usually from a few seconds of reference audio. Fish Audio's licence and the Higgs and VibeVoice model cards all forbid imitating a real person without consent.

Does text-to-speech need a GPU?

Not always. Kokoro and Chatterbox Nano run on a CPU, and most of the others fit a small GPU. A large GPU pays for itself on batch jobs, on Drama 3, and when you serve many streams at once.


My decision rule for text to speech: Kokoro for fixed voices, Qwen3-TTS or VoxCPM2 when you need a cloned voice in a product, and Drama 3 on a 96 GB card only once its revenue limit and hosted-service clause fit your business. Run them on the smallest GPU on offer, copy the audio off before you stop, and the guides have the rest of the stack for a voice pipeline.

Launch an RTX A6000

Keep building

Choose your next step.