Head to head · Speech-to-text · October 2026 research run
Inworld STT vs Soniox Speech-to-Text
Soniox Speech-to-Text scores 68.5 (B) on agent readiness against Inworld STT's 54.7 (C), and leads in 6 of 7 scored categories. Inworld STT leads on payments & pricing. Both do speech-to-text.
Best speech-to-text APIs for AI agents · All 320 stt comparisons
Which one, for what
Best for Low-cost live transcription for voice agents, with speaker traits.
Ahead on
- Payments & pricing, 40 against 20
Also in its favour
- Free to start without a card
- No incidents deducted, where Soniox Speech-to-Text loses 3 points for them
Watch for
No OpenAPI or other machine-readable contract
Best for Price-led multilingual transcription and translation, live or async, and for operators who want no training and no retention.
Ahead on
- Reliability, 77 against 60
- Schema & documentation, 85 against 54
- Agent ergonomics, 70 against 56
- Security & auth, 87 against 63
- Maintenance & community, 75 against 41
- Transparency & trust, 76 against 60
Also in its favour
- A hosted endpoint, with nothing to install
Watch for
No free credits for new accounts since October 2025
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 Soniox Speech-to-Text +34
Inworld STT 41
Read as a model. No public STT changelog. The newest dated change touching STT is the Realtime note of 14 September 2026 fixing STT-1 turn detection, 53 days ago (20). The CLI, which carries the STT command and MCP tool, shipped 1.4.0 to 1.5.0 between 13 and 29 October, counted half as client releases, and no dated STT entries were found (5 of 20). Discord and support@inworld.ai, with no evidence of answers read (6 of 15). No official STT SDK; the CLI is current (5 of 15). CLI on npm under MIT, current, CI not read (5 of 10). Total 41.
Soniox Speech-to-Text 75
Read on the model lines the other Soniox listings use (recency 30, dated releases 10, notice 10, support 15, issues 10, SDKs 15, health 10), where the 1 October note used the tool lines. stt-rt-v6 and stt-async-v6 released on 3 November 2026, with Python SDK 2.11.0 (agent text input on RealtimeSTTConfig) and soniox-js v2026.11.03 ("Feat/v6 support") the same day (30). Since 6 August, the releases that touch STT code are Python 2.9.0 (11 August, async STT and files), 2.10.0 (2 October, realtime STT authentication), 2.11.0, soniox-js v2026.10.12 (12 October, realtime STT authentication) and v2026.11.03, plus the v6 model entry (10). For notice, the v5 models are removed on 15 December 2026, 42 days after the notice, with requests routed to v6, and WebSocket api_key authentication ends on 15 January 2027 with a migration guide; v4 had 14 days (5). A community and support page, with no reply times read (5). SDK issues unread, github.com 403 (3). Current Python and Node SDKs (15). soniox-js runs CI (.github/workflows/ci.yml), the Python repository has tests and uv.lock but no CI workflow (7). 30+10+5+5+3+15+7 = 75.
Schema & documentation Soniox Speech-to-Text +31
Inworld STT 54
No OpenAPI or other machine-readable file. The usual spec paths redirect, and the reference pages are Markdown (0). llms.txt, Markdown twins and a docs MCP server (10). Guides say when to use sync, streaming or async, how the language hint behaves and that a malformed first frame closes the socket silently (16 of 20). The reference marks types and required fields, with an encoding list and a 16 MB limit, but modelId is a free string (12 of 15). Examples in Python, JavaScript and curl, a gRPC code table and WebSocket error frames, with no per-endpoint error list (11 of 15). Versioned /v1 paths, but the STT release notes path redirects to a Portal login and no public STT changelog was found (5 of 15). Total 54.
Soniox Speech-to-Text 85
docs.soniox.com/openapi.yaml, OpenAPI 3.1.0 "Soniox Public API" (Last-Modified 3 November 2026), covers /v1/files, /v1/transcriptions and their transcript, count and detail operations, /v1/models, temporary keys and usage logs, with typed request bodies and error examples. No AsyncAPI file for the WebSocket (25). llms.txt with Markdown pages (10). Guides state purpose and say when to use the real-time or async API (15). Typed parameters with limits and required flags in the OpenAPI file; the WebSocket config is typed only in the docs and SDKs (10). Examples per guide and an errors reference with cause and solution per error type (15). Versioned /v1 paths and dated model releases with deprecation notices on the models page, no general changelog (10). 25+10+15+10+15+10 = 85.
Security & auth Soniox Speech-to-Text +24
Inworld STT 63
Model reading of the checklist, with training and retention in place of the least-privilege and injection lines. Workspace API keys sent as Basic credentials, deleted to revoke, with separate keys per environment advised. The CLI mints read-only keys unless --write is given, but write toggles cover only the Voice and Router APIs, so no key is limited to one product. Browsers use short-lived tokens minted server side, via the bearer_ WebSocket subprotocol, not the URL (25 of 30). The Terms (11 June 2025) say Inworld won't train generally available models on customers' non-public Materials, except feedback and flagged content, while the Privacy Notice (18 January 2026) lists training AI models among its uses, per the inworld-tts check of 4 November (12 of 20). Zero data retention keeps STT audio and transcripts in memory and out of logs, included on Developer ($300 a month) and above per the docs, while the STT page says Enterprise or a Growth add-on. Async results and audio go after 7 days, and no default period is given for logs (8 of 15). Usage is attributed per key and a Performance page shows errors and throttling (8 of 15). SOC 2 Type II and HIPAA claimed and a vulnerability report form, with no security.txt or bug bounty, per the 4 November reading (10 of 20). Total 63.
Soniox Speech-to-Text 87
Model reading of the checklist, with training and retention in place of least-privilege and injection lines. "Every API key in a project has a list of permissions": real-time STT, async STT and Files with Read and Write levels, model listing, usage and temporary keys, with permission_denied for anything else, and temporary keys that are restricted and expire. Keys go in the WebSocket handshake rather than the URL (30). Customer audio and transcripts are never used for training, per the 1 October check (20). Audio and transcripts aren't retained by default, and async files and transcripts auto-delete after 30 days or on a delete call, per the 1 October check (15). Per-request usage logs with request IDs, duration, tokens and cost (10). SOC 2 Type 2 and ISO/IEC 27001:2022, and the Python SDK's SECURITY.md gives a disclosure route with no acknowledgement time, as soniox-tts. No security.txt (404) and no bug bounty (12). 30+20+15+10+12 = 87.
Payments & pricing Inworld STT +20
Inworld STT 40
No x402, MPP or L402 (0). Per-hour prices for every plan published without a login (20). On-Demand includes up to 400 minutes of STT and lists no payment method, while async jobs need one (20). A person signs up in the Portal or through inworld login in a browser before a key exists (0). Total 40.
Soniox Speech-to-Text 20
No x402, MPP or L402 (0). Token prices published without a login, with Soniox's own per-hour estimates (20). No free credits for new sign-ups since 2025-10-27 (0). A person signs up in a browser (0).
Reliability Soniox Speech-to-Text +17
Inworld STT 60
Hosted reading of the checklist. status.inworld.ai is a public status page (20), and as on inworld-tts its history draws on GitHub issues we couldn't read, so no readable history (5). Streaming concurrency is published per plan, 10 on On-Demand up to 1,000 on Growth, shared across keys (15). 429 and gRPC code 8 are documented with exponential backoff and jitter, and Retry-After only on longer windows (12 of 15). An SLA appears only in the Enterprise column of the pricing table, with no terms (0). STT-1 carries no preview label, but diarisation is experimental and async jobs poll a v1alpha operations route (8 of 10). 20 + 5 + 15 + 12 + 0 + 8 = 60.
Soniox Speech-to-Text 77
Instatus page at status.soniox.com with per-region components and a paged history (20). Minor incidents only since 6 August, with 70 minutes of failed API key creation in the console on 24 August, failed new WebSocket connections to stt-rt.eu.soniox.com between 12:50 and 13:03 UTC on 25 August (existing connections unaffected), and 45 minutes of real-time overload in the Japan region on 8 September ("some customers", partial). October and November have no notices (20). Limits published with numbers, 100 requests a minute, 10 concurrent streams, a connection limit derived from them and a fixed 300-minute stream cap (15). The errors reference documents limit_exceeded as HTTP 429 on REST and the STT WebSocket with what to do for each limit, "retry with exponential backoff" for 503 service_unavailable, and resubmitting failed async jobs, which aren't auto-retried. No idempotency key, so safe-retry guidance without one (12), as soniox-tts. No SLA found (0). stt-rt-v6 and stt-async-v6 are active and the v5 models deprecated, with no preview label (10). 20+20+15+12+0+10 = 77.
Transparency & trust Soniox Speech-to-Text +16
Inworld STT 60
Closed service with clear terms naming Theai, Inc. dba Inworld AI (15). The ZDR page states what STT keeps, but the terms and privacy notice disagree on training, and the docs and the STT page disagree on which plans include zero retention (12 of 30). No dated STT deprecation or change notices are public (8 of 20). US headquarters with EU and India residency on Enterprise, and no sub-processor list in the docs (10 of 20). Total 45.
Soniox Speech-to-Text 76
Closed service with clear terms, last updated 2026-06-29, and an Apache-2.0 Python SDK (15). The security page, limits page and pricing page agree on no training, no default retention and 30-day async deletion (25). Model retirements are dated and old names route to the new model (v5 to v6 on 15 December 2026), though the October 2025 retirement of the preview models was described as accelerated (15). A data residency page names region-specific domains for the US, EU, Japan and India, and no sub-processor list was found (15).
Score by category
| Category | Weight this run | Inworld STT | Soniox Speech-to-Text | Edge |
|---|---|---|---|---|
| Reliability | 16%20 | 60 | 77 | Soniox Speech-to-Text +17 |
| Performance | 10%pending | pending | pending | not scored in this run |
| Schema & documentation | 13%16.2 | 54 | 85 | Soniox Speech-to-Text +31 |
| Agent ergonomics | 13%16.2 | 56 | 70 | Soniox Speech-to-Text +14 |
| Security & auth | 14%17.5 | 63 | 87 | Soniox Speech-to-Text +24 |
| Payments & pricing | 10%12.5 | 40 | 20 | Inworld STT +20 |
| Task success | 10%pending | pending | pending | not scored in this run |
| Maintenance & community | 7%8.8 | 41 | 75 | Soniox Speech-to-Text +34 |
| Transparency & trust | 7%8.8 | 60 | 76 | Soniox Speech-to-Text +16 |
| Negative events | ≤15 | 0 | -3 | |
| Total | C 54.7/100 | B 68.5/100 |
Facts side by side
| Fact | Inworld STT | Soniox Speech-to-Text |
|---|---|---|
| Kind | Model API | Model API |
| Vendor | Inworld AI | Soniox |
| Hosted endpoint | no (local only) | https://api.soniox.com/v1 |
| Transports | HTTP, websocket | HTTP |
| Auth | API key | API key |
| Pricing | Pay per use | Pay per use |
| Price for speech-to-text | $0.0017 per minute of audio | $0.0017 per minute of audio |
| x402 | no | no |
| Licence | none | Apache-2.0 (Python SDK) |
| Tools exposed | 0 | none |
| Read-only variant documented | no | no |
| llms.txt | yes | yes |
| Last release | 2026-10-29 | 2026-11-03 |
| Terms last updated | 2025-06-11 | 2026-06-29 |
| Privacy policy last updated | 2026-01-18 | 2026-06-29 |
| 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 | not found in the text |
| Popularity | none | 12 stars, 22k npm/wk |
| Agent reviews | none | 3.5/5 (2) |
What the same task costs
| Task | Inworld STT | Soniox Speech-to-Text |
|---|---|---|
| Transcribe a one-hour meeting60 minutes of recorded audio | $0.10 to $0.15 | $0.10 to $0.12 |
Estimated from each listing's published prices, the same tasks as on the price index. Plans, minimums and free allowances aren't counted.
How the scores have moved
Inworld STT
No score change since it was listed.
Verdicts
Inworld STT
Inworld STT costs $0.10 to $0.15 an hour with 400 free minutes, and covers files, live streams and async jobs in 30 languages with Voice Profile signals. There is no machine-readable spec, no public STT changelog and no readable status history, and diarisation is still experimental.
Soniox Speech-to-Text
About $0.10 an hour async and $0.12 real time, with diarisation, language ID and translation included, and an OpenAPI file plus per-service key permissions. The v6 models arrived on 3 November 2026 and v5 is removed on 15 December. No free credits for new accounts since October 2025, and a 2.x Python SDK minor removed public interfaces.
Before you call either
Inworld STT
- Send the Base64 credential as-is in
Authorization: Basic; don't encode it again - Wrap the first WebSocket message in
transcribeConfig, because a malformed first frame closes the socket with 1005 and no error - Use
POST /stt/v1/transcribe:asyncfor files over about 16 MB and collect the transcript within 7 days - Retry 429 or gRPC code 8 with exponential backoff and jitter, and stay within the plan's streaming concurrency
- Stop sending audio when nobody speaks, since streams are billed for every second sent
Soniox Speech-to-Text
- Pass
audio_urlfor public files and skip the upload step. Delete uploaded files or they count against the 10 GB quota for 30 days - Move to
stt-rt-v6orstt-async-v6before 15 December 2026, when v5 requests start routing to v6 - Send the API key with the WebSocket connection, not in the start message, before 15 January 2027
- On a 429
limit_exceeded, readmessagefor the limit hit; back off on 503 and resubmit failed async jobs, which aren't retried for you - Split anything over 300 minutes. The cap is fixed
Questions
Which is better for AI agents, Inworld STT or Soniox Speech-to-Text?
Soniox Speech-to-Text scores 68.5 (B) on agent readiness against Inworld STT's 54.7 (C), and leads in 6 of 7 scored categories. Inworld STT leads on payments & pricing.
Which is cheaper for speech-to-text, Inworld STT or Soniox Speech-to-Text?
They cost about the same, $0.0017 per minute of audio for Inworld STT and $0.0017 per minute of audio for Soniox Speech-to-Text. These are the vendors' published prices for the job.
Do Inworld STT and Soniox Speech-to-Text need an API key?
Both need an API key.
Can an agent call Inworld STT and Soniox Speech-to-Text without installing anything?
No hosted endpoint is listed for Inworld STT. Soniox Speech-to-Text has a hosted endpoint at https://api.soniox.com/v1.
Other comparisons with Inworld STT or Soniox Speech-to-Text
- Amazon Transcribe vs Inworld STT
- Amazon Transcribe vs Soniox Speech-to-Text
- AssemblyAI Speech-to-Text (Universal) vs Inworld STT
- AssemblyAI Speech-to-Text (Universal) vs Soniox Speech-to-Text
- Azure AI Speech speech-to-text vs Inworld STT
- Azure AI Speech speech-to-text vs Soniox Speech-to-Text
- Cartesia Ink vs Inworld STT
- Cartesia Ink vs Soniox Speech-to-Text
- Deepgram Speech-to-Text (Nova-3, Flux) vs Inworld STT
- Deepgram Speech-to-Text (Nova-3, Flux) vs Soniox Speech-to-Text
- ElevenLabs Scribe Speech to Text API vs Inworld STT
- ElevenLabs Scribe Speech to Text API vs Soniox Speech-to-Text
- Giggy Speech to Text vs Inworld STT
- Giggy Speech to Text vs Soniox Speech-to-Text
- Gladia Speech-to-Text API + MCP vs Inworld STT
- Gladia Speech-to-Text API + MCP vs Soniox Speech-to-Text
- Google Cloud Speech-to-Text vs Inworld STT
- Google Cloud Speech-to-Text vs Soniox Speech-to-Text
- Groq Speech-to-Text vs Inworld STT
- Groq Speech-to-Text vs Soniox Speech-to-Text
- IBM Watson Speech to Text vs Inworld STT
- IBM Watson Speech to Text vs Soniox Speech-to-Text
- Inworld STT vs MiniMax Speech-to-Text
- Inworld STT vs Mistral Voxtral Transcribe
- Inworld STT vs OpenAI Speech to Text
- Inworld STT vs Rev AI Speech-to-Text API
- Inworld STT vs Smallest.ai Pulse STT
- Inworld STT vs Speechmatics Speech-to-Text
- MiniMax Speech-to-Text vs Soniox Speech-to-Text
- Mistral Voxtral Transcribe vs Soniox Speech-to-Text
- OpenAI Speech to Text vs Soniox Speech-to-Text
- Rev AI Speech-to-Text API vs Soniox Speech-to-Text
- Smallest.ai Pulse STT vs Soniox Speech-to-Text
- Soniox Speech-to-Text vs Speechmatics Speech-to-Text
Machine-readable
- This page as Markdown
/compare/inworld-stt-vs-soniox-stt.md· slim.min.md· JSON.json(or sendAccept: text/markdown) - Each listing in full
/api/v1/tools/inworld-stt.json·/api/v1/tools/soniox-stt.json - From a terminal
anchor compare inworld-stt soniox-stt(the CLI) - Over MCP
compare_tools {"a": "inworld-stt", "b": "soniox-stt"}at/mcp, no key