Head to head · Text-to-speech · October 2026 research run
Inworld Realtime TTS-2 vs MiniMax Speech (T2A)
Inworld Realtime TTS-2 scores 58.3 (C) on agent readiness against MiniMax Speech (T2A)'s 55.1 (C), and leads in 4 of 7 scored categories. MiniMax Speech (T2A) leads on reliability and schema & documentation. Both do text-to-speech.
Best text-to-speech APIs for AI agents · All 148 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
- Agent ergonomics, 68 against 56
- Security & auth, 61 against 36
- Payments & pricing, 40 against 20
- Maintenance & community, 68 against 38
Also in its favour
- A hosted endpoint, with nothing to install
- Free to start without a card
Watch for
No OpenAPI or other machine-readable contract was found for the TTS API
Best for Multilingual speech for narration and agents at mid-range prices, with strong Chinese voices by the vendor's account.
Ahead on
- Reliability, 75 against 62
- Schema & documentation, 81 against 60
Watch for
No free allowance for synthesis and no official SDK
Why the edge
Each category where one leads by five points or more, with the reason behind each side's score from its assessment. The numbers are in the table below; this is what they stand for.
Maintenance & community Inworld Realtime TTS-2 +30
Inworld Realtime TTS-2 68
Read as a model. Reasoning and an updated inworld-tts-2 on 28 October 2026, and @inworld/cli 1.5.0 on 29 October (30). Dated TTS changes on 6 August, 9 August, 11 September and 28 October 2026 (10). inworld-tts-1 and -1-max were discontinued on 15 June 2026 with requests routed to newer models, and the 1.5 models are deprecated with no end date, but no notice period was found (5 of 10). Public release notes, a Discord server and support@inworld.ai, with no evidence read of how they answer (8 of 15). @inworld/tts 1.1.1 dates from 6 May 2026, before TTS-2 Flash and Reasoning, and the PyPI page answered with a bot check (10 of 15). The CLI is current, but the SDK and CLI repositories weren't read (5 of 10). Total 68.
MiniMax Speech (T2A) 38
Read as a model, as minimax-voice-cloning is. The newest dated change touching speech is the MCP servers' August update, minimax-mcp-js 0.0.18 on 21 August 2026, 77 days before 6 November, and Speech 2.8 dates from 23 January 2026 (20 of 30). No dated API entries in the last 90 days (0). Support by email and Discord, not tested (6 of 15). No official SDK for speech; the MCP servers expose text_to_audio and list_voices (8 of 15). The Python MCP server has tests and moved to version 2 of the MCP SDK in August, with no CI workflow (4 of 10). Total 38.
Security & auth Inworld Realtime TTS-2 +25
Inworld Realtime TTS-2 61
Model reading of the checklist, with training and retention in place of the least-privilege and injection lines. Workspace API keys, deleted to revoke, with separate keys per environment advised, single-use client tokens valid 15 minutes, and a Realtime-only key type. No key can be limited to TTS, because write toggles cover only the Voice and Router APIs (25 of 30). The Terms (11 June 2025) say Inworld won't train generally available models on customers' non-public Materials, except feedback and content flagged for trust and safety. The Privacy Notice (18 January 2026) lists training AI models among its uses and covers voice data, while excluding data processed for enterprise customers (12 of 20). Zero data retention is Enterprise only or a Growth add-on. No retention period is published for other plans, async results are kept about 7 days, and whether the Reasoning model's step is covered isn't stated (6 of 15). Usage is attributed per key, and a Performance page (Builder and above) shows errors, latency and throttling. The Logs page sits behind the Portal login and wasn't read (8 of 15). SOC 2 Type II, HIPAA and GDPR claimed on the security page, with the trust centre unread. A vulnerability report form exists. No security.txt (404) and no bug bounty found (10 of 20). Total 61.
MiniMax Speech (T2A) 36
Model reading of the checklist, with training and retention in place of the least-privilege and injection lines. Plain API keys with no scopes found, and leaked keys may be disabled (20 of 30). The terms (effective 30 March 2026), as read for minimax-voice-cloning on 4 November, let MiniMax use input and generated content to operate, maintain, develop and improve its services, with no opt-out found, and the privacy policy rules out only training to profile or target consumers (5 of 20). The speech docs call every interface stateless, and no retention period for submitted text or generated audio was found (5 of 15). Responses carry usage_characters and a trace ID, with no audit log (6 of 15). No security.txt, disclosure policy, bug bounty or certification found (0 of 20). Total 36.
Schema & documentation MiniMax Speech (T2A) +21
Inworld Realtime TTS-2 60
No OpenAPI or other machine-readable file was found. llms.txt and the API reference don't link one and the usual paths redirect to pages (0). llms.txt, llms-full.txt, a Markdown twin of every page and a keyless docs MCP server (10). The models page says which model suits what, the Reasoning guide says where it runs and where it doesn't yet (WebSocket, Realtime, batch), and the reference marks fields each model ignores (17 of 20). Typed fields with enums for encoding, deliveryMode, reasoning and timestampType, a sample-rate range, per-endpoint text limits and a 600-character cap on reasoningContext (14 of 15). Examples in curl, Python, JavaScript and the CLI, with one 4XX example and the concurrency error, and no TTS error list (9 of 15). Versioned /v1 paths and dated TTS release notes, but the notes have no entry for the 28 October Reasoning launch and model update, and models have no dated snapshots (10 of 15). Total 60.
MiniMax Speech (T2A) 81
OpenAPI 3.1 for the sync and async routes and AsyncAPI files for the WebSocket and bidirectional sockets (25). llms.txt and a Markdown copy of every page (10). The text field says when to stream and how to mark pauses, and guides separate sync, WebSocket and async use (15 of 20). Enums for model and audio settings, with model and text required (13 of 15). Examples throughout and the shared table of error codes, but the OpenAPI file documents only a 200 response (10 of 15). Versioned /v1 paths. The API release notes stop at 28 October 2025, and the last T2A entry is 23 September 2025 (8 of 15). Total 81.
Payments & pricing Inworld Realtime TTS-2 +20
Inworld Realtime TTS-2 40
No x402, MPP or L402 (0). Per-character prices for both models and every plan are on the public pricing page, $25 per million characters for TTS-2 on the free plan (20). The On-Demand plan is free with up to 70 minutes of TTS, and the pricing table lists no payment method for it (20). inworld login opens a browser sign-in and the CLI mints keys only after it, so a person signs up (0). Total 40.
MiniMax Speech (T2A) 20
No x402, MPP or L402 (0). Per-character prices for every speech model published without a login (20). No free allowance for synthesis is published (0). A person signs up in a browser and funds a balance (0). Total 20.
Reliability MiniMax Speech (T2A) +13
Inworld Realtime TTS-2 62
Hosted reading of the checklist, on the TTS API. status.inworld.ai is a public status page running the issue-status app, which draws components and incidents from GitHub issues (20). The page is still a script shell on 4 November, and its history wasn't read, because GitHub's pages answer our proxy with 403, so no readable history (5). Concurrent generations, WebSocket connections and cloning and design requests a minute are published per plan, from 5 concurrent generations on the free plan to 500 on Growth (15). A 429 is documented with exponential backoff and jitter code, and the concurrency error (code 8) says which messages may have been dropped, but no Retry-After header is documented (12 of 15). An SLA is named on the Enterprise plan only, with no terms or uptime figure published (0). TTS-2 reached general availability on 31 August 2026 and Reasoning carries no Preview mark. Async and batch jobs are Preview (10). Total 62.
MiniMax Speech (T2A) 75
Atlassian Statuspage at status.minimax.io with a Text-to-Speech component (20). Its history, re-read on 6 November, shows three incidents in the 90 days from 8 August, all titled elevated errors and labelled major, 22 minutes on 28 September, 3 minutes on 16 October and 2 minutes on 19 October, and none in November. Elevated errors with no fuller scope are read as partial, as on minimax-api and minimax-voice-cloning, so minor only (20). T2A is limited to 60 requests a minute, with higher limits on audio subscriptions (15). Error codes 1002 and 2045 say to retry later and avoid sudden increases, with no Retry-After or backoff figures (10 of 15). No SLA (0). No beta or preview label on T2A (10). 20 + 20 + 15 + 10 + 0 + 10 = 75.
Agent ergonomics Inworld Realtime TTS-2 +12
Inworld Realtime TTS-2 68
API reading of the checklist. Eight audio encodings from 8 to 48 kHz, timestamps only when asked, and synchronous, NDJSON streaming, WebSocket and async delivery. Reasoning adds one short string, reasoningInstruction, to the response (22 of 25). Text is capped at 2,000 or 4,000 UTF-16 units per request, and voices can be filtered by tags, but voice-list paging wasn't confirmed today (12 of 20). Errors carry a numeric gRPC-style code, a message and details, with one worked example and the code 8 behaviour explained, and no list (12 of 20). Synthesis is stateless and retry guidance is published, but the billing page says text is counted once synthesis starts, with no idempotency key (10 of 20). Three required fields, official Node.js and Python SDKs, the CLI, and an OpenAI-compatible endpoint that works with OpenAI's SDKs. The docs warn that SDK defaults may name older models (12 of 15). Total 68.
MiniMax Speech (T2A) 56
API reading of the checklist. Audio comes back hex-encoded inside JSON by default, with subtitles opt-in and format, bitrate and sample rate settable (15 of 25). Voices are listed by type through POST /v1/get_voice, which has no pagination and returns 300+ system voices for all (10 of 20). Errors come as numeric codes in base_resp with a short remedy for each, inside responses documented only as 200 (13 of 20). No idempotency key, and the MCP tools carry no read-only or destructive annotations (10 of 20). Two required fields. No official SDK for speech, with MCP servers in Python and JavaScript (8 of 15). Total 56.
Score by category
| Category | Weight this run | Inworld Realtime TTS-2 | MiniMax Speech (T2A) | Edge |
|---|---|---|---|---|
| Reliability | 16%20 | 62 | 75 | MiniMax Speech (T2A) +13 |
| Performance | 10%pending | pending | pending | not scored in this run |
| Schema & documentation | 13%16.2 | 60 | 81 | MiniMax Speech (T2A) +21 |
| Agent ergonomics | 13%16.2 | 68 | 56 | Inworld Realtime TTS-2 +12 |
| Security & auth | 14%17.5 | 61 | 36 | Inworld Realtime TTS-2 +25 |
| Payments & pricing | 10%12.5 | 40 | 20 | Inworld Realtime TTS-2 +20 |
| Task success | 10%pending | pending | pending | not scored in this run |
| Maintenance & community | 7%8.8 | 68 | 38 | Inworld Realtime TTS-2 +30 |
| Transparency & trust | 7%8.8 | 63 | 65 | MiniMax Speech (T2A) +2 |
| Negative events | ≤15 | -2 | 0 | |
| Total | C 58.3/100 | C 55.1/100 |
Facts side by side
| Fact | Inworld Realtime TTS-2 | MiniMax Speech (T2A) |
|---|---|---|
| Kind | Model API | Model API |
| Vendor | Inworld AI | MiniMax |
| Hosted endpoint | https://api.inworld.ai | no (local only) |
| Transports | HTTP, websocket | HTTP, websocket |
| Auth | API key | API key |
| Pricing | Freemium | Pay per use |
| 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 | none |
| Tools exposed | none | 0 |
| Read-only variant documented | no | no |
| llms.txt | yes | yes |
| Last release | 2026-10-28 | 2026-01-23 |
| Terms last updated | 2025-06-11 | couldn't be read |
| Privacy policy last updated | 2026-01-18 | couldn't be read |
| Customer content may train models | not found in the text | couldn't be read |
| Terms restrict automated access | not found in the text | couldn't be read |
| Terms restrict benchmarking | not found in the text | couldn't be read |
| Terms or service can change without notice | not found in the text | couldn't be read |
| Arbitration or class-action waiver | not found in the text | couldn't be read |
| Popularity | 3.6k npm/wk | none |
What the same task costs
| Task | Inworld Realtime TTS-2 | MiniMax Speech (T2A) |
|---|---|---|
| Narrate a 9,000-character scriptabout 1,500 words | $0.11 to $0.22 | $0.54 to $0.90 |
Estimated from each listing's published prices, the same tasks as on the price index. Plans, minimums and free allowances aren't counted.
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 4 November.
MiniMax Speech (T2A)
MiniMax's speech API covers sync, WebSocket, bidirectional and async synthesis with OpenAPI and AsyncAPI files and public prices of $60 to $100 per million characters. Text-to-Speech had only short incidents in 90 days. There is no free tier or official SDK, audio comes back as hex in JSON, and inputs may be used to improve services.
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.
MiniMax Speech (T2A)
- Keep sync requests under 10,000 characters and use the async API for longer text
- Decode the hex
audiofield before saving, or stream for text over 3,000 characters - Check
base_resp.status_codeon every response, since errors arrive inside a 200 - Stay under 60 requests a minute and back off on code 1002
- Use speech-2.8-turbo for agents and HD only where quality matters, since HD costs two thirds more
Questions
Which is better for AI agents, Inworld Realtime TTS-2 or MiniMax Speech (T2A)?
Inworld Realtime TTS-2 scores 58.3 (C) on agent readiness against MiniMax Speech (T2A)'s 55.1 (C), and leads in 4 of 7 scored categories. MiniMax Speech (T2A) leads on reliability and schema & documentation.
Do Inworld Realtime TTS-2 and MiniMax Speech (T2A) need an API key?
Both need an API key.
Can an agent call Inworld Realtime TTS-2 and MiniMax Speech (T2A) without installing anything?
Inworld Realtime TTS-2 has a hosted endpoint at https://api.inworld.ai. No hosted endpoint is listed for MiniMax Speech (T2A).
Other comparisons with Inworld Realtime TTS-2 or MiniMax Speech (T2A)
- Amazon Polly vs Inworld Realtime TTS-2
- Amazon Polly vs MiniMax Speech (T2A)
- Azure AI Speech text-to-speech vs Inworld Realtime TTS-2
- Azure AI Speech text-to-speech vs MiniMax Speech (T2A)
- Cartesia Sonic TTS API + MCP vs Inworld Realtime TTS-2
- Cartesia Sonic TTS API + MCP vs MiniMax Speech (T2A)
- Deepgram Text-to-Speech (Aura-2, Flux TTS) vs Inworld Realtime TTS-2
- Deepgram Text-to-Speech (Aura-2, Flux TTS) vs MiniMax Speech (T2A)
- ElevenLabs Text to Speech API + MCP vs Inworld Realtime TTS-2
- ElevenLabs Text to Speech API + MCP vs MiniMax Speech (T2A)
- Fish Audio TTS API vs Inworld Realtime TTS-2
- Fish Audio TTS API vs MiniMax Speech (T2A)
- Google Cloud Text-to-Speech vs Inworld Realtime TTS-2
- Google Cloud Text-to-Speech vs MiniMax Speech (T2A)
- HeyGen Voice vs Inworld Realtime TTS-2
- HeyGen Voice vs MiniMax Speech (T2A)
- Inworld Realtime TTS-2 vs Murf TTS API + MCP
- Inworld Realtime TTS-2 vs PlayHT Text-to-Speech API
- 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 Smallest.ai Lightning TTS
- Inworld Realtime TTS-2 vs Soniox Text-to-Speech
- MiniMax Speech (T2A) vs Murf TTS API + MCP
- MiniMax Speech (T2A) vs PlayHT Text-to-Speech API
- MiniMax Speech (T2A) vs Resemble AI Text-to-Speech API
- MiniMax Speech (T2A) vs Rime TTS API + MCP
- MiniMax Speech (T2A) vs Smallest.ai Lightning TTS
- MiniMax Speech (T2A) vs Soniox Text-to-Speech
Machine-readable
- This page as Markdown
/compare/inworld-tts-vs-minimax-speech.md· slim.min.md· JSON.json(or sendAccept: text/markdown) - Each listing in full
/api/v1/tools/inworld-tts.json·/api/v1/tools/minimax-speech.json - From a terminal
anchor compare inworld-tts minimax-speech(the CLI) - Over MCP
compare_tools {"a": "inworld-tts", "b": "minimax-speech"}at/mcp, no key