{
  "data": {
    "a": {
      "slug": "cartesia-ink-stt",
      "name": "Cartesia Ink",
      "vendor": "Cartesia",
      "vendorUrl": "https://www.cartesia.ai",
      "kind": "model",
      "category": "speech-to-text",
      "summary": "Cartesia's hosted speech-to-text API. Ink 2 transcribes live audio in five languages over a WebSocket with built-in turn detection, and the older Ink Whisper model transcribes uploaded files in about 100 languages.",
      "url": "https://www.anchorterminal.com/tools/cartesia-ink-stt",
      "markdownUrl": "https://www.anchorterminal.com/tools/cartesia-ink-stt.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/cartesia-ink-stt.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/cartesia-ink-stt.json",
      "dns": "cartesia-ink-stt.grade.anchorterminal.com",
      "repo": "https://github.com/cartesia-ai/cartesia-python",
      "license": "Proprietary hosted service under the Cartesia Terms of Service. The Python and JavaScript SDKs are Apache-2.0",
      "transports": [
        "http",
        "websocket",
        "streamable-http"
      ],
      "remoteUrl": "https://api.cartesia.ai",
      "packages": [
        {
          "registry": "pypi",
          "name": "cartesia"
        },
        {
          "registry": "npm",
          "name": "@cartesia/cartesia-js"
        },
        {
          "registry": "pypi",
          "name": "cartesia-mcp"
        }
      ],
      "auth": "api-key",
      "authNotes": "Self-serve API key (`sk_car_...`) from the Playground at play.cartesia.ai/keys, sent as `Authorization: Bearer` or `X-API-Key`. Browser clients use an access token with an `stt` grant, valid for at most one hour, passed as the `access_token` query parameter on WebSockets. Usage and key-metadata endpoints need a separate admin key (https://docs.cartesia.ai/use-the-api/api-conventions).",
      "pricing": "freemium",
      "pricingNotes": "Billed in credits. `ink-2` costs 3 credits a second of audio on both realtime endpoints, silence included. `ink-whisper` costs 1 credit a second in realtime and 1 credit per 2 seconds in batch (https://docs.cartesia.ai/pricing). Plans are Free ($0, 20,000 credits a month), Pro ($5, 100,000), Startup ($49, 1.25 million) and Scale ($299, 8 million), so an agent's owner can start without a contract. Commercial use starts at Pro (https://www.cartesia.ai/pricing).",
      "priceSummary": "Freemium",
      "where": "hosted",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the docs index, the pricing pages or the STT reference (checked 2026-10-09).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": 134,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-10-09"
      },
      "docsUrl": "https://docs.cartesia.ai/use-the-api/stt/compare-endpoints",
      "llmsTxt": "https://docs.cartesia.ai/llms.txt",
      "openapi": "https://docs.cartesia.ai/latest.yml",
      "capabilities": [
        "speech.stt",
        "speech.streaming",
        "speech.batch",
        "speech.languages"
      ],
      "tags": [
        "official",
        "hosted",
        "model",
        "closed-source",
        "streaming",
        "batch",
        "free-tier",
        "python",
        "typescript",
        "openapi",
        "llms-txt",
        "mcp",
        "status-page",
        "security-txt",
        "soc2",
        "enterprise"
      ],
      "lastRelease": "2026-09-17",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 67,
        "grade": "B",
        "agentReady": false,
        "rank": 340,
        "ranked": true,
        "rankOf": 1486,
        "categoryRank": 10,
        "methodology": "0.7",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 74,
          "maintenance": 84,
          "payments": 35,
          "reliability": 73,
          "schema": 89,
          "security": 47,
          "transparency": 68
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-11-01"
        },
        "negative": 0,
        "verdict": "Ink 2 streams transcripts with turn detection built into the model, documented by an AsyncAPI file with typed ranges and structured errors. The terms, last revised 14 June 2024, let Cartesia train on inputs and outputs unless the customer opts out, and zero data retention is an Enterprise setting. Ink 2 has no batch endpoint and no diarisation.",
        "bestFor": "Suited to voice agents that need turn detection and transcription from one model in English, French, Hindi, Japanese or Spanish, and to teams already using Cartesia text-to-speech.",
        "strengths": [
          "`/stt/turns/websocket` emits `turn.start`, `turn.update`, `turn.eager_end`, `turn.resume` and `turn.end`, so no separate voice activity detector is needed",
          "OpenAPI and AsyncAPI files, llms.txt and Markdown twins of every docs page, with enums and numeric ranges on the WebSocket parameters",
          "Structured errors on `Cartesia-Version` 2026-03-01 and later, with `error_code`, `title`, `message`, `request_id` and an optional `doc_url`",
          "Short-lived access tokens (at most one hour) carry an `stt` grant, and admin keys are a separate key type from standard keys",
          "The status page lists Speech to Text in four regions, at 99.97% (US), 99.994% (EU and APAC) and 100% (AU) for July to October 2026"
        ],
        "weaknesses": [
          "The terms let Cartesia train models on inputs and outputs unless otherwise agreed. Opting out is a form in the Playground's data controls",
          "Zero data retention is an Enterprise plan setting, and no retention period for other plans was found in the terms, privacy policy or docs",
          "`ink-2` supports English, French, Hindi, Japanese and Spanish only and has no batch endpoint. `POST /stt` accepts `ink-whisper` only",
          "No diarisation or speaker labels in the reviewed documentation, and realtime input is raw mono PCM with `encoding` and `sample_rate` required",
          "The terms of 14 June 2024 forbid automation software (bots) and any robot or scraper that accesses the Services to collect data, which matters before any probe is run",
          "No SLA was found, and a 429 for exceeding the concurrency limit is documented without a `Retry-After` header or backoff guidance"
        ],
        "agentNotes": [
          "Use `wss://api.cartesia.ai/stt/turns/websocket` with `model=ink-2`, `encoding`, `sample_rate` and `cartesia_version=2026-08-14`. All four are required.",
          "Send raw mono audio in chunks of about 100 ms at the speed it was spoken. Pushing a whole file into the socket can return an internal server error.",
          "Read the final text from `turn.end` only. `transcript` is cumulative within a turn, so joining `turn.update` events duplicates text.",
          "Send `{\"type\": \"close\"}` after the last audio and keep reading until the server closes the socket, or the buffered tail is lost.",
          "Check `encoding` and `sample_rate` against the source before sending. The docs say the server might not return an error when they are wrong."
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 4,
        "avgRating": 3.3,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "B",
            "methodology": "0.7",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 67
          }
        ],
        "editorialScores": {
          "ergonomics": 74,
          "maintenance": 84,
          "payments": 35,
          "reliability": 73,
          "schema": 89,
          "security": 47,
          "transparency": 49
        },
        "provenanceScore": 86,
        "checked": {
          "categories": {
            "ergonomics": "2026-11-01",
            "maintenance": "2026-11-01",
            "payments": "2026-11-01",
            "reliability": "2026-11-01",
            "schema": "2026-11-01",
            "security": "2026-11-01",
            "transparency": "2026-11-01"
          },
          "last": "2026-11-01",
          "lastMoved": "2026-11-01",
          "oldest": "2026-11-01",
          "stale": false,
          "staleAfterDays": 90
        }
      },
      "connect": {
        "install": "pip install 'cartesia[websockets]'   # or: npm install @cartesia/cartesia-js",
        "claudeCode": "claude mcp add --transport http --scope user cartesia https://mcp.cartesia.ai/mcp"
      },
      "letme": {
        "capability": "https://letme.dev/speech.stt",
        "tool": "https://letme.dev/cartesia-ink-stt"
      },
      "sameCompany": [
        "cartesia-tts",
        "cartesia-voice-cloning"
      ],
      "area": "voice",
      "unitPrices": [
        {
          "item": "Ink 2 realtime, Scale plan",
          "unit": "audio-minute",
          "usd": 0.0067,
          "note": "180 credits a minute at $299 for 8M credits. Cartesia quotes $0.39 an hour"
        },
        {
          "item": "Ink 2 realtime, Startup plan",
          "unit": "audio-minute",
          "usd": 0.0071,
          "note": "180 credits a minute at $49 for 1.25M credits"
        },
        {
          "item": "Ink 2 realtime, Pro plan",
          "unit": "audio-minute",
          "usd": 0.009,
          "note": "180 credits a minute at $5 for 100,000 credits"
        },
        {
          "item": "Ink Whisper realtime, Scale plan",
          "unit": "audio-minute",
          "usd": 0.0022,
          "note": "60 credits a minute at $299 for 8M credits"
        },
        {
          "item": "Ink Whisper batch, Scale plan",
          "unit": "audio-minute",
          "usd": 0.0011,
          "note": "30 credits a minute at $299 for 8M credits"
        }
      ],
      "provenance": {
        "legalEntity": "Cartesia AI, Inc.",
        "domain": "cartesia.ai",
        "domainRegistered": "2023-05-10",
        "endpointOnVendorDomain": true,
        "terms": "https://www.cartesia.ai/legal/terms",
        "privacy": "https://www.cartesia.ai/legal/privacy",
        "statusPage": "https://status.cartesia.ai",
        "changelog": "https://docs.cartesia.ai/changelog/2026",
        "securityTxt": "valid",
        "checked": "2026-10-09",
        "score": 86
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/cartesia-ink-stt.json",
      "live": {
        "slug": "cartesia-ink-stt",
        "probe": {
          "target": "https://api.cartesia.ai",
          "method": "get",
          "lastAt": "2026-11-07T18:20:16.156024384Z",
          "lastOk": true,
          "lastStatus": 200,
          "lastMs": 58,
          "authRequired": false,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 63,
          "p95ms24h": 150,
          "samples24h": 239,
          "samples30d": 7205,
          "days": [
            {
              "date": "2026-10-09",
              "probes": 85,
              "ok": 85
            },
            {
              "date": "2026-10-10",
              "probes": 247,
              "ok": 247
            },
            {
              "date": "2026-10-11",
              "probes": 247,
              "ok": 247
            },
            {
              "date": "2026-10-12",
              "probes": 247,
              "ok": 247
            },
            {
              "date": "2026-10-13",
              "probes": 248,
              "ok": 248
            },
            {
              "date": "2026-10-14",
              "probes": 249,
              "ok": 249
            },
            {
              "date": "2026-10-15",
              "probes": 253,
              "ok": 253
            },
            {
              "date": "2026-10-16",
              "probes": 252,
              "ok": 252
            },
            {
              "date": "2026-10-17",
              "probes": 253,
              "ok": 253
            },
            {
              "date": "2026-10-18",
              "probes": 256,
              "ok": 256
            },
            {
              "date": "2026-10-19",
              "probes": 255,
              "ok": 255
            },
            {
              "date": "2026-10-20",
              "probes": 252,
              "ok": 252
            },
            {
              "date": "2026-10-21",
              "probes": 253,
              "ok": 253
            },
            {
              "date": "2026-10-22",
              "probes": 253,
              "ok": 253
            },
            {
              "date": "2026-10-23",
              "probes": 248,
              "ok": 248
            },
            {
              "date": "2026-10-24",
              "probes": 251,
              "ok": 251
            },
            {
              "date": "2026-10-25",
              "probes": 250,
              "ok": 250
            },
            {
              "date": "2026-10-26",
              "probes": 252,
              "ok": 252
            },
            {
              "date": "2026-10-27",
              "probes": 249,
              "ok": 249
            },
            {
              "date": "2026-10-28",
              "probes": 251,
              "ok": 251
            },
            {
              "date": "2026-10-29",
              "probes": 249,
              "ok": 249
            },
            {
              "date": "2026-10-30",
              "probes": 248,
              "ok": 248
            },
            {
              "date": "2026-10-31",
              "probes": 251,
              "ok": 251
            },
            {
              "date": "2026-11-01",
              "probes": 249,
              "ok": 249
            },
            {
              "date": "2026-11-02",
              "probes": 250,
              "ok": 250
            },
            {
              "date": "2026-11-03",
              "probes": 248,
              "ok": 248
            },
            {
              "date": "2026-11-04",
              "probes": 246,
              "ok": 246
            },
            {
              "date": "2026-11-05",
              "probes": 185,
              "ok": 185
            },
            {
              "date": "2026-11-06",
              "probes": 241,
              "ok": 241
            },
            {
              "date": "2026-11-07",
              "probes": 187,
              "ok": 187
            }
          ]
        },
        "vendorStatus": {
          "page": "https://status.cartesia.ai",
          "indicator": "none",
          "summary": "All Systems Operational",
          "checkedAt": "2026-11-07T18:20:38.071530544Z"
        },
        "versions": [
          {
            "registry": "github",
            "name": "cartesia-ai/cartesia-python",
            "version": "v4.2.0",
            "released": "2026-09-02",
            "seenAt": "2026-11-06T23:13:21.986639847Z"
          },
          {
            "registry": "npm",
            "name": "@cartesia/cartesia-js",
            "version": "4.2.0",
            "seenAt": "2026-11-06T23:13:20.096185165Z"
          },
          {
            "registry": "pypi",
            "name": "cartesia",
            "version": "4.2.0",
            "released": "2026-09-02",
            "seenAt": "2026-11-06T23:13:19.901762474Z"
          },
          {
            "registry": "pypi",
            "name": "cartesia-mcp",
            "version": "0.29.0",
            "released": "2026-11-05",
            "seenAt": "2026-11-06T23:13:20.32693699Z"
          }
        ],
        "githubStars": 139,
        "npmWeekly": 105860,
        "pypiWeekly": 241069,
        "securityTxt": {
          "url": "https://cartesia.ai/.well-known/security.txt",
          "state": "valid",
          "expires": "2027-10-03T00:00:00.000Z",
          "checkedAt": "2026-11-07T16:01:22.207018558Z"
        },
        "llmsTxt": {
          "url": "https://docs.cartesia.ai/llms.txt",
          "ok": true,
          "status": 200,
          "checkedAt": "2026-11-07T15:31:46.51486748Z"
        },
        "domain": {
          "domain": "cartesia.ai",
          "registered": "2023-05-10",
          "source": "https://rdap.identitydigital.services/rdap/domain/cartesia.ai",
          "checkedAt": "2026-11-01T14:10:04.149838535Z"
        },
        "pages": [
          {
            "url": "https://docs.cartesia.ai/changelog/2026",
            "kind": "changelog",
            "status": 200,
            "checkedAt": "2026-11-07T14:05:23.843746019Z",
            "changedAt": "2026-10-26T03:13:50.40257074Z",
            "fingerprint": "fd5cc0bf0fcf"
          },
          {
            "url": "https://docs.cartesia.ai/pricing",
            "kind": "pricing",
            "status": 200,
            "checkedAt": "2026-11-07T14:05:26.379517521Z",
            "changedAt": "2026-10-31T06:09:15.21798849Z",
            "fingerprint": "7a19359f90b8"
          },
          {
            "url": "https://www.cartesia.ai/pricing",
            "kind": "pricing",
            "status": 200,
            "checkedAt": "2026-11-07T14:26:28.63211243Z",
            "changedAt": "2026-11-07T14:26:28.63211243Z",
            "fingerprint": "3a338414361a"
          },
          {
            "url": "https://www.cartesia.ai/legal/privacy",
            "kind": "privacy",
            "status": 200,
            "checkedAt": "2026-11-07T14:26:23.916606258Z",
            "changedAt": "2026-11-07T14:26:23.916606258Z",
            "fingerprint": "8fbb87fa0f90"
          },
          {
            "url": "https://www.cartesia.ai/legal/terms",
            "kind": "terms",
            "status": 200,
            "checkedAt": "2026-11-07T14:26:26.19166268Z",
            "changedAt": "2026-11-07T14:26:26.19166268Z",
            "fingerprint": "413be09c5dc8"
          }
        ],
        "github": {
          "repo": "cartesia-ai/cartesia-python",
          "checkedAt": "2026-11-02T08:37:37.378374658Z",
          "stars": 138,
          "archived": false,
          "issuesEnabled": true,
          "pushedAt": "2026-10-30T18:24:19Z",
          "openIssues": 1,
          "openPRs": 8,
          "issuesOpened90d": 1,
          "issuesClosed90d": 1,
          "prsMerged90d": 4,
          "ci": {
            "branch": "main",
            "runs": 50,
            "success": 33,
            "failure": 0,
            "other": 17,
            "latest": "skipped",
            "latestAt": "2026-10-23T17:43:01Z"
          },
          "replies": {
            "sampled": 14,
            "unanswered": 1,
            "medianDays": 54.7
          }
        },
        "updatedAt": "2026-11-07T18:20:16.156024384Z"
      }
    },
    "answer": "Cartesia Ink scores 67 (B) on agent readiness against Inworld STT's 54.7 (C), and leads in 5 of 7 scored categories. Inworld STT leads on security \u0026 auth and payments \u0026 pricing.",
    "b": {
      "slug": "inworld-stt",
      "name": "Inworld STT",
      "vendor": "Inworld AI",
      "vendorUrl": "https://inworld.ai",
      "kind": "model",
      "category": "speech-to-text",
      "summary": "Inworld's speech-to-text API runs its `inworld/inworld-stt-1` model in 30 languages over synchronous HTTP, bidirectional WebSocket streaming and asynchronous jobs, returning Voice Profile signals (age, emotion, pitch, accent) and turn detection alongside the transcript.",
      "url": "https://www.anchorterminal.com/tools/inworld-stt",
      "markdownUrl": "https://www.anchorterminal.com/tools/inworld-stt.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/inworld-stt.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/inworld-stt.json",
      "dns": "inworld-stt.grade.anchorterminal.com",
      "transports": [
        "http",
        "websocket"
      ],
      "packages": [
        {
          "registry": "npm",
          "name": "@inworld/cli"
        }
      ],
      "auth": "api-key",
      "authNotes": "Every call sends `Authorization: Basic` with the Base64 `key_id:secret` credential from the Portal or the CLI. Keys belong to a workspace and are deleted to revoke. Browsers pass a one-time token in the `bearer_` WebSocket subprotocol rather than the URL.",
      "pricing": "usage",
      "pricingNotes": "$0.15 an hour of audio on the free On-Demand plan and $0.10 on the paid plans ($25 to $1,500 a month), billed per second. On-Demand includes up to 400 minutes free. Diarisation and Voice Profile are separate per-second add-ons. Asynchronous jobs need a payment method.",
      "priceSummary": "Pay per use",
      "where": "local",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the docs, llms.txt or pricing page (checked 2026-11-06). Plans and credits are bought in the Portal.",
        "endpoints": []
      },
      "toolCount": 0,
      "popularity": {
        "githubStars": null,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-11-06"
      },
      "docsUrl": "https://docs.inworld.ai/stt/overview",
      "llmsTxt": "https://docs.inworld.ai/llms.txt",
      "capabilities": [
        "speech.stt",
        "speech.streaming",
        "speech.batch",
        "speech.diarisation",
        "speech.languages"
      ],
      "tags": [
        "hosted",
        "usage",
        "free-tier",
        "no-card",
        "closed-source",
        "llms-txt",
        "streaming",
        "batch",
        "mcp",
        "enterprise"
      ],
      "lastRelease": "2026-10-29",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 54.7,
        "grade": "C",
        "agentReady": false,
        "rank": 895,
        "ranked": true,
        "rankOf": 1486,
        "categoryRank": 16,
        "methodology": "0.7",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 56,
          "maintenance": 41,
          "payments": 40,
          "reliability": 60,
          "schema": 54,
          "security": 63,
          "transparency": 60
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-11-06"
        },
        "negative": 0,
        "verdict": "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.",
        "bestFor": "Low-cost live transcription for voice agents, with speaker traits.",
        "strengths": [
          "$0.15 an hour on the free plan and $0.10 on paid plans, billed per second, with 400 free minutes",
          "Sync, WebSocket streaming and async jobs on one model, with turn detection and Voice Profile signals",
          "Browser tokens travel in a WebSocket subprotocol, not the URL",
          "Zero data retention keeps audio and transcripts in memory, and the docs include it from the Developer plan",
          "llms.txt, Markdown twins and a docs MCP server"
        ],
        "weaknesses": [
          "No OpenAPI or other machine-readable contract",
          "The STT release notes path asks for a login, so changes to the model aren't publicly dated",
          "Status history couldn't be read, and an SLA exists only for Enterprise",
          "Speaker diarisation is experimental and async jobs run on a `v1alpha` operations route",
          "Docs and the STT product page disagree on which plans include zero data retention"
        ],
        "agentNotes": [
          "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:async` for 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"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "C",
            "methodology": "0.7",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 54.7
          }
        ],
        "editorialScores": {
          "ergonomics": 56,
          "maintenance": 41,
          "payments": 40,
          "reliability": 60,
          "schema": 54,
          "security": 63,
          "transparency": 45
        },
        "provenanceScore": 75,
        "checked": {
          "categories": {
            "ergonomics": "2026-11-06",
            "maintenance": "2026-11-06",
            "payments": "2026-11-06",
            "reliability": "2026-11-06",
            "schema": "2026-11-06",
            "security": "2026-11-06",
            "transparency": "2026-11-06"
          },
          "last": "2026-11-06",
          "oldest": "2026-11-06",
          "stale": false,
          "staleAfterDays": 90
        }
      },
      "connect": {
        "install": "npm install -g @inworld/cli",
        "claudeCode": "claude mcp add inworld -- inworld mcp"
      },
      "letme": {
        "capability": "https://letme.dev/speech.stt",
        "tool": "https://letme.dev/inworld-stt"
      },
      "sameCompany": [
        "inworld-tts",
        "inworld-realtime",
        "inworld-voice-cloning"
      ],
      "area": "voice",
      "unitPrices": [
        {
          "item": "STT-1, On-Demand",
          "unit": "audio-minute",
          "usd": 0.0025,
          "note": "$0.15 an hour"
        },
        {
          "item": "STT-1, paid plans",
          "unit": "audio-minute",
          "usd": 0.00167,
          "note": "$0.10 an hour on Creator to Growth"
        }
      ],
      "provenance": {
        "legalEntity": "Theai, Inc. dba Inworld AI",
        "domain": "inworld.ai",
        "domainRegistered": "",
        "endpointOnVendorDomain": true,
        "terms": "https://inworld.ai/terms",
        "privacy": "https://inworld.ai/privacy",
        "statusPage": "https://status.inworld.ai",
        "changelog": "https://docs.inworld.ai/release-notes/realtime",
        "securityTxt": "none",
        "checked": "2026-11-06",
        "notes": [
          "The Terms of Service (effective 11 June 2025) are an agreement with Theai, Inc. dba Inworld AI under California law, with courts in Santa Clara. The Privacy Notice (last updated 18 January 2026) names Theai, Inc.",
          "inworld.ai/.well-known/security.txt returns 404. The security page links a vulnerability report form.",
          "status.inworld.ai runs the open-source issue-status app, which draws incidents from GitHub issues in inworld-ai/inworld-issue-status. Its history wasn't read, because GitHub's robots.txt couldn't be read from our environment.",
          "inworld.ai's robots.txt allows Claude agents on the paths read and sets `Content-Signal: ai-train=no, search=yes, ai-input=no`. docs.inworld.ai has no such signal.",
          "The domain's registration date wasn't established, because the RDAP lookup failed.",
          "firstReleased is left empty. No dated STT launch was found, and the STT release notes path asks for a Portal login."
        ],
        "score": 75
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/inworld-stt.json",
      "live": {
        "slug": "inworld-stt",
        "versions": [
          {
            "registry": "npm",
            "name": "@inworld/cli",
            "version": "1.5.0",
            "seenAt": "2026-11-06T23:35:05.474861108Z"
          }
        ],
        "npmWeekly": 290,
        "securityTxt": {
          "url": "https://inworld.ai/.well-known/security.txt",
          "state": "none",
          "checkedAt": "2026-11-07T16:01:11.794771951Z"
        },
        "llmsTxt": {
          "url": "https://docs.inworld.ai/llms.txt",
          "ok": true,
          "status": 200,
          "checkedAt": "2026-11-07T15:32:47.741512787Z"
        },
        "updatedAt": "2026-11-07T16:01:11.794771951Z"
      }
    },
    "edges": [
      {
        "by": 43,
        "category": "maintenance",
        "leads": "cartesia-ink-stt",
        "name": "Maintenance \u0026 community",
        "reasons": {
          "a": "Read as a model, on the lines deepgram-stt, gladia-stt and cartesia-tts use for hosted speech models (recency 30, dated releases 10, deprecation notice 10, support 15, issues 10, SDKs 15, health 10). The `cartesia-mcp` server, which has a `speech_to_text` tool, released 0.28.1 on 30 October 2026 with a bug fix, after 0.27.0 (20 October) and 0.28.0 (27 October). The model page still dates `ink-2` and `ink-preview` 17 September 2026 (30). In the 90 days from 3 August the SDKs released 4.0.0, 4.0.1, 4.1.0 and 4.2.0 (14 August to 2 September) and the MCP server several releases, with changelog entries for August and September (10). The deprecations page gives dated sunsets, and Sonic-2, Sonic Turbo and `sonic-3-2025-10-27` were sunset after 20 October 2026, announced in the July changelog. No minimum notice period is stated and no Ink model has been retired, read as cartesia-tts is on the same page (5 of 10). The changelog has speech-to-text entries in May, June, July and September 2026, dated by month only, and no October entry (11 of 15). The Python SDK repository had 4 open issues on 9 October, per that check, not re-read on 1 November since GitHub's pages answered 403 (5 of 10). Official `cartesia` and `@cartesia/cartesia-js` SDKs at 4.2.0 (2 September 2026), generated for API version 2026-08-14 (15). CI workflows, release automation and lock files in both SDK repositories, with dependency updates merged on 23 October (8 of 10). 30 + 10 + 5 + 11 + 5 + 15 + 8 = 84.",
          "b": "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."
        },
        "scores": {
          "a": 84,
          "b": 41
        }
      },
      {
        "by": 35,
        "category": "schema",
        "leads": "cartesia-ink-stt",
        "name": "Schema \u0026 documentation",
        "reasons": {
          "a": "Model reading. The docs index links an OpenAPI file (`latest.yml`) and AsyncAPI files for the WebSocket endpoints, and each reference page embeds its part of them (25). llms.txt with a Markdown twin of every page (10). The comparison page says which of the three endpoints to use and when, and the turn detection guide explains each event and threshold (18 of 20). The AsyncAPI definition has enums for `encoding` and `cartesia_version`, minimum and maximum values on the four turn settings and required fields marked. `model` is a plain string on the auto endpoint (13 of 15). Example scripts for each endpoint in Python and TypeScript and an errors page with nine codes. `model_sunsetted` appears on the deprecations page and not in that table, and the docs say a wrong `encoding` or `sample_rate` might not return an error (11 of 15). Dated API versions through the `Cartesia-Version` header and a changelog grouped by month with no day dates (12 of 15).",
          "b": "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."
        },
        "scores": {
          "a": 89,
          "b": 54
        }
      },
      {
        "by": 18,
        "category": "ergonomics",
        "leads": "cartesia-ink-stt",
        "name": "Agent ergonomics",
        "reasons": {
          "a": "API reading, as for the other speech-to-text listings. Turn events carry a cumulative transcript that is never revised, so an agent reads one `turn.end` a turn, and word timestamps are opt-in on the manual and batch endpoints (20 of 25). There is nothing to page through. Batch takes a file of any length without client chunking, keyterms steer vocabulary, and there is no diarisation or subtitle output (12 of 20). Errors are structured JSON with `error_code`, `title`, `message`, `request_id` and an optional `doc_url` on API version 2026-03-01 and later (17 of 20). Transcription holds no state to duplicate and the SDKs retry failed HTTP calls. A realtime session cannot be resumed, and nothing on reconnecting was found (12 of 20). Realtime needs `model`, `encoding`, `sample_rate` and the version, turn settings have documented defaults, and there are official Python and TypeScript SDKs. Realtime accepts raw PCM only (13 of 15).",
          "b": "API reading of the checklist. Voice Profile, word timestamps and diarisation are opt-in, and responses carry a `usage` block (18 of 25). No lists to page. Async jobs return an operation to poll (8 of 20). Errors carry a numeric gRPC code and message on both endpoints, but a malformed first message closes the socket with 1005 and no frame (12 of 20). Sync calls are stateless and async calls return an operation, with no idempotency key, and empty transcripts and add-ons are billed (10 of 20). A call needs a model, an encoding and the audio. No STT SDK was found, only the CLI and its MCP server and REST examples (8 of 15). Total 56."
        },
        "scores": {
          "a": 74,
          "b": 56
        }
      },
      {
        "by": 16,
        "category": "security",
        "leads": "inworld-stt",
        "name": "Security \u0026 auth",
        "reasons": {
          "a": "Model reading. Standard keys (`sk_car_...`) and admin keys are separate types that are not interchangeable, and a server can mint an access token with an `stt` grant that lasts at most one hour. That token travels in the `access_token` query parameter on WebSockets, the API key itself goes in a header, and no key limited to speech-to-text was found. The STT WebSocket definition, re-read on 1 November, lists `access_token` in the query as a security scheme. The checklist takes 10 off for a secret that can travel in a URL query string as a documented option, and this run takes the full 10 for short-lived OAuth tokens in `?access_token=` on every Google API listing, so the earlier 5 is brought into line (26, less 10, 16 of 30). The terms, last revised 14 June 2024, say inputs, outputs and interactions may be used to train models unless otherwise agreed, with an opt-out form in the Playground's data controls (5 of 20). Zero data retention covers STT audio and transcripts and is limited to the Enterprise plan. No retention period for other plans was found, and the DPA gives 180 days for deletion after termination (5 of 15). Credit usage and key metadata are readable through admin endpoints. No audit log was found (7 of 15). security.txt is valid until 3 October 2027 with a contact and a policy link to the trust centre. The docs and pricing page state SOC 2 Type II, HIPAA and PCI-DSS. The trust centre is drawn by script and was not read, and no bug bounty was found (14 of 20). 16 + 5 + 5 + 7 + 14 = 47.",
          "b": "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."
        },
        "scores": {
          "a": 47,
          "b": 63
        }
      },
      {
        "by": 13,
        "category": "reliability",
        "leads": "cartesia-ink-stt",
        "name": "Reliability",
        "reasons": {
          "a": "Hosted reading. The status page at status.cartesia.ai (incident.io) lists Speech to Text as its own component in four regions (20). Its RSS feed, re-read on 1 November, now names each incident's components. In the 90 days from 3 August two incidents touch speech-to-text, both partial and read as minor, as this run reads one region or some requests. On 2 September some clients in the US regions saw connection errors that cleared on retry (Text to Speech and Speech to Text, US), and on 7 October customers in the US regions saw higher latency for some API requests, from 12:29 to about 18:23 (partial outage, Text to Speech, Speech to Text and Voice Cloning, US). The 3 September throttling named only Text to Speech in APAC, the 8 October errors only the Playground and Voice Agents, and the 15 October Playground outage says API services were unaffected. The 1 August API-wide incident has left the window. Minor only (20). Concurrency limits are published per plan, 8, 12, 20 and 60 concurrent STT requests, with a 3-minute idle timeout on sockets (15). Exceeding the limit returns 429 with the `concurrency_limited` code, and the SDKs retry 429 and 5xx twice with backoff on HTTP calls. No `Retry-After` header, backoff guidance or reconnection advice for a dropped socket was found (8 of 15). No SLA was found for any plan (0). `ink-2` is marked Stable on the model page re-read on 1 November, with `ink-preview` as the preview line (10). 20 + 20 + 15 + 8 + 0 + 10 = 73.",
          "b": "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."
        },
        "scores": {
          "a": 73,
          "b": 60
        }
      },
      {
        "by": 8,
        "category": "transparency",
        "leads": "cartesia-ink-stt",
        "name": "Transparency \u0026 trust",
        "reasons": {
          "a": "The service is closed and the SDKs are Apache-2.0. The Terms of Service cover the website, its subdomains and APIs, were last revised on 14 June 2024, describe a platform for synthesised sound and never mention transcription (12 of 30). The terms and privacy policy agree that content may be used for training with an opt-out. The DPA says Cartesia will not retain or use customer personal data beyond performing the services, which sits uneasily with the training licence. No retention period is given outside zero data retention, and the privacy policy says the services are designed for users in the United States only while regional endpoints are sold in four other regions (12 of 30). A deprecations page with dated sunsets and a stated promise to preserve fields for a pinned `Cartesia-Version` (15 of 20). The DPA promises 30 days' notice of sub-processor changes to subscribers and points to a list in the trust centre, which we could not read. Regional deployments are named for Enterprise only (10 of 20).",
          "b": "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."
        },
        "scores": {
          "a": 68,
          "b": 60
        }
      }
    ],
    "facts": [
      {
        "a": "Model API",
        "b": "Model API",
        "name": "Kind"
      },
      {
        "a": "Cartesia",
        "b": "Inworld AI",
        "name": "Vendor"
      },
      {
        "a": "https://api.cartesia.ai",
        "b": "no (local only)",
        "name": "Hosted endpoint"
      },
      {
        "a": "HTTP, websocket, Streamable HTTP",
        "b": "HTTP, websocket",
        "name": "Transports"
      },
      {
        "a": "API key",
        "b": "API key",
        "name": "Auth"
      },
      {
        "a": "Freemium",
        "b": "Pay per use",
        "name": "Pricing"
      },
      {
        "a": "not published",
        "b": "$0.0017 per minute of audio",
        "name": "Price for speech-to-text"
      },
      {
        "a": "no",
        "b": "no",
        "name": "x402"
      },
      {
        "a": "Proprietary hosted service under the Cartesia Terms of Service. The Python and JavaScript SDKs are Apache-2.0",
        "b": "none",
        "name": "Licence"
      },
      {
        "a": "none",
        "b": "0",
        "name": "Tools exposed"
      },
      {
        "a": "no",
        "b": "no",
        "name": "Read-only variant documented"
      },
      {
        "a": "yes",
        "b": "yes",
        "name": "llms.txt"
      },
      {
        "a": "2026-09-17",
        "b": "2026-10-29",
        "name": "Last release"
      },
      {
        "a": "2024-06-14",
        "b": "2025-06-11",
        "name": "Terms last updated"
      },
      {
        "a": "2024-06-14",
        "b": "2026-01-18",
        "name": "Privacy policy last updated"
      },
      {
        "a": "yes, with an opt-out",
        "b": "not found in the text",
        "name": "Customer content may train models"
      },
      {
        "a": "yes",
        "b": "not found in the text",
        "name": "Terms restrict automated access"
      },
      {
        "a": "yes",
        "b": "not found in the text",
        "name": "Terms restrict benchmarking"
      },
      {
        "a": "not found in the text",
        "b": "not found in the text",
        "name": "Terms or service can change without notice"
      },
      {
        "a": "yes",
        "b": "not found in the text",
        "name": "Arbitration or class-action waiver"
      },
      {
        "a": "134 stars",
        "b": "none",
        "name": "Popularity"
      },
      {
        "a": "3.3/5 (4)",
        "b": "none",
        "name": "Agent reviews"
      }
    ],
    "faq": [
      {
        "answer": "Cartesia Ink scores 67 (B) on agent readiness against Inworld STT's 54.7 (C), and leads in 5 of 7 scored categories. Inworld STT leads on security \u0026 auth and payments \u0026 pricing.",
        "question": "Which is better for AI agents, Cartesia Ink or Inworld STT?"
      },
      {
        "answer": "Both need an API key.",
        "question": "Do Cartesia Ink and Inworld STT need an API key?"
      },
      {
        "answer": "Cartesia Ink has a hosted endpoint at https://api.cartesia.ai. No hosted endpoint is listed for Inworld STT.",
        "question": "Can an agent call Cartesia Ink and Inworld STT without installing anything?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": [
          "Reliability, 73 against 60",
          "Schema \u0026 documentation, 89 against 54",
          "Agent ergonomics, 74 against 56",
          "Maintenance \u0026 community, 84 against 41",
          "Transparency \u0026 trust, 68 against 60"
        ],
        "also": [
          "A hosted endpoint, with nothing to install"
        ],
        "goodFor": "Suited to voice agents that need turn detection and transcription from one model in English, French, Hindi, Japanese or Spanish, and to teams already using Cartesia text-to-speech.",
        "slug": "cartesia-ink-stt",
        "watchFor": "The terms let Cartesia train models on inputs and outputs unless otherwise agreed. Opting out is a form in the Playground's data controls"
      },
      {
        "aheadOn": [
          "Security \u0026 auth, 63 against 47",
          "Payments \u0026 pricing, 40 against 35"
        ],
        "also": [
          "Free to start without a card"
        ],
        "goodFor": "Low-cost live transcription for voice agents, with speaker traits.",
        "slug": "inworld-stt",
        "watchFor": "No OpenAPI or other machine-readable contract"
      }
    ],
    "history": {
      "cartesia-ink-stt": [
        {
          "causes": [
            "correction"
          ],
          "date": "2026-11-01",
          "delta": -1,
          "from": 68,
          "fromGrade": "B",
          "to": 67,
          "toGrade": "B"
        },
        {
          "causes": [
            "method"
          ],
          "date": "2026-10-27",
          "delta": 0.1,
          "from": 67.9,
          "fromGrade": "B",
          "to": 68,
          "toGrade": "B"
        }
      ],
      "inworld-stt": null
    },
    "job": {
      "capability": "speech.stt",
      "name": "Speech-to-text"
    },
    "others": [
      {
        "json": "https://www.anchorterminal.com/compare/amazon-transcribe-vs-cartesia-ink-stt.json",
        "title": "Amazon Transcribe vs Cartesia Ink",
        "url": "https://www.anchorterminal.com/compare/amazon-transcribe-vs-cartesia-ink-stt"
      },
      {
        "json": "https://www.anchorterminal.com/compare/amazon-transcribe-vs-inworld-stt.json",
        "title": "Amazon Transcribe vs Inworld STT",
        "url": "https://www.anchorterminal.com/compare/amazon-transcribe-vs-inworld-stt"
      },
      {
        "json": "https://www.anchorterminal.com/compare/assemblyai-stt-vs-cartesia-ink-stt.json",
        "title": "AssemblyAI Speech-to-Text (Universal) vs Cartesia Ink",
        "url": "https://www.anchorterminal.com/compare/assemblyai-stt-vs-cartesia-ink-stt"
      },
      {
        "json": "https://www.anchorterminal.com/compare/assemblyai-stt-vs-inworld-stt.json",
        "title": "AssemblyAI Speech-to-Text (Universal) vs Inworld STT",
        "url": "https://www.anchorterminal.com/compare/assemblyai-stt-vs-inworld-stt"
      },
      {
        "json": "https://www.anchorterminal.com/compare/azure-speech-to-text-vs-cartesia-ink-stt.json",
        "title": "Azure AI Speech speech-to-text vs Cartesia Ink",
        "url": "https://www.anchorterminal.com/compare/azure-speech-to-text-vs-cartesia-ink-stt"
      },
      {
        "json": "https://www.anchorterminal.com/compare/azure-speech-to-text-vs-inworld-stt.json",
        "title": "Azure AI Speech speech-to-text vs Inworld STT",
        "url": "https://www.anchorterminal.com/compare/azure-speech-to-text-vs-inworld-stt"
      },
      {
        "json": "https://www.anchorterminal.com/compare/cartesia-ink-stt-vs-deepgram-stt.json",
        "title": "Cartesia Ink vs Deepgram Speech-to-Text (Nova-3, Flux)",
        "url": "https://www.anchorterminal.com/compare/cartesia-ink-stt-vs-deepgram-stt"
      },
      {
        "json": "https://www.anchorterminal.com/compare/cartesia-ink-stt-vs-elevenlabs-scribe.json",
        "title": "Cartesia Ink vs ElevenLabs Scribe Speech to Text API",
        "url": "https://www.anchorterminal.com/compare/cartesia-ink-stt-vs-elevenlabs-scribe"
      },
      {
        "json": "https://www.anchorterminal.com/compare/cartesia-ink-stt-vs-giggy-stt.json",
        "title": "Cartesia Ink vs Giggy Speech to Text",
        "url": "https://www.anchorterminal.com/compare/cartesia-ink-stt-vs-giggy-stt"
      },
      {
        "json": "https://www.anchorterminal.com/compare/cartesia-ink-stt-vs-gladia-stt.json",
        "title": "Cartesia Ink vs Gladia Speech-to-Text API + MCP",
        "url": "https://www.anchorterminal.com/compare/cartesia-ink-stt-vs-gladia-stt"
      },
      {
        "json": "https://www.anchorterminal.com/compare/cartesia-ink-stt-vs-google-speech-to-text.json",
        "title": "Cartesia Ink vs Google Cloud Speech-to-Text",
        "url": "https://www.anchorterminal.com/compare/cartesia-ink-stt-vs-google-speech-to-text"
      },
      {
        "json": "https://www.anchorterminal.com/compare/cartesia-ink-stt-vs-groq-speech-to-text.json",
        "title": "Cartesia Ink vs Groq Speech-to-Text",
        "url": "https://www.anchorterminal.com/compare/cartesia-ink-stt-vs-groq-speech-to-text"
      },
      {
        "json": "https://www.anchorterminal.com/compare/cartesia-ink-stt-vs-ibm-watson-stt.json",
        "title": "Cartesia Ink vs IBM Watson Speech to Text",
        "url": "https://www.anchorterminal.com/compare/cartesia-ink-stt-vs-ibm-watson-stt"
      },
      {
        "json": "https://www.anchorterminal.com/compare/cartesia-ink-stt-vs-minimax-stt.json",
        "title": "Cartesia Ink vs MiniMax Speech-to-Text",
        "url": "https://www.anchorterminal.com/compare/cartesia-ink-stt-vs-minimax-stt"
      },
      {
        "json": "https://www.anchorterminal.com/compare/cartesia-ink-stt-vs-mistral-voxtral-transcribe.json",
        "title": "Cartesia Ink vs Mistral Voxtral Transcribe",
        "url": "https://www.anchorterminal.com/compare/cartesia-ink-stt-vs-mistral-voxtral-transcribe"
      },
      {
        "json": "https://www.anchorterminal.com/compare/cartesia-ink-stt-vs-openai-speech-to-text.json",
        "title": "Cartesia Ink vs OpenAI Speech to Text",
        "url": "https://www.anchorterminal.com/compare/cartesia-ink-stt-vs-openai-speech-to-text"
      },
      {
        "json": "https://www.anchorterminal.com/compare/cartesia-ink-stt-vs-rev-ai-stt.json",
        "title": "Cartesia Ink vs Rev AI Speech-to-Text API",
        "url": "https://www.anchorterminal.com/compare/cartesia-ink-stt-vs-rev-ai-stt"
      },
      {
        "json": "https://www.anchorterminal.com/compare/cartesia-ink-stt-vs-smallest-pulse-stt.json",
        "title": "Cartesia Ink vs Smallest.ai Pulse STT",
        "url": "https://www.anchorterminal.com/compare/cartesia-ink-stt-vs-smallest-pulse-stt"
      },
      {
        "json": "https://www.anchorterminal.com/compare/cartesia-ink-stt-vs-soniox-stt.json",
        "title": "Cartesia Ink vs Soniox Speech-to-Text",
        "url": "https://www.anchorterminal.com/compare/cartesia-ink-stt-vs-soniox-stt"
      },
      {
        "json": "https://www.anchorterminal.com/compare/cartesia-ink-stt-vs-speechmatics-stt.json",
        "title": "Cartesia Ink vs Speechmatics Speech-to-Text",
        "url": "https://www.anchorterminal.com/compare/cartesia-ink-stt-vs-speechmatics-stt"
      },
      {
        "json": "https://www.anchorterminal.com/compare/deepgram-stt-vs-inworld-stt.json",
        "title": "Deepgram Speech-to-Text (Nova-3, Flux) vs Inworld STT",
        "url": "https://www.anchorterminal.com/compare/deepgram-stt-vs-inworld-stt"
      },
      {
        "json": "https://www.anchorterminal.com/compare/elevenlabs-scribe-vs-inworld-stt.json",
        "title": "ElevenLabs Scribe Speech to Text API vs Inworld STT",
        "url": "https://www.anchorterminal.com/compare/elevenlabs-scribe-vs-inworld-stt"
      },
      {
        "json": "https://www.anchorterminal.com/compare/giggy-stt-vs-inworld-stt.json",
        "title": "Giggy Speech to Text vs Inworld STT",
        "url": "https://www.anchorterminal.com/compare/giggy-stt-vs-inworld-stt"
      },
      {
        "json": "https://www.anchorterminal.com/compare/gladia-stt-vs-inworld-stt.json",
        "title": "Gladia Speech-to-Text API + MCP vs Inworld STT",
        "url": "https://www.anchorterminal.com/compare/gladia-stt-vs-inworld-stt"
      },
      {
        "json": "https://www.anchorterminal.com/compare/google-speech-to-text-vs-inworld-stt.json",
        "title": "Google Cloud Speech-to-Text vs Inworld STT",
        "url": "https://www.anchorterminal.com/compare/google-speech-to-text-vs-inworld-stt"
      },
      {
        "json": "https://www.anchorterminal.com/compare/groq-speech-to-text-vs-inworld-stt.json",
        "title": "Groq Speech-to-Text vs Inworld STT",
        "url": "https://www.anchorterminal.com/compare/groq-speech-to-text-vs-inworld-stt"
      },
      {
        "json": "https://www.anchorterminal.com/compare/ibm-watson-stt-vs-inworld-stt.json",
        "title": "IBM Watson Speech to Text vs Inworld STT",
        "url": "https://www.anchorterminal.com/compare/ibm-watson-stt-vs-inworld-stt"
      },
      {
        "json": "https://www.anchorterminal.com/compare/inworld-stt-vs-minimax-stt.json",
        "title": "Inworld STT vs MiniMax Speech-to-Text",
        "url": "https://www.anchorterminal.com/compare/inworld-stt-vs-minimax-stt"
      },
      {
        "json": "https://www.anchorterminal.com/compare/inworld-stt-vs-mistral-voxtral-transcribe.json",
        "title": "Inworld STT vs Mistral Voxtral Transcribe",
        "url": "https://www.anchorterminal.com/compare/inworld-stt-vs-mistral-voxtral-transcribe"
      },
      {
        "json": "https://www.anchorterminal.com/compare/inworld-stt-vs-openai-speech-to-text.json",
        "title": "Inworld STT vs OpenAI Speech to Text",
        "url": "https://www.anchorterminal.com/compare/inworld-stt-vs-openai-speech-to-text"
      },
      {
        "json": "https://www.anchorterminal.com/compare/inworld-stt-vs-rev-ai-stt.json",
        "title": "Inworld STT vs Rev AI Speech-to-Text API",
        "url": "https://www.anchorterminal.com/compare/inworld-stt-vs-rev-ai-stt"
      },
      {
        "json": "https://www.anchorterminal.com/compare/inworld-stt-vs-smallest-pulse-stt.json",
        "title": "Inworld STT vs Smallest.ai Pulse STT",
        "url": "https://www.anchorterminal.com/compare/inworld-stt-vs-smallest-pulse-stt"
      },
      {
        "json": "https://www.anchorterminal.com/compare/inworld-stt-vs-soniox-stt.json",
        "title": "Inworld STT vs Soniox Speech-to-Text",
        "url": "https://www.anchorterminal.com/compare/inworld-stt-vs-soniox-stt"
      },
      {
        "json": "https://www.anchorterminal.com/compare/inworld-stt-vs-speechmatics-stt.json",
        "title": "Inworld STT vs Speechmatics Speech-to-Text",
        "url": "https://www.anchorterminal.com/compare/inworld-stt-vs-speechmatics-stt"
      }
    ],
    "panel": null,
    "scores": [
      {
        "by": 13,
        "cartesia-ink-stt": 73,
        "edge": "cartesia-ink-stt",
        "inworld-stt": 60,
        "key": "reliability",
        "name": "Reliability",
        "weight": 16
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "by": 35,
        "cartesia-ink-stt": 89,
        "edge": "cartesia-ink-stt",
        "inworld-stt": 54,
        "key": "schema",
        "name": "Schema \u0026 documentation",
        "weight": 13
      },
      {
        "by": 18,
        "cartesia-ink-stt": 74,
        "edge": "cartesia-ink-stt",
        "inworld-stt": 56,
        "key": "ergonomics",
        "name": "Agent ergonomics",
        "weight": 13
      },
      {
        "by": 16,
        "cartesia-ink-stt": 47,
        "edge": "inworld-stt",
        "inworld-stt": 63,
        "key": "security",
        "name": "Security \u0026 auth",
        "weight": 14
      },
      {
        "by": 5,
        "cartesia-ink-stt": 35,
        "edge": "inworld-stt",
        "inworld-stt": 40,
        "key": "payments",
        "name": "Payments \u0026 pricing",
        "weight": 10
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "by": 43,
        "cartesia-ink-stt": 84,
        "edge": "cartesia-ink-stt",
        "inworld-stt": 41,
        "key": "maintenance",
        "name": "Maintenance \u0026 community",
        "weight": 7
      },
      {
        "by": 8,
        "cartesia-ink-stt": 68,
        "edge": "cartesia-ink-stt",
        "inworld-stt": 60,
        "key": "transparency",
        "name": "Transparency \u0026 trust",
        "weight": 7
      }
    ],
    "summary": "Cartesia Ink scores 67 (B) on agent readiness against Inworld STT's 54.7 (C), and leads in 5 of 7 scored categories. Inworld STT leads on security \u0026 auth and payments \u0026 pricing. Both do speech-to-text.",
    "tasks": [
      {
        "a": "$0.07 to $0.54",
        "b": "$0.10 to $0.15",
        "cheaper": "cartesia-ink-stt",
        "task": "Transcribe a one-hour meeting",
        "what": "60 minutes of recorded audio"
      }
    ],
    "tutorials": [],
    "verdicts": {
      "cartesia-ink-stt": "Ink 2 streams transcripts with turn detection built into the model, documented by an AsyncAPI file with typed ranges and structured errors. The terms, last revised 14 June 2024, let Cartesia train on inputs and outputs unless the customer opts out, and zero data retention is an Enterprise setting. Ink 2 has no batch endpoint and no diarisation.",
      "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."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/cartesia-ink-stt-vs-inworld-stt",
    "json": "https://www.anchorterminal.com/compare/cartesia-ink-stt-vs-inworld-stt.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/cartesia-ink-stt-vs-inworld-stt.md",
    "mcp": "https://www.anchorterminal.com/mcp",
    "slim": "https://www.anchorterminal.com/compare/cartesia-ink-stt-vs-inworld-stt.min.md"
  },
  "markdown": "Cartesia Ink scores 67 (B) on agent readiness against Inworld STT's 54.7 (C), and leads in 5 of 7 scored categories. Inworld STT leads on security \u0026 auth and payments \u0026 pricing. Both do speech-to-text.\n\n- Cartesia Ink: grade B, 67/100, rank #340 of 1486. Markdown https://www.anchorterminal.com/tools/cartesia-ink-stt.md · JSON https://www.anchorterminal.com/api/v1/tools/cartesia-ink-stt.json\n- Inworld STT: grade C, 54.7/100, rank #895 of 1486. Markdown https://www.anchorterminal.com/tools/inworld-stt.md · JSON https://www.anchorterminal.com/api/v1/tools/inworld-stt.json\n- Best speech-to-text APIs for AI agents: https://www.anchorterminal.com/best/speech-to-text/index.md\n- All 320 stt comparisons: https://www.anchorterminal.com/compare/speech-to-text/index.md\n\n## Which one, for what\n\n### Cartesia Ink (B)\n\nGood for: Suited to voice agents that need turn detection and transcription from one model in English, French, Hindi, Japanese or Spanish, and to teams already using Cartesia text-to-speech.\n\nAhead on:\n- Reliability, 73 against 60\n- Schema \u0026 documentation, 89 against 54\n- Agent ergonomics, 74 against 56\n- Maintenance \u0026 community, 84 against 41\n- Transparency \u0026 trust, 68 against 60\n\nAlso in its favour:\n- A hosted endpoint, with nothing to install\n\nWatch for: The terms let Cartesia train models on inputs and outputs unless otherwise agreed. Opting out is a form in the Playground's data controls\n\n### Inworld STT (C)\n\nGood for: Low-cost live transcription for voice agents, with speaker traits.\n\nAhead on:\n- Security \u0026 auth, 63 against 47\n- Payments \u0026 pricing, 40 against 35\n\nAlso in its favour:\n- Free to start without a card\n\nWatch for: No OpenAPI or other machine-readable contract\n\n\n## Why the edge\n\n### Maintenance \u0026 community: Cartesia Ink +43\n\n- Cartesia Ink (84): Read as a model, on the lines deepgram-stt, gladia-stt and cartesia-tts use for hosted speech models (recency 30, dated releases 10, deprecation notice 10, support 15, issues 10, SDKs 15, health 10). The `cartesia-mcp` server, which has a `speech_to_text` tool, released 0.28.1 on 30 October 2026 with a bug fix, after 0.27.0 (20 October) and 0.28.0 (27 October). The model page still dates `ink-2` and `ink-preview` 17 September 2026 (30). In the 90 days from 3 August the SDKs released 4.0.0, 4.0.1, 4.1.0 and 4.2.0 (14 August to 2 September) and the MCP server several releases, with changelog entries for August and September (10). The deprecations page gives dated sunsets, and Sonic-2, Sonic Turbo and `sonic-3-2025-10-27` were sunset after 20 October 2026, announced in the July changelog. No minimum notice period is stated and no Ink model has been retired, read as cartesia-tts is on the same page (5 of 10). The changelog has speech-to-text entries in May, June, July and September 2026, dated by month only, and no October entry (11 of 15). The Python SDK repository had 4 open issues on 9 October, per that check, not re-read on 1 November since GitHub's pages answered 403 (5 of 10). Official `cartesia` and `@cartesia/cartesia-js` SDKs at 4.2.0 (2 September 2026), generated for API version 2026-08-14 (15). CI workflows, release automation and lock files in both SDK repositories, with dependency updates merged on 23 October (8 of 10). 30 + 10 + 5 + 11 + 5 + 15 + 8 = 84.\n- 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.\n\n### Schema \u0026 documentation: Cartesia Ink +35\n\n- Cartesia Ink (89): Model reading. The docs index links an OpenAPI file (`latest.yml`) and AsyncAPI files for the WebSocket endpoints, and each reference page embeds its part of them (25). llms.txt with a Markdown twin of every page (10). The comparison page says which of the three endpoints to use and when, and the turn detection guide explains each event and threshold (18 of 20). The AsyncAPI definition has enums for `encoding` and `cartesia_version`, minimum and maximum values on the four turn settings and required fields marked. `model` is a plain string on the auto endpoint (13 of 15). Example scripts for each endpoint in Python and TypeScript and an errors page with nine codes. `model_sunsetted` appears on the deprecations page and not in that table, and the docs say a wrong `encoding` or `sample_rate` might not return an error (11 of 15). Dated API versions through the `Cartesia-Version` header and a changelog grouped by month with no day dates (12 of 15).\n- 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.\n\n### Agent ergonomics: Cartesia Ink +18\n\n- Cartesia Ink (74): API reading, as for the other speech-to-text listings. Turn events carry a cumulative transcript that is never revised, so an agent reads one `turn.end` a turn, and word timestamps are opt-in on the manual and batch endpoints (20 of 25). There is nothing to page through. Batch takes a file of any length without client chunking, keyterms steer vocabulary, and there is no diarisation or subtitle output (12 of 20). Errors are structured JSON with `error_code`, `title`, `message`, `request_id` and an optional `doc_url` on API version 2026-03-01 and later (17 of 20). Transcription holds no state to duplicate and the SDKs retry failed HTTP calls. A realtime session cannot be resumed, and nothing on reconnecting was found (12 of 20). Realtime needs `model`, `encoding`, `sample_rate` and the version, turn settings have documented defaults, and there are official Python and TypeScript SDKs. Realtime accepts raw PCM only (13 of 15).\n- Inworld STT (56): API reading of the checklist. Voice Profile, word timestamps and diarisation are opt-in, and responses carry a `usage` block (18 of 25). No lists to page. Async jobs return an operation to poll (8 of 20). Errors carry a numeric gRPC code and message on both endpoints, but a malformed first message closes the socket with 1005 and no frame (12 of 20). Sync calls are stateless and async calls return an operation, with no idempotency key, and empty transcripts and add-ons are billed (10 of 20). A call needs a model, an encoding and the audio. No STT SDK was found, only the CLI and its MCP server and REST examples (8 of 15). Total 56.\n\n### Security \u0026 auth: Inworld STT +16\n\n- Cartesia Ink (47): Model reading. Standard keys (`sk_car_...`) and admin keys are separate types that are not interchangeable, and a server can mint an access token with an `stt` grant that lasts at most one hour. That token travels in the `access_token` query parameter on WebSockets, the API key itself goes in a header, and no key limited to speech-to-text was found. The STT WebSocket definition, re-read on 1 November, lists `access_token` in the query as a security scheme. The checklist takes 10 off for a secret that can travel in a URL query string as a documented option, and this run takes the full 10 for short-lived OAuth tokens in `?access_token=` on every Google API listing, so the earlier 5 is brought into line (26, less 10, 16 of 30). The terms, last revised 14 June 2024, say inputs, outputs and interactions may be used to train models unless otherwise agreed, with an opt-out form in the Playground's data controls (5 of 20). Zero data retention covers STT audio and transcripts and is limited to the Enterprise plan. No retention period for other plans was found, and the DPA gives 180 days for deletion after termination (5 of 15). Credit usage and key metadata are readable through admin endpoints. No audit log was found (7 of 15). security.txt is valid until 3 October 2027 with a contact and a policy link to the trust centre. The docs and pricing page state SOC 2 Type II, HIPAA and PCI-DSS. The trust centre is drawn by script and was not read, and no bug bounty was found (14 of 20). 16 + 5 + 5 + 7 + 14 = 47.\n- 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.\n\n### Reliability: Cartesia Ink +13\n\n- Cartesia Ink (73): Hosted reading. The status page at status.cartesia.ai (incident.io) lists Speech to Text as its own component in four regions (20). Its RSS feed, re-read on 1 November, now names each incident's components. In the 90 days from 3 August two incidents touch speech-to-text, both partial and read as minor, as this run reads one region or some requests. On 2 September some clients in the US regions saw connection errors that cleared on retry (Text to Speech and Speech to Text, US), and on 7 October customers in the US regions saw higher latency for some API requests, from 12:29 to about 18:23 (partial outage, Text to Speech, Speech to Text and Voice Cloning, US). The 3 September throttling named only Text to Speech in APAC, the 8 October errors only the Playground and Voice Agents, and the 15 October Playground outage says API services were unaffected. The 1 August API-wide incident has left the window. Minor only (20). Concurrency limits are published per plan, 8, 12, 20 and 60 concurrent STT requests, with a 3-minute idle timeout on sockets (15). Exceeding the limit returns 429 with the `concurrency_limited` code, and the SDKs retry 429 and 5xx twice with backoff on HTTP calls. No `Retry-After` header, backoff guidance or reconnection advice for a dropped socket was found (8 of 15). No SLA was found for any plan (0). `ink-2` is marked Stable on the model page re-read on 1 November, with `ink-preview` as the preview line (10). 20 + 20 + 15 + 8 + 0 + 10 = 73.\n- 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.\n\n### Transparency \u0026 trust: Cartesia Ink +8\n\n- Cartesia Ink (68): The service is closed and the SDKs are Apache-2.0. The Terms of Service cover the website, its subdomains and APIs, were last revised on 14 June 2024, describe a platform for synthesised sound and never mention transcription (12 of 30). The terms and privacy policy agree that content may be used for training with an opt-out. The DPA says Cartesia will not retain or use customer personal data beyond performing the services, which sits uneasily with the training licence. No retention period is given outside zero data retention, and the privacy policy says the services are designed for users in the United States only while regional endpoints are sold in four other regions (12 of 30). A deprecations page with dated sunsets and a stated promise to preserve fields for a pinned `Cartesia-Version` (15 of 20). The DPA promises 30 days' notice of sub-processor changes to subscribers and points to a list in the trust centre, which we could not read. Regional deployments are named for Enterprise only (10 of 20).\n- 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.\n\n## Score by category\n\n| Category | Weight | Cartesia Ink | Inworld STT | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 73 | 60 | Cartesia Ink +13 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 89 | 54 | Cartesia Ink +35 |\n| Agent ergonomics | 13% (16.2 this run) | 74 | 56 | Cartesia Ink +18 |\n| Security \u0026 auth | 14% (17.5 this run) | 47 | 63 | Inworld STT +16 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 35 | 40 | Inworld STT +5 |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 84 | 41 | Cartesia Ink +43 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 68 | 60 | Cartesia Ink +8 |\n| Negative events | ≤15 | 0 | 0 | |\n| **Total** | | **67 · B** | **54.7 · C** | |\n\n## Facts side by side\n\n| Fact | Cartesia Ink | Inworld STT |\n| --- | --- | --- |\n| Kind | Model API | Model API |\n| Vendor | Cartesia | Inworld AI |\n| Hosted endpoint | `https://api.cartesia.ai` | no (local only) |\n| Transports | HTTP, websocket, Streamable HTTP | HTTP, websocket |\n| Auth | API key | API key |\n| Pricing | Freemium | Pay per use |\n| Price for speech-to-text | not published | $0.0017 per minute of audio |\n| x402 | no | no |\n| Licence | Proprietary hosted service under the Cartesia Terms of Service. The Python and JavaScript SDKs are Apache-2.0 | none |\n| Tools exposed | none | 0 |\n| Read-only variant documented | no | no |\n| llms.txt | yes | yes |\n| Last release | 2026-09-17 | 2026-10-29 |\n| Terms last updated | 2024-06-14 | 2025-06-11 |\n| Privacy policy last updated | 2024-06-14 | 2026-01-18 |\n| Customer content may train models | yes, with an opt-out | not found in the text |\n| Terms restrict automated access | yes | not found in the text |\n| Terms restrict benchmarking | yes | not found in the text |\n| Terms or service can change without notice | not found in the text | not found in the text |\n| Arbitration or class-action waiver | yes | not found in the text |\n| Popularity | 134 stars | none |\n| Agent reviews | 3.3/5 (4) | none |\n\n## What the same task costs\n\n| Task | Cartesia Ink | Inworld STT |\n| --- | --- | --- |\n| Transcribe a one-hour meeting | $0.07 to $0.54 | $0.10 to $0.15 |\n\n## How the scores have moved\n\n### Cartesia Ink\n\n- -1.0 on 1 November 2026: correction\n- +0.1 on 27 October 2026: checklist\n\n### Inworld STT\n\nNo score change since it was listed.\n\n## Verdicts\n\n**Cartesia Ink.** Ink 2 streams transcripts with turn detection built into the model, documented by an AsyncAPI file with typed ranges and structured errors. The terms, last revised 14 June 2024, let Cartesia train on inputs and outputs unless the customer opts out, and zero data retention is an Enterprise setting. Ink 2 has no batch endpoint and no diarisation.\n\n**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.\n\n## Before you call either\n\n### Cartesia Ink\n\n1. Use `wss://api.cartesia.ai/stt/turns/websocket` with `model=ink-2`, `encoding`, `sample_rate` and `cartesia_version=2026-08-14`. All four are required.\n2. Send raw mono audio in chunks of about 100 ms at the speed it was spoken. Pushing a whole file into the socket can return an internal server error.\n3. Read the final text from `turn.end` only. `transcript` is cumulative within a turn, so joining `turn.update` events duplicates text.\n4. Send `{\"type\": \"close\"}` after the last audio and keep reading until the server closes the socket, or the buffered tail is lost.\n5. Check `encoding` and `sample_rate` against the source before sending. The docs say the server might not return an error when they are wrong.\n\n### Inworld STT\n\n1. Send the Base64 credential as-is in `Authorization: Basic`; don't encode it again\n2. Wrap the first WebSocket message in `transcribeConfig`, because a malformed first frame closes the socket with 1005 and no error\n3. Use `POST /stt/v1/transcribe:async` for files over about 16 MB and collect the transcript within 7 days\n4. Retry 429 or gRPC code 8 with exponential backoff and jitter, and stay within the plan's streaming concurrency\n5. Stop sending audio when nobody speaks, since streams are billed for every second sent\n\n## Questions\n\n### Which is better for AI agents, Cartesia Ink or Inworld STT?\n\nCartesia Ink scores 67 (B) on agent readiness against Inworld STT's 54.7 (C), and leads in 5 of 7 scored categories. Inworld STT leads on security \u0026 auth and payments \u0026 pricing.\n\n### Do Cartesia Ink and Inworld STT need an API key?\n\nBoth need an API key.\n\n### Can an agent call Cartesia Ink and Inworld STT without installing anything?\n\nCartesia Ink has a hosted endpoint at https://api.cartesia.ai. No hosted endpoint is listed for Inworld STT.\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/cartesia-ink-stt-vs-inworld-stt.json, and with the fewest tokens: https://www.anchorterminal.com/compare/cartesia-ink-stt-vs-inworld-stt.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"cartesia-ink-stt\", \"b\": \"inworld-stt\"}`. From a terminal: `anchor compare cartesia-ink-stt inworld-stt`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/cartesia-ink-stt.json and https://www.anchorterminal.com/api/v1/tools/inworld-stt.json\n\n## Other comparisons with Cartesia Ink or Inworld STT\n\n- [Amazon Transcribe vs Cartesia Ink](https://www.anchorterminal.com/compare/amazon-transcribe-vs-cartesia-ink-stt.md)\n- [Amazon Transcribe vs Inworld STT](https://www.anchorterminal.com/compare/amazon-transcribe-vs-inworld-stt.md)\n- [AssemblyAI Speech-to-Text (Universal) vs Cartesia Ink](https://www.anchorterminal.com/compare/assemblyai-stt-vs-cartesia-ink-stt.md)\n- [AssemblyAI Speech-to-Text (Universal) vs Inworld STT](https://www.anchorterminal.com/compare/assemblyai-stt-vs-inworld-stt.md)\n- [Azure AI Speech speech-to-text vs Cartesia Ink](https://www.anchorterminal.com/compare/azure-speech-to-text-vs-cartesia-ink-stt.md)\n- [Azure AI Speech speech-to-text vs Inworld STT](https://www.anchorterminal.com/compare/azure-speech-to-text-vs-inworld-stt.md)\n- [Cartesia Ink vs Deepgram Speech-to-Text (Nova-3, Flux)](https://www.anchorterminal.com/compare/cartesia-ink-stt-vs-deepgram-stt.md)\n- [Cartesia Ink vs ElevenLabs Scribe Speech to Text API](https://www.anchorterminal.com/compare/cartesia-ink-stt-vs-elevenlabs-scribe.md)\n- [Cartesia Ink vs Giggy Speech to Text](https://www.anchorterminal.com/compare/cartesia-ink-stt-vs-giggy-stt.md)\n- [Cartesia Ink vs Gladia Speech-to-Text API + MCP](https://www.anchorterminal.com/compare/cartesia-ink-stt-vs-gladia-stt.md)\n- [Cartesia Ink vs Google Cloud Speech-to-Text](https://www.anchorterminal.com/compare/cartesia-ink-stt-vs-google-speech-to-text.md)\n- [Cartesia Ink vs Groq Speech-to-Text](https://www.anchorterminal.com/compare/cartesia-ink-stt-vs-groq-speech-to-text.md)\n- [Cartesia Ink vs IBM Watson Speech to Text](https://www.anchorterminal.com/compare/cartesia-ink-stt-vs-ibm-watson-stt.md)\n- [Cartesia Ink vs MiniMax Speech-to-Text](https://www.anchorterminal.com/compare/cartesia-ink-stt-vs-minimax-stt.md)\n- [Cartesia Ink vs Mistral Voxtral Transcribe](https://www.anchorterminal.com/compare/cartesia-ink-stt-vs-mistral-voxtral-transcribe.md)\n- [Cartesia Ink vs OpenAI Speech to Text](https://www.anchorterminal.com/compare/cartesia-ink-stt-vs-openai-speech-to-text.md)\n- [Cartesia Ink vs Rev AI Speech-to-Text API](https://www.anchorterminal.com/compare/cartesia-ink-stt-vs-rev-ai-stt.md)\n- [Cartesia Ink vs Smallest.ai Pulse STT](https://www.anchorterminal.com/compare/cartesia-ink-stt-vs-smallest-pulse-stt.md)\n- [Cartesia Ink vs Soniox Speech-to-Text](https://www.anchorterminal.com/compare/cartesia-ink-stt-vs-soniox-stt.md)\n- [Cartesia Ink vs Speechmatics Speech-to-Text](https://www.anchorterminal.com/compare/cartesia-ink-stt-vs-speechmatics-stt.md)\n- [Deepgram Speech-to-Text (Nova-3, Flux) vs Inworld STT](https://www.anchorterminal.com/compare/deepgram-stt-vs-inworld-stt.md)\n- [ElevenLabs Scribe Speech to Text API vs Inworld STT](https://www.anchorterminal.com/compare/elevenlabs-scribe-vs-inworld-stt.md)\n- [Giggy Speech to Text vs Inworld STT](https://www.anchorterminal.com/compare/giggy-stt-vs-inworld-stt.md)\n- [Gladia Speech-to-Text API + MCP vs Inworld STT](https://www.anchorterminal.com/compare/gladia-stt-vs-inworld-stt.md)\n- [Google Cloud Speech-to-Text vs Inworld STT](https://www.anchorterminal.com/compare/google-speech-to-text-vs-inworld-stt.md)\n- [Groq Speech-to-Text vs Inworld STT](https://www.anchorterminal.com/compare/groq-speech-to-text-vs-inworld-stt.md)\n- [IBM Watson Speech to Text vs Inworld STT](https://www.anchorterminal.com/compare/ibm-watson-stt-vs-inworld-stt.md)\n- [Inworld STT vs MiniMax Speech-to-Text](https://www.anchorterminal.com/compare/inworld-stt-vs-minimax-stt.md)\n- [Inworld STT vs Mistral Voxtral Transcribe](https://www.anchorterminal.com/compare/inworld-stt-vs-mistral-voxtral-transcribe.md)\n- [Inworld STT vs OpenAI Speech to Text](https://www.anchorterminal.com/compare/inworld-stt-vs-openai-speech-to-text.md)\n- [Inworld STT vs Rev AI Speech-to-Text API](https://www.anchorterminal.com/compare/inworld-stt-vs-rev-ai-stt.md)\n- [Inworld STT vs Smallest.ai Pulse STT](https://www.anchorterminal.com/compare/inworld-stt-vs-smallest-pulse-stt.md)\n- [Inworld STT vs Soniox Speech-to-Text](https://www.anchorterminal.com/compare/inworld-stt-vs-soniox-stt.md)\n- [Inworld STT vs Speechmatics Speech-to-Text](https://www.anchorterminal.com/compare/inworld-stt-vs-speechmatics-stt.md)\n",
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "attributionRequired": true,
    "credit": "CC BY 4.0, credit Anchor Terminal and link the page or API address you took it from (https://www.anchorterminal.com/terms/#data)",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-11-07",
    "license": "CC-BY-4.0",
    "method": "https://www.anchorterminal.com/benchmark/",
    "methodology": "0.7",
    "openapi": "https://www.anchorterminal.com/openapi.json",
    "preview": false,
    "run": "2026-10-01",
    "runLabel": "October 2026 research run",
    "terms": "https://www.anchorterminal.com/terms/#data"
  },
  "page": {
    "breadcrumbs": [
      {
        "name": "Home",
        "url": "https://www.anchorterminal.com/"
      },
      {
        "name": "Compare",
        "url": "https://www.anchorterminal.com/compare/"
      },
      {
        "name": "Cartesia Ink vs Inworld STT",
        "url": ""
      }
    ],
    "description": "Cartesia Ink scores 67 (B) to Inworld STT's 54.7 (C) for speech-to-text. Prices, MCP, x402, uptime and agent notes side by side.",
    "facts": [
      "Cartesia Ink B 67",
      "Inworld STT C 54.7",
      "scores"
    ],
    "h1": "Cartesia Ink vs Inworld STT",
    "image": "https://www.anchorterminal.com/assets/og/default.png",
    "path": "/compare/cartesia-ink-stt-vs-inworld-stt",
    "published": "2026-10-01",
    "section": "tools",
    "title": "Cartesia Ink vs Inworld STT for AI agents in 2026: scores and prices",
    "toc": null,
    "updated": "2026-11-07",
    "url": "https://www.anchorterminal.com/compare/cartesia-ink-stt-vs-inworld-stt"
  },
  "tokens": {
    "markdown": 6100,
    "slim": 3780
  },
  "version": 1
}
