Voices and styles
| Voice | voice | Suits |
|---|
| Kaitom, the default | kaitom | A man's voice, for any use |
| Kaimook | kaimook | A woman's voice, bright and friendly: service, welcomes |
| Kaidang | kaidang | A man's voice: announcements, voice assistants |
style | Sounds | For |
|---|
neutral, the default | Plain, balanced | Information |
friendly | Warm, easy | Chat, support, welcomes |
cheerful | Bright, upbeat | Promotions, good news |
calm | Slow, soft, soothing | Guidance, reassurance |
serious | Firm, measured | Alerts, announcements, terms |
sad | Slow, soft, low | Condolences, apologies |
excited | Fast, energetic | Celebrations |
empathetic | Gentle, caring | Sensitive support |
Every voice speaks every style; all 24 pairs can be heard on the Chinda TTS page. The text is read as written, so write ค่ะ and คะ for Kaimook where Kaitom and Kaidang say ครับ.
Voice library
Ten more voices by age and sex, for characters, lessons and audiobooks. Each is a reference clip: send it as file to /clone with your text, a style and consent=true, at the same price and the same 1,000-character limit. Every one speaks the eight styles; hear them on the Chinda TTS page, or choose one in the demo above.
curl -o senior-m.mp3 https://iapp.co.th/audio/chindatts/library/senior-m.mp3
curl -X POST https://api.iapp.co.th/v3/store/audio/tts/clone \
-H "apikey: YOUR_API_KEY" \
-F "file=@senior-m.mp3" \
-F "text=ตาจะเล่านิทานให้ฟังนะหลาน" \
-F "style=calm" -F "format=mp3" -F "consent=true" \
--output speech.mp3
Write ค่ะ and คะ for the women and girls, as for Kaimook.
Measured
On the production service, 28 and 29 October 2026, with 120 public Thai test sentences: 60 from FLEURS (Wikipedia sentences with names and numbers) and 60 from Common Voice 17.0 (short everyday sentences). Every voice spoke every sentence, and speech recognition transcribed the audio back. Character error rate between the text sent and the text recognised, spaces and punctuation ignored; lower is better.
| Measure | Result |
|---|
| Kaitom, the default voice, 120 sentences | 4.93%, so 95.07% of characters read back correctly |
| Three ready voices / ten library voices, cloned | 5.40% / 5.06% |
| Each of the 13 voices | 4.27% to 5.73% |
| The 60 Common Voice sentences: ready voices / library voices / the people who recorded them | 4.72% / 3.13% / 4.60% |
| Kaitom in each of the eight styles, 30 sentences | 4.20% to 5.98% (neutral 4.59%) |
| Audio returned by the public API, 60 sentences | 3.51% |
| Median time per sentence through the public API from Bangkok: ready / cloned voice | 1.47 s / 4.38 s |
Kaitom's 95% confidence interval is 3.89% to 6.02%; the differences between voices and between styles lie within such intervals, and on the Common Voice sentences the voices are as intelligible to speech recognition as the people who recorded them. The test measures intelligibility, not naturalness: no listeners rated how natural a voice sounds or how closely a cloned voice resembles its speaker, one speech recognition system is the judge, and the sentences contain little English. A cloned voice takes several seconds per sentence, so send long text in parallel parts. Method and limits: the benchmark (PDF).
Limits
- Thai and English; other scripts, emoji and symbols are dropped, not read aloud. Cloning is Thai only.
- 1,200 characters per request (1,000 on
/clone), about 100 seconds of audio.
- 100 requests per second per API key.
- Punctuation sets the pauses. To fix how a brand or acronym is said, write it in Thai script:
ไอแอป, not iApp.
Data handling
Text and reference clips are processed in memory and not kept after the response. Consent and notice under PDPA and GDPR remain with you as the data controller.
Deprecated endpoints
The V1 and V2 endpoints still answer, at the same price, but are no longer maintained. Move to /v3/store/audio/tts.
| Endpoint | Was |
|---|
/v3/store/speech/text-to-speech/kaitom, also /thai-tts-kaitom2/tts | V2, Kaitom voice |
/v3/store/speech/text-to-speech/kaitom/v1, also /thai-tts-kaitom/tts | V1, Kaitom voice |
/v3/store/speech/text-to-speech/cee, also /thai-tts-cee/tts | V1, Cee voice |
To move, send JSON with text, and voice, style and format as needed, in place of form fields or a query string, and drop language: the language is detected. The answer is an audio file, ready to play. There is no Cee voice.
Changelog
| Version | Changes |
|---|
| Price, Oct 2026 | 0.2 IC per 1,000 characters, billed per 100 characters (was 1 IC a request), and monthly plans Voice S, M and L for 2.5, 7.5 and 25 million characters. |
| Voice library, 27 Oct 2026 | Ten voices by age and sex, from a girl of about 8 to a grandfather of about 80, each a published reference clip for /clone; the demo offers them under the three voices. See Voice library. |
| Chinda TTS, Oct 2026 | Three voices (voice: kaitom, kaimook, kaidang), eight speaking styles (style) and a choice of WAV or MP3 (format). The answer is now an audio file, WAV at 48 kHz or MP3, in place of raw 24 kHz PCM: play or save it as it is, without adding a WAV header. Cloning takes style, format and denoise. |
| Chinda TTS | The V3 endpoints run on Chinda TTS, with the same request and response, up to 1,200 characters per request. The V1 and V2 endpoints are deprecated; see Deprecated endpoints. |
| V3 | /v3/store/audio/tts replaces /v3/store/speech/text-to-speech/kaitom, with a JSON body, the language detected instead of a language mode, up to 10,000 characters, 24 kHz output, text normalisation for numbers, dates, currency, times and percentages, and voice cloning. |