whatmodel.sh / tts / VITS (VCTK multi-speaker)

VITS (VCTK multi-speaker) is an open-weights text-to-speech model from Kakao Enterprise (Jaehyeon Kim et al.), released June 2021. Licence: mit.

Catalogue identity notes

jaywalnut310/vits official VCTK multi-speaker checkpoint (pretrained_vctk.pth), the landmark 2021 end-to-end VITS model. Distinct from the LJSpeech checkpoint and from Coqui/Piper VITS derivatives.

34.3±4.5#99 of 118 text-to-speech modelsfrom 3 benchmark results across 2 sources

Score within the Vapi Humanness · Bradley–Terry rating, 2026-09-25 snapshot comparison set only.

$ how it compares

The text-to-speech models ranked either side of VITS (VCTK multi-speaker), out of 148 with a score.

#modelscorewhereRAMreleased
122NeuTTS Air Neuphonic36±10local~4GB2025-10
123Eleven v4 Turbo ElevenLabs36±4api $40.00/M chars2026-09
124VITS (VCTK multi-speaker) Kakao Enterprise (Jaehyeon Kim et al.)34±5local~0.2GB2021-06
125Sesame CSM-1B Sesame34±5api $7.00/M chars +local~6.6GB2025-03
126VoiceCraft 830M (giga830M) Puyuan Peng et al. (UT Austin)32±4local~4.5GB2024-03

see all text-to-speech models · find the ones that fit your machine

$ what it's good at

other tests3 not in a task · 92% of its score
testresultvs the others in its rundifficultycountswhy
VITS 2021 VCTK human MOS lab4.38 / 5 ✎█····█·····█ beats 2/2very easy · avg 4.73 / 5▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇ 46%small run
EmergentTTS · 6-category preference8.5% ✎▅▅▃▃█▅▅▃·▃·▅ beats 0/16hard · avg 30%▇▇▇▇▇▇▇▇▇▇▇▇ 30%typical
EmergentTTS · 6-category WER27.5% ✎▂▄··▂▄▄··█▄▆ beats 2/16avg 16%▇▇▇▇▇▇ 15%blunt

$ where to run it

Other ways to run it

  1. Run it as published · needs ~0.16 GB, NVIDIA only · from github.com/jaywalnut310
    git clone https://github.com/jaywalnut310/vits && cd vits && pip install -r requirements.txt && apt-get install espeak && cd monotonic_align && python setup.py build_ext --inplace && cd .. && python -c "import torch, commons, utils; from models import SynthesizerTrn; from text.symbols import symbols; from text import text_to_sequence; from scipy.io.wavfile import write; hps = utils.get_hparams_from_file('./configs/vctk_base.json'); net_g = SynthesizerTrn(len(symbols), hps.data.filter_length // 2 + 1, hps.train.segment_size // hps.data.hop_length, n_speakers=hps.data.n_speakers, **hps.model).cuda(); _ = net_g.eval(); _ = utils.load_checkpoint('/path/to/pretrained_vctk.pth', net_g, None); text_norm = text_to_sequence('VITS is Awesome!', hps.data.text_cleaners); text_norm = commons.intersperse(text_norm, 0) if hps.data.add_blank else text_norm; stn_tst = torch.LongTensor(text_norm); torch.set_grad_enabled(False); x_tst = stn_tst.cuda().unsqueeze(0); x_tst_lengths = torch.LongTensor([stn_tst.size(0)]).cuda(); sid = torch.LongTensor([4]).cuda(); audio = net_g.infer(x_tst, x_tst_lengths, sid=sid, noise_scale=.667, noise_scale_w=0.8, length_scale=1)[0][0,0].data.cpu().float().numpy(); write('vctk.wav', hps.data.sampling_rate, audio)"

Weights and documentation: github.com/jaywalnut310 ↗

$ how the score was worked out · VITS: ICML 2021 original list… 46%, EmergentTTS-Eval six-category… 45%

Each result implies a score on its own, after adjusting for how hard its test is and who ran it. The score is their weighted average, with a small pull toward the middle for thinly tested models. Each test's weight is its counts column above; here it's added up by who ran the tests. How it works

sourceresultsshare of the scorelicence
VITS: ICML 2021 original listening studies · lab-reported1▇▇▇▇▇▇▇▇▇▇▇▇▇▇ 46%CC-BY-4.0
EmergentTTS-Eval six-category leaderboard2▇▇▇▇▇▇▇▇▇▇▇▇▇▇ 45%Apache-2.0
prior · pull toward the middle▇▇ 8%
weighted average= 34.3

$ improve this page

Use a short GitHub form or edit the data through a pull request. Every number needs a source; here's which ones we can use.

data updated · sources and licences · json