Pricing
As a rough feel: $1 ≈ 25,000 characters ≈ ~30 minutes of Kazakh speech (Kazakh runs ~14 characters per second of audio).
Only successful synthesis is billed, on the input character count (the
X-Tokay-Chars response header reports it). The catalog endpoints — /v1/models, /v1/voices, /health — are open and free.
Running out
When your balance hits zero, synthesis requests return HTTP 429 with adetail telling you you’re out of credits. Top up in the console. The SDK surfaces this as a GekoError with status === 429 and does not retry it (see Errors & retries) — a retry can’t create credits.
Managing credits
- Balance & history: view your current balance and per-request usage in the console.
- Top up: add credits in the console’s billing section.
- Estimate before you send:
chars = text.length,cost_usd = chars / 25000.
Streaming (
tts.stream) and the OpenAI-compatible endpoint bill identically to tts.create — by input characters, once per request. Pricing is subject to change; the console always shows the current rate.Next steps
Limits & constraints
Request limits, rate limits, and cold starts.
Errors & retries
How the SDK surfaces a 429 out-of-credits response.
FAQ & troubleshooting
Common questions about usage and metering.