ComfyUI-KittenTTS
π» A simple ComfyUI custom node for KittenTTS - an ultra-lightweight text-to-speech model. Works on CUDA and CPU.
π» Kitten-TTS for ComfyUI
A simple ComfyUI custom node for KittenTTS - an ultra-lightweight text-to-speech model. Works on CUDA and CPU.
<img width="1496" height="1015" alt="Screenshot 2026-02-19 194339" src="https://github.com/user-attachments/assets/6af8a500-0a48-47da-adff-e020a5437e88" />Demo
https://github.com/user-attachments/assets/d80120f2-c751-407e-a166-068dd1dd9e8d
Features
- π Ultra-lightweight: Models from 19MB to 80MB
- π» CPU & CUDA: Runs on any device, GPU optional
- π― Single node: All settings in one place
- π¦ Auto-download: Models cached in
ComfyUI/models/kittentts/ - β‘ Fast inference: Real-time speech synthesis
- π€ 8 voices: 4 male, 4 female
Installation
Prerequisites (Required)
Before installing the custom node, you must install espeak-ng and set up its environment variable:
- Install espeak-ng: Download and install it from https://github.com/espeak-ng/espeak-ng/.
- Set Environment Variable: Add a new system environment variable named
PHONEMIZER_ESPEAK_LIBRARYpointing to theespeak-nginstallation path (e.g.,C:\Program Files\eSpeak NG\libespeak-ng.dllon Windows). - Reboot: You must completely restart the ComfyUI CLI/console for the updated environment variables to be securely loaded.
Method 1: ComfyUI Manager (Recommended)
Search for "KittenTTS" in ComfyUI Manager and install.
Method 2: Manual Install
cd ComfyUI/custom_nodes
git clone https://github.com/Saganaki22/ComfyUI-KittenTTS.git
Dependencies
The node auto-installs most dependencies on first run. The correct version of onnxruntime (CPU or GPU) is dynamically chosen based on whether your PyTorch environment supports CUDA.
If you need to install or fix it manually:
Standard Python environment:
# For CPU
pip install onnxruntime
# For CUDA GPU
pip install onnxruntime-gpu
For Windows portable ComfyUI, use the embedded Python:
# From ComfyUI_windows_portable directory
# For CPU
.\python_embeded\python.exe -m pip install onnxruntime
# For CUDA GPU
.\python_embeded\python.exe -m pip install onnxruntime-gpu
Models
| Model | Params | Size | Quality | Link | |-------|--------|------|---------|------| | kitten-tts-mini | 80M | 80MB | Best | π€ Download | | kitten-tts-micro | 40M | 41MB | Good | π€ Download | | kitten-tts-nano | 15M | 56MB | Lightweight | π€ Download | | kitten-tts-nano-int8 | 15M | 19MB | Smallest | π€ Download |
β οΈ Note: Some users report issues with the int8 quantized model. We recommend the mini or micro versions for best results.
Usage
The node is simple - just one node with all settings:
Inputs
| Input | Type | Default | Description |
|-------|------|---------|-------------|
| model_name | Dropdown | mini-0.8 (80M) | Model size/quality |
| device | Dropdown | auto | auto/cuda/cpu |
| text | String | - | Text to synthesize |
| voice | Dropdown | Jasper | Voice selection |
| speed | Float | 1.0 | Speech speed (0.5-2.0) |
| keep_loaded | Boolean | True | Keep model in memory |
| output_stereo | Boolean | False | Stereo output |
| clean_text | Boolean | True | Normalize text |
| custom_model | String | "" | Custom HF model ID |
Voices
Male: Jasper, Bruno, Hugo, Leo
Female: Bella, Luna, Rosie, Kiki
Example
Just add the π± KittenTTS node, type your text, select a voice, and connect the audio output to your pipeline.
βββββββββββββββββββββββββββ
β π± KittenTTS β β Connect to audio nodes
βββββββββββββββββββββββββββ€
β model: mini-0.8 (80M) β
β device: auto β
β text: "Hello world!" β
β voice: Jasper β
β speed: 1.0 β
β keep_loaded: True β
β output_stereo: False β
β clean_text: True β
β custom_model_path ... β
βββββββββββββββββββββββββββ€
βββββββββββββββββββββββββββ
Model Storage
Models are downloaded to: ComfyUI/models/kittentts/<model_name>/
You can create symlinks to this folder if you want to share models between ComfyUI installations.
Troubleshooting
"CUDA out of memory"
- Switch to a smaller model (nano or micro)
- Set
keep_loadedto False - Use CPU device
"onnxruntime not found"
Standard Python environment:
# For CPU
pip install onnxruntime
# For CUDA
pip install onnxruntime-gpu
For Windows portable ComfyUI, use the embedded Python:
# From ComfyUI_windows_portable directory
# For CPU
.\python_embeded\python.exe -m pip install onnxruntime
# For CUDA
.\python_embeded\python.exe -m pip install onnxruntime-gpu
"No module named 'kittentts'"
The bundled wheel should auto-install. If not:
Standard Python environment:
pip install https://github.com/KittenML/KittenTTS/releases/download/0.8/kittentts-0.8.0-py3-none-any.whl
For Windows portable ComfyUI:
.\python_embeded\python.exe -m pip install https://github.com/KittenML/KittenTTS/releases/download/0.8/kittentts-0.8.0-py3-none-any.whl
Links
- Original KittenTTS Repo: https://github.com/KittenML/KittenTTS
- HuggingFace Models: https://huggingface.co/KittenML
- Discord: Join KittenML Discord
- Demo Video: Watch on GitHub
Credits
- KittenTTS by KittenML
- ComfyUI node by Saganaki22
License
Apache 2.0 - See LICENSE for details.