pocket-tts is a free, MIT-licensed text-to-speech model from Kyutai Labs that runs entirely on CPU with no GPU required. For any business currently paying ElevenLabs $99 to $299 per month to generate audio in automated workflows, this 100-million parameter model installed with a single pip command is the most direct cost argument that landed on GitHub trending this week.

pocket-tts, a free, MIT-licensed text-to-speech model from Kyutai Labs, runs entirely on CPU with no GPU required, and it installs with a single pip command. For any business currently paying ElevenLabs $99 per month for the Pro plan or $299 per month for the Scale plan to pipe narrated audio through automated workflows, this 100-million parameter model is a concrete reason to revisit that line item.

What the billing structure actually looks like

ElevenLabs charges by character volume. The Pro plan at $99 per month covers 600,000 characters. The Scale plan at $299 per month covers 1.8 million characters with three workspace seats. Beyond those limits, overage rates apply.

For a business generating audio programmatically, 600,000 characters goes faster than it sounds. A 1,000-word document is roughly 6,000 characters. A company running 100 such documents through a TTS pipeline per month, whether for training narrations, weekly report summaries, product demo voiceovers, or automated customer-facing audio, lands at 600,000 characters exactly. Any team doing more is already on Scale pricing or paying overages.

The per-character meter is the structural issue. It makes every automation decision cost-visible. A team considering whether to add audio output to a workflow has to calculate whether the volume justifies the additional character spend each month. pocket-tts removes that calculation entirely.

What pocket-tts actually does

The model generates speech from text, performs voice cloning from a WAV file, and streams audio with around 200 milliseconds of latency to the first chunk. It runs at approximately 6x real-time on a MacBook M4 CPU, meaning it produces 6 seconds of audio for every 1 second of computation. On a cloud server, performance varies by CPU, but the model is intentionally small at 100 million parameters, making it fast on commodity hardware.

It supports six languages: English, French, German, Portuguese, Italian, and Spanish. It ships with a catalog of pre-built voices and accepts any WAV file as a voice cloning prompt. The Python API is three lines to generate audio, and the repository includes a local web server mode for interactive use. A community-maintained variant adds an OpenAI-compatible streaming API endpoint, which means existing code written against ElevenLabs' or OpenAI's TTS interface can point to a self-hosted pocket-tts server with minimal changes.

Installation is pip install pocket-tts. Running it is pocket-tts generate. The model weights download automatically on first run.

This is from Kyutai Labs, the Paris-based AI research lab that built Moshi, one of the first real-time conversational speech models. The technical pedigree is real: the pocket-tts paper is on arXiv, the model weights are on Hugging Face, and the repository has reached v2.0.0 with 76 commits and active maintenance.

The practical cost math

The arithmetic is direct. ElevenLabs Pro at $99 per month is $1,188 per year for 600,000 characters monthly. Scale at $299 per month is $3,588 per year for 1.8 million characters monthly. Self-hosting pocket-tts on a $20-per-month VPS brings the annual TTS infrastructure cost to $240, with no character cap. The server cost is the same whether the pipeline generates 600,000 characters or 6 million.

The tradeoff is setup time and ongoing maintenance. Deploying pocket-tts requires a server, a Python environment, and a one-time configuration of the model and any voice profiles. For a team with no one comfortable managing a Linux process, that is a real barrier. For a team that already maintains any server infrastructure, adding pocket-tts is a weekend afternoon, not a project.

Where it falls short

Voice quality is the primary caveat. ElevenLabs has spent years on prosody, emotional range, and naturalness. Their premium voices are genuinely difficult to distinguish from a human recording in a controlled listening environment. pocket-tts produces high-quality, intelligible speech that passes comfortably for automated narration. It does not produce the emotionally nuanced, studio-quality output that justifies using ElevenLabs for premium content intended to stand alone as audio, such as a podcast someone would actively choose to listen to.

Language support is limited to six languages. If your TTS pipeline serves a market beyond that set, pocket-tts does not yet cover it.

The model is currently fixed at a batch size of 1 and does not benefit from GPU acceleration. It means throughput scales by running multiple CPU instances in parallel. For very high-volume pipelines generating thousands of audio files per hour, you are adding server instances, not switching to a GPU, and the economics still favor self-hosting over ElevenLabs at that scale.

There is no SSML support yet. If your narration workflow requires precise control over pauses, emphasis, or pronunciation of specific terms, that capability is not present. Two open GitHub issues track quantization support and pause insertion.

Hosting also means owning reliability. ElevenLabs handles uptime, updates, and redundancy. pocket-tts on your server goes down when your server goes down, and updates require you to run them.

Who this is for

The businesses with the clearest case for pocket-tts are those already running TTS as an internal pipeline rather than a customer-facing voice experience. Training video narrations, weekly report summaries read aloud and emailed, automated system notifications spoken to internal users, IVR scripts that change monthly, documentation rendered as audio for accessibility, these are the workflows where the character count piles up and the quality bar is practical rather than premium.

A company paying $299 per month for Scale primarily because of pipeline volume, not because of the voice creation studio features, is paying for infrastructure it can replace. That is the calculation pocket-tts forces.

The businesses that should stay on ElevenLabs are those whose audio output is the product: the podcast, the branded voice assistant, the premium customer experience where voice quality is part of what the customer is paying for. Self-hosted TTS is the right call for back-office audio. It is probably the wrong call for anything that lives in the front of house.

The reason 4,100 developers starred this repository is not that local TTS is a new idea. It is that this is the first model small enough to run on CPU, fast enough to use in production, and well-maintained enough to trust. The fact that it runs in a browser via WebAssembly, on a Raspberry Pi via the sherpa-onnx port, and inside a Docker container with an OpenAI-compatible API tells you something about where the ecosystem around it is heading.

A paid API for a commodity task is a comfortable budget line until someone builds the same thing and makes it free to run. That is what happened here.