EchoraEchora
Back to Models

Kokoro TTS: Proof That a TTS Model Doesn't Need a GPU to Sound Good

August 27, 2026
7 min read

Turn text and recordings into audio you can hear

Dubbing, stems, covers, and sound effects — all in the browser.

  • Text to speech, plus voice cloning
  • Split stems, or generate a cover
  • Sign up to preview — listen first, decide later
Start creating for free

Most open-source voice models assume you have a GPU sitting idle. Kokoro doesn't make that assumption — at 82 million parameters, it's small enough to run comfortably on a CPU, including a years-old laptop, and it still climbed to the top of the Hugging Face TTS Arena leaderboard against models many times its size. If your project needs natural-sounding speech without provisioning GPU infrastructure, this is the model built for that constraint.

What Is Kokoro?

Kokoro-82M is an open-weight text-to-speech model released by developer hexgrad under the Apache 2.0 license — meaning it's free for commercial use, modification, and self-hosting, with no royalties and no restrictions on closed-source deployment. It's built on a decoder-only architecture combining StyleTTS 2 and ISTFTNet, and despite weighing in at roughly 327MB, it produces clean 24kHz audio that's held its own against models several times larger since its v1.0 release.

The name itself is Japanese for "heart" or "spirit" — a nod to the project's goal of getting genuinely expressive speech out of a model small enough to run anywhere.

Small Model, Real Capability

Kokoro's headline number is 82 million parameters, but the more useful numbers are what that size buys you:

  • 54 voices across 8 languages — including American and British English, French, Japanese, Korean, and Mandarin — all shipped in a single ~327MB weight file rather than separate downloads per language.
  • CPU-native performance. Kokoro runs at real-time or faster speeds on ordinary CPU hardware, and under 2GB of VRAM if you do have a GPU available — a fraction of what comparable-quality models typically require.
  • 510-token generation window per pass, enough for substantial chunks of narration without needing to stream token-by-token.
  • ONNX support for near-real-time performance even on constrained hardware like Apple Silicon, via the community kokoro-onnx package.

The trade-off for that footprint is worth knowing upfront: Kokoro doesn't support zero-shot voice cloning, its emotional range is narrower than larger expressive models, and quality on non-English languages is generally less refined than its English output. It's optimized for efficient, reliable narration — not dramatic performance or instant voice cloning.

Getting Started with Kokoro

  1. Install the system dependency first. Kokoro relies on espeak-ng for phonemization — install it via your system package manager (apt-get install espeak-ng on Debian/Ubuntu) before installing the Python package, or setup will fail silently on text-to-phoneme conversion.
  2. Install the Kokoro package. pip install kokoro soundfile covers the core dependencies; add misaki[ja] or misaki[zh] if you need Japanese or Chinese language support specifically.
  3. Initialize a pipeline and generate. Load KPipeline with a language code ('a' for American English, 'b' for British English, and so on), pass your text and a voice name like af_heart or bm_george, and Kokoro returns audio directly — typically five lines of Python from install to a .wav file.
  4. Consider the ONNX or Docker path for production. For CPU-only environments or simpler deployment, the community-maintained kokoro-onnx package or the kokoro-fastapi Docker image (which exposes an OpenAI-compatible speech endpoint) are faster paths to a running service than wiring up the raw pipeline yourself.
  5. Test your target hardware early. Kokoro is genuinely usable on hardware as modest as a decade-old CPU, but confirming acceptable latency on your actual deployment target before committing to it avoids surprises later.

Tips for Better Results

  • Watch for isolated single-word inputs. Kokoro's phonemizer is tuned for natural sentence context — a single word or number in isolation (like "six" on its own) can occasionally come out mispronounced or oddly emphasized. Feeding full sentences rather than fragments avoids this.
  • Chunk long-form content. For book-length or article-length narration, split text into paragraph- or chapter-sized chunks rather than one massive input — this keeps generation predictable and avoids exceeding the per-pass token window.
  • Pick voices deliberately, not by default. With 54 voices available, testing two or three candidates against your actual script content is worth the extra few minutes — voice quality varies noticeably by name, and the best fit isn't always the first one you try.
  • Don't expect zero-shot cloning. If your project's core requirement is cloning a specific person's voice, Kokoro isn't the right base model — pair it with a cloning-focused model instead, or reserve Kokoro for narration where a fixed voice roster is fine.
  • Use the OpenAI-compatible API wrapper if you're replacing a cloud TTS vendor. kokoro-fastapi is built specifically to be a drop-in local replacement for OpenAI-style TTS API calls, which minimizes changes to existing integration code.

Kokoro vs. Other Lightweight and Cloning-Focused Models

Kokoro-82MChatterbox TurboChatterbox / Dia
Parameters82M350M500M–1.6B
Runs on CPUYes, nativelyGPU-orientedGPU-oriented
Voice cloningNoYes, zero-shotYes
Languages8EnglishEnglish (Multilingual: 23)
Best fitOffline narration, edge devices, cost-sensitive deploymentReal-time voice agentsExpressive dialogue, cloned voices
LicenseApache 2.0MITApache 2.0 / MIT

Kokoro isn't trying to compete on cloning or emotional range — its entire value proposition is doing solid, reliable TTS on hardware that other models simply can't run on. If cloning or dramatic expressiveness is the priority, a larger model is the better fit; if the priority is "runs cheaply, everywhere, forever," Kokoro is hard to beat.

Frequently Asked Questions

Can Kokoro really run without a GPU? Yes. Kokoro is specifically built to run efficiently on CPU hardware, including older machines, at real-time or near-real-time speed — a GPU is optional, not required.

Does Kokoro support voice cloning? No. Kokoro ships with a fixed set of 54 built-in voices rather than zero-shot cloning from a reference clip. For cloning use cases, a model like Chatterbox is a better fit.

What languages does Kokoro support? Eight, including American English, British English, French, Japanese, Korean, and Mandarin, with English generally offering the most refined output quality.

Is Kokoro free for commercial use? Yes. It's released under the Apache 2.0 license, which permits commercial deployment, modification, and closed-source integration without royalties.

How much does it cost to run Kokoro at scale? Self-hosted, Kokoro is inexpensive to run — community reports put costs as low as a few cents per hour on budget GPU instances, and API providers have offered it at under $1 per million characters of input text.

Try a Comparable Text-to-Speech Feature

Kokoro is available through its open-source implementation and community tools. If you want to create speech in the browser, try Text to Speech as a comparable feature. It is not Kokoro and does not provide its model-specific voices, runtime profile, or self-hosting options, but it lets you create AI voice audio without setting up the model locally.

Explore Text to Speech →