Kokoro duikt steeds weer op — het stond bovenaan op Hacker News, voert open tekst-naar-spraak ranglijsten aan, en creators blijven vragen of een model met 82 miljoen parameters dat op een gewone CPU draait echt een betaalde Stem-API kan vervangen. Dus installeerden we het, draaiden het op een laptop en genereerden de samples die je hieronder kunt afspelen. Dit is een hands-on teardown: wat Kokoro is, hoe goed het echt klinkt, de twee setup-valkuilen die ons tijd kostten, en wanneer een gehoste tool de betere keuze is. Bron: github.com/hexgrad/kokoro (Apache-2.0).

Wat is Kokoro, en wie heeft het gemaakt?

Kokoro is een open-weight tekst-naar-spraak model dat door hexgrad is gepubliceerd als Kokoro-82M. De kop staat al in de naam: 82 miljoen parameters — piepklein naar de maatstaven van 2026, klein genoeg om op een telefoon te draaien — en toch levert het natuurlijke, expressieve narratie. Het is gebouwd op de StyleTTS 2-lijn en uitgebracht onder de permissieve Apache-2.0-licentie, dus het is echt gratis voor commercieel gebruik.

Per 2026-07-11 heeft de hoofdrepo hexgrad/kokoro ongeveer 7.900 GitHub-sterren. Wij hebben het gedraaid via de community-ONNX-runtime thewh1teagle/kokoro-onnx (ongeveer 2.600 sterren, MIT), wat de makkelijkste manier is om het op een CPU te draaien zonder PyTorch-installatie.

Toen we in het daadwerkelijke weights-bestand keken, telden we 54 ingebouwde stemmen verdeeld over 9 taal- en accentgroepen — Amerikaans en Brits Engels, Spaans, Frans, Hindi, Italiaans, Japans, Braziliaans-Portugees en Mandarijns Chinees. De Amerikaans-Engelse stemmen zijn duidelijk het meest verfijnd.

We hebben het echt gedraaid (Apple M3 Pro, alleen CPU)

Geen GPU, geen cloud — alleen een MacBook Pro met een M3 Pro en 18 GB RAM. Hier is het eerlijke stap-voor-stap verslag.

Installatie en weights

Het Python-package installeert in enkele seconden: pip install kokoro-onnx soundfile. Maar hier is de eerste valkuil — het pip-package levert de code, niet het model. Je moet twee bestanden handmatig downloaden vanaf de kokoro-onnx GitHub releases-pagina: kokoro-v1.0.onnx (310 MB) en voices-v1.0.bin (27 MB). De quickstart gaat hier snel overheen, waardoor een eerste run faalt met een missing-file error totdat je de weights hebt binnengehaald.

De espeak-ng pad-bug (die ons echt tijd kostte)

Kokoro zet tekst om naar fonemen met espeak-ng. Bij de allereerste synthese liepen we hiertegenaan:

Error processing file '/Users/runner/work/espeakng-loader/.../espeak-ng-data/phontab': No such file or directory

Dat pad /Users/runner/work/ is een duidelijke aanwijzing: de pip espeakng-loader wheel bundelt een libespeak-ng die in CI is gecompileerd met een hard-coded datapad dat niet op jouw machine bestaat. Het frustrerende is: een ESPEAK_DATA_PATH environment variable instellen doet niets, omdat kokoro-onnx die nooit leest — het pakt het datapad rechtstreeks uit de gebundelde loader.

De fix die werkte: installeer een echte systeem-espeak-ng en wijs Kokoro er expliciet naar via zijn EspeakConfig:

brew install espeak-ng   # macOS; apt install espeak-ng on Linux

from kokoro_onnx import Kokoro, EspeakConfig
cfg = EspeakConfig(
    lib_path="/opt/homebrew/lib/libespeak-ng.dylib",
    data_path="/opt/homebrew/share/espeak-ng-data",
)
k = Kokoro("kokoro-v1.0.onnx", "voices-v1.0.bin", espeak_config=cfg)

Daarna werkt genereren gewoon. Als je ooit precies deze phontab: No such file-fout hebt uitgevochten, dan is dit de oplossing.

Snelheid (gemeten, warm)

Alleen op CPU laadt het model in ongeveer 1.7 seconden, en synthese is ruim sneller dan real-time. Een narratieparagraaf van 22 seconden werd gerenderd in 3.5 seconden — een real-time factor van ongeveer 0.16×, grofweg zes keer sneller dan afspelen. Korte losse zinnen komen in één tot twee seconden terug. Voor een model dat zo klein is op een laptop is dat echt productiegeschikte throughput. Hier is de daadwerkelijke waveform van die paragraaf-render:

Waveform van een narratieparagraaf van 22 seconden die we met Kokoro op een M3 Pro-CPU hebben gegenereerd

Samples die we hebben gegenereerd (onbewerkt)

Elke clip hieronder is door ons geproduceerd met Kokoro op de hierboven beschreven M3 Pro-CPU — ruwe modeloutput, geen opschoning, geen post-processing. Speel ze af en beoordeel de kwaliteit zelf.

af_sarah — Amerikaans Engels
am_michael — Amerikaans Engels
bf_emma — Brits Engels
Langere narratie (af_sarah, 22 seconden) — de paragraaf die we hierboven hebben gebenchmarkt

Gegenereerd door VisionStory met Kokoro-82M via kokoro-onnx, 2026-07-11. Let op de duidelijke aanwijzing: dit is een schone stemtrack — maar het is alleen een stem. Er is geen gezicht, geen lipbeweging, geen presentator in beeld. Dat gat is precies het punt van de volgende sectie.

Eerlijk oordeel: sterke punten en echte beperkingen

Wat ons echt indruk maakte:

  • Kwaliteit per byte is indrukwekkend. Voor 82 miljoen parameters zijn de Amerikaans-Engelse stemmen natuurlijk en expressief — dicht genoeg bij betaalde TTS dat de meeste luisteraars het in een korte clip niet zouden opmerken.
  • Het draait echt op een CPU, en snel. Zes keer real-time op een laptop zonder GPU is de headline-feature, en dat klopt.
  • Echt gratis en commercieel vriendelijk. Apache-2.0 zonder facturering per teken. Voor voice-over op grote schaal is dat economisch moeilijk te verslaan.

Waar het tekortschiet — en dit zijn echte punten:

  • Geen stemklonen. Je krijgt 54 vaste preset-stemmen. Je kunt je eigen stem of de stem van een klant niet klonen — als dat je use case is, is Kokoro een doodlopende weg.
  • De Engelse kwaliteit hangt af van espeak-ng, wat betekent: de packaging-bug hierboven, plus af en toe een verkeerd uitgesproken naam, merk of afkorting.
  • Lange tekst vraagt om handmatig chunken. Er zit een limiet op de foneemlengte per call, dus je moet lange scripts zelf opsplitsen en de audio aan elkaar plakken.
  • Niet-Engelse stemmen zijn hit or miss — merkbaar wisselvalliger dan de flagship-set in Amerikaans Engels.
  • Het levert alleen een kale WAV op. Geen word timestamps, geen visemes — niets om lip-sync out-of-the-box aan te sturen.
  • Het is alleen stem. Geen gezicht, geen video. Om een pratende presentator te krijgen moet je Kokoro koppelen aan een apart lip-sync- of avatarsysteem en zelf de timing afhandelen.

Zelf hosten van Kokoro vs een gehoste tool: wat kies je?

Kokoro en een gehoste avatartool lossen verschillende helften van het probleem op. Kokoro geeft je een stem; een tool zoals VisionStory geeft je een pratende presentator — stem, gezicht en lip-sync in één output. Hier is de eerlijke afweging.

 Kokoro (self-host)VisionStory (gehost)
KostenGratis (je eigen hardware)Abonnement / credits
Setuppip + 330 MB weights + espeak-ng fixGeen — draait in de browser
Wat je krijgtAlleen een stemtrack (WAV)Pratende avatarvideo (stem + gezicht + lip-sync)
StemklonenNee — 54 presetsJa — kloon je eigen stem
Snelheid per clip~0.16× real-time op CPU (seconden)Seconden, gehost — geen lokale compute
Commercieel gebruikJa (Apache-2.0)Ja (per plan)
OnderhoudJe patcht espeak, deps, chunkingGeen
Beste wanneerJe alleen een gratis stemtrack nodig hebt en kunt coderenJe snel een afgewerkte pratende video nodig hebt

Kies Kokoro als je alleen een gratis voice-over nodig hebt, je je prettig voelt met Python, en je gezicht en lip-sync apart afhandelt (of je helemaal geen gezicht nodig hebt). Kies een gehoste tool als je de stem gekoppeld wilt aan een presentator die lip-synct, of je een specifieke stem van iemand wilt klonen — Kokoro kan geen van beide.

Wat Kokoro ons leerde

De echte les van het draaien van Kokoro is dat stem een commodity wordt. Een model van 82 MB op een laptop produceert nu voice-overs die goed genoeg zijn voor echt werk, gratis. Als de enige claim van je product was: "wij doen tekst-naar-spraak", dan is die moat weg.

Het moeilijke, nog steeds niet opgeloste deel is alles na de stem: een audiotrack omzetten in een geloofwaardig pratend gezicht — nauwkeurige lip-sync, expressie, hoofdbeweging en timing die allemaal kloppen. Precies aan die laag werken wij. Dus onze conclusie is niet: "gebruik Kokoro niet" — het is een oprecht goede stem-engine. Het is dat een stem op zichzelf maar een halve video is. Als je de andere helft wilt, zet VisionStory in één stap een foto en een script om in een lip-gesynchroniseerde pratende presentator, en als je een specifieke stem wilt matchen, kan het die ook klonen.

Veelgestelde vragen

  • Is Kokoro TTS gratis voor commercieel gebruik?

    Ja. Kokoro is uitgebracht onder de Apache-2.0-licentie, die commercieel gebruik toestaat, en er is geen facturatie per teken. Je betaalt alleen voor je eigen rekenkracht, wat gewoon een CPU kan zijn.

  • Kan Kokoro op een Mac draaien of zonder GPU?

  • Kan Kokoro mijn eigen stem klonen?

  • Kan Kokoro een pratende avatarvideo maken?

  • Hoe los ik de Kokoro espeak-ng phontab ‘No such file’-fout op?