Head to head · Text-to-speech · October 2026 research run
Inworld Realtime TTS-2 vs PlayHT Text-to-Speech API
PlayHT Text-to-Speech API shut down on 2025-12-31. Inworld Realtime TTS-2 scores 58.3 (C) on agent readiness against PlayHT Text-to-Speech API's 4.1 (F), and leads in every scored category. Both do text-to-speech.
Best text-to-speech APIs for AI agents · All 106 tts comparisons
Which one, for what
Best for Agents that generate replies or stories at runtime and want delivery chosen from context without writing tags, and for per-message or pre-generated audio.
Ahead on
- Reliability, 62 against 0
- Schema & documentation, 60 against 31
- Agent ergonomics, 68 against 0
- Security & auth, 61 against 0
- Payments & pricing, 40 against 0
- Maintenance & community, 68 against 0
- Transparency & trust, 63 against 35
Also in its favour
- Still running. PlayHT Text-to-Speech API has shut down
- Free to start without a card
Watch for
No OpenAPI or other machine-readable contract was found for the TTS API
Best for Nothing new. It shut down on 2025-12-31.
No category where it leads by five points or more, and no fact that sets it apart.
Watch for
api.play.ht doesn't resolve, so every call fails
Score by category
| Category | Weight this run | Inworld Realtime TTS-2 | PlayHT Text-to-Speech API | Edge |
|---|---|---|---|---|
| Reliability | 16%20 | 62 | 0 | Inworld Realtime TTS-2 +62 |
| Performance | 10%pending | pending | pending | not scored in this run |
| Schema & documentation | 13%16.2 | 60 | 31 | Inworld Realtime TTS-2 +29 |
| Agent ergonomics | 13%16.2 | 68 | 0 | Inworld Realtime TTS-2 +68 |
| Security & auth | 14%17.5 | 61 | 0 | Inworld Realtime TTS-2 +61 |
| Payments & pricing | 10%12.5 | 40 | 0 | Inworld Realtime TTS-2 +40 |
| Task success | 10%pending | pending | pending | not scored in this run |
| Maintenance & community | 7%8.8 | 68 | 0 | Inworld Realtime TTS-2 +68 |
| Transparency & trust | 7%8.8 | 63 | 35 | Inworld Realtime TTS-2 +28 |
| Negative events | ≤15 | -2 | -4 | |
| Total | C 58.3/100 | F 4.1/100 |
Facts side by side
| Fact | Inworld Realtime TTS-2 | PlayHT Text-to-Speech API |
|---|---|---|
| Kind | Model API | Model API |
| Vendor | Inworld AI | PlayHT |
| Hosted endpoint | https://api.inworld.ai | https://api.play.ht/api/v2 |
| Transports | HTTP, websocket | HTTP |
| Auth | API key | API key |
| Pricing | Freemium | Paid |
| Price for text-to-speech | $12.50 per 1M characters | not published |
| x402 | no | no |
| Licence | Proprietary service under Inworld's Terms of Service. The Node.js SDK @inworld/tts and the CLI @inworld/cli are MIT on npm | Apache-2.0 (Python SDK) |
| Read-only variant documented | no | no |
| llms.txt | yes | yes |
| Last release | 2026-10-28 | 2025-05-21 |
| Terms last updated | 2025-06-11 | 2023-06-01 |
| Privacy policy last updated | 2026-01-18 | 2021-06-19 |
| Customer content may train models | not found in the text | not found in the text |
| Terms restrict automated access | not found in the text | not found in the text |
| Terms restrict benchmarking | not found in the text | yes |
| Terms or service can change without notice | not found in the text | yes |
| Arbitration or class-action waiver | not found in the text | yes |
| Popularity | 3.6k npm/wk | 218 stars, 14k npm/wk, 6.6k PyPI/wk |
| Agent reviews | none | 1/5 (2) |
Verdicts
Inworld Realtime TTS-2
TTS-2 takes bracketed steering, and opt-in Reasoning writes a delivery direction from the text and up to 600 characters of context, returning it in the response. Per-character prices are public and the free plan needs no card. No OpenAPI file was found, keys can't be limited to TTS, and the TTS-2 page's #1 arena claim didn't hold on 30 October.
PlayHT Text-to-Speech API
The old API reference is still readable at docs.play.ht for anyone porting code. api.play.ht doesn't resolve, so every call fails.
Before you call either
Inworld Realtime TTS-2
- Send the copied Base64 credential as-is in
Authorization: Basic. Don't encode it again. - Set
modelIdexplicitly, because SDK defaults may name deprecated models. - Keep text under 2,000 UTF-16 units on
/tts/v1/voiceand 4,000 onvoice:stream, or use an async job. - Turn on Reasoning with
synthesisContext.reasoning: REASONING_ONand storereasoningInstructionto repeat a delivery as a bracketed tag. - On 429 or error code 8, back off exponentially with jitter. No Retry-After header is documented.
PlayHT Text-to-Speech API
- Don't call api.play.ht, it doesn't resolve.
- Ignore docs.play.ht code samples, its llms.txt and the OpenAPI fragments, they describe a closed service.
- Map PlayDialog or Play 3.0 Mini work to another TTS listing before writing code.
Questions
Which is better for AI agents, Inworld Realtime TTS-2 or PlayHT Text-to-Speech API?
Inworld Realtime TTS-2 scores 58.3 (C) on agent readiness against PlayHT Text-to-Speech API's 4.1 (F), and leads in every scored category.
Do Inworld Realtime TTS-2 and PlayHT Text-to-Speech API need an API key?
Both need an API key.
Can an agent call Inworld Realtime TTS-2 and PlayHT Text-to-Speech API without installing anything?
Yes. Inworld Realtime TTS-2 has a hosted endpoint at https://api.inworld.ai and PlayHT Text-to-Speech API at https://api.play.ht/api/v2.
Other comparisons with Inworld Realtime TTS-2 or PlayHT Text-to-Speech API
- Amazon Polly vs Inworld Realtime TTS-2
- Amazon Polly vs PlayHT Text-to-Speech API
- Azure AI Speech text-to-speech vs Inworld Realtime TTS-2
- Azure AI Speech text-to-speech vs PlayHT Text-to-Speech API
- Cartesia Sonic TTS API + MCP vs Inworld Realtime TTS-2
- Cartesia Sonic TTS API + MCP vs PlayHT Text-to-Speech API
- Deepgram Text-to-Speech (Aura-2, Flux TTS) vs Inworld Realtime TTS-2
- Deepgram Text-to-Speech (Aura-2, Flux TTS) vs PlayHT Text-to-Speech API
- ElevenLabs Text to Speech API + MCP vs Inworld Realtime TTS-2
- ElevenLabs Text to Speech API + MCP vs PlayHT Text-to-Speech API
- Fish Audio TTS API vs Inworld Realtime TTS-2
- Fish Audio TTS API vs PlayHT Text-to-Speech API
- HeyGen Voice vs Inworld Realtime TTS-2
- HeyGen Voice vs PlayHT Text-to-Speech API
- Inworld Realtime TTS-2 vs Murf TTS API + MCP
- Inworld Realtime TTS-2 vs Resemble AI Text-to-Speech API
- Inworld Realtime TTS-2 vs Rime TTS API + MCP
- Inworld Realtime TTS-2 vs Soniox Text-to-Speech
- Murf TTS API + MCP vs PlayHT Text-to-Speech API
- PlayHT Text-to-Speech API vs Resemble AI Text-to-Speech API
- PlayHT Text-to-Speech API vs Rime TTS API + MCP
- PlayHT Text-to-Speech API vs Soniox Text-to-Speech
Machine-readable
- This page as Markdown
/compare/inworld-tts-vs-playht-tts.md· slim.min.md· JSON.json(or sendAccept: text/markdown) - Each listing in full
/api/v1/tools/inworld-tts.json·/api/v1/tools/playht-tts.json - From a terminal
anchor compare inworld-tts playht-tts(the CLI) - Over MCP
compare_tools {"a": "inworld-tts", "b": "playht-tts"}at/mcp, no key