Kokoro
An 82M-parameter open-weight-tts model from Hexgrad (v1.0, Jan 2025) — the field’s efficiency leader. Apache-2.0 licensed.
Why it matters
- Tiny + cheap: at 82M it runs on minimal hardware for <$1 / 1M characters self-hosted ($0.7/1M on tts-arena-leaderboard, 2026-08-03) — the budget/on-device default.
- Punches above its size: ~4.5 MOS naturalness and Elo 1055 (2026-08-03; 1064 in June) despite being ~60× smaller than fish-audio-s2-pro tts-models-2026-benchmark.
- Architecture: StyleTTS2 + ISTFTNet — no diffusion, which is part of why it’s fast.
Downstream (added 2026-08-04)
abogen builds audiobooks on Kokoro, and inherits this page’s tradeoff wholesale — no cloning, so it offers a voice mixer over the 54 presets instead. Useful confirmation that the efficiency-vs- controllability split below is not just a benchmark artifact: it propagates into what applications built on the model can offer their users.
The tradeoff
No voice-cloning — it ships 54 preset voices across 8 languages. The capability dropped to hit the footprint, making Kokoro the clean example of the efficiency-vs-controllability split in open-weight-tts. CER ~17% (Trelis) is higher than the heavyweight models — quality-per-byte is its pitch, not absolute accuracy.
Dispute resolved against the model card (2026-08-03)
free-voice-clone-list‘s comparison table marked Kokoro-82M as having zero-shot cloning, against
tts-models-2026-benchmark and open-source-tts-models. Checked directly at
huggingface.co/hexgrad/Kokoro-82M, the primary source neither side had consulted.
The model card states it does not support voice cloning; voices are chosen at inference from
preset voicepacks. The repository settles it structurally: the voices/ directory holds exactly
54 .pt voicepack tensors, and a voice is loaded by picking one of those files. There is no
reference-audio path, because a voicepack is the speaker representation. Apache-2.0, base model
yl4579/StyleTTS2-LJSpeech — which also confirms the StyleTTS2 lineage noted above.
So the roundups were right and the catalogue’s checkbox is wrong. Recorded rather than deleted: this is the one case in the corpus where a disputed claim got checked against the primary, and the unmethodical source is the one that failed.
A correction to this page in the same check. It previously read “~15 languages.” The card says
8, and the voicepack filenames agree — 9 language prefixes (a American English, b British
English, e Spanish, f French, h Hindi, i Italian, j Japanese, p Portuguese, z Mandarin),
which is 8 languages once the two English variants are counted once. The old figure came from no
source cited here and appears to have been wrong since June.
Related
open-weight-tts · text-to-speech · tts-benchmarks · voice-cloning · fish-audio-s2-pro · open-source-tts-models · tts-models-2026-benchmark · free-voice-clone-list · kittentts · supertonic-2