{
  "data": {
    "a": {
      "slug": "amazon-nova-sonic",
      "name": "Amazon Nova 2 Sonic",
      "vendor": "Amazon Web Services",
      "vendorUrl": "https://aws.amazon.com/ai/generative-ai/nova/speech/",
      "kind": "http-api",
      "category": "voice-agents",
      "summary": "Amazon Nova 2 Sonic is AWS's speech-to-speech model for voice agents on Amazon Bedrock. Clients stream audio and text events both ways over the `InvokeModelWithBidirectionalStream` API, with turn-taking, interruptions, asynchronous tool calls and multilingual voices.",
      "url": "https://www.anchorterminal.com/tools/amazon-nova-sonic",
      "markdownUrl": "https://www.anchorterminal.com/tools/amazon-nova-sonic.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/amazon-nova-sonic.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/amazon-nova-sonic.json",
      "dns": "amazon-nova-sonic.grade.anchorterminal.com",
      "repo": "https://github.com/aws-samples/amazon-nova-samples",
      "transports": [
        "http"
      ],
      "packages": [
        {
          "registry": "pypi",
          "name": "aws-sdk-bedrock-runtime"
        },
        {
          "registry": "npm",
          "name": "@aws-sdk/client-bedrock-runtime"
        }
      ],
      "auth": "api-key",
      "authNotes": "AWS Signature Version 4 with IAM credentials or a role, scoped per model ARN by IAM policy. The Sonic quickstart signs with environment credentials. Whether Bedrock API keys work on the bidirectional stream wasn't confirmed. Access is self-serve once a person has an AWS account.",
      "pricing": "usage",
      "pricingNotes": "Billed per speech and text token on Bedrock on demand. The Nova and Bedrock pricing pages draw their price tables by script, so the figures weren't read on 6 November 2026. No model-specific free tier; new AWS accounts get up to $200 in Free Tier credits.",
      "priceSummary": "Pay per use",
      "where": "local",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the Nova or Bedrock docs (checked 2026-11-06). Billing runs through the AWS account.",
        "endpoints": []
      },
      "toolCount": 0,
      "popularity": {
        "githubStars": null,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-11-06"
      },
      "docsUrl": "https://docs.aws.amazon.com/nova/latest/nova2-userguide/using-conversational-speech.html",
      "llmsTxt": "https://docs.aws.amazon.com/nova/latest/nova2-userguide/llms.txt",
      "capabilities": [
        "voice.agent",
        "voice.speech-to-speech",
        "voice.tools",
        "voice.telephony"
      ],
      "tags": [
        "official",
        "hosted",
        "usage-priced",
        "closed-source",
        "python",
        "typescript",
        "llms-txt",
        "streaming",
        "enterprise"
      ],
      "lastRelease": "2026-05-28",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 67.6,
        "grade": "B",
        "agentReady": false,
        "rank": 315,
        "ranked": true,
        "rankOf": 1510,
        "categoryRank": 6,
        "methodology": "0.7",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 64,
          "maintenance": 50,
          "payments": 10,
          "reliability": 95,
          "schema": 75,
          "security": 77,
          "transparency": 79
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "low",
          "date": "2026-11-06"
        },
        "negative": 0,
        "verdict": "Nova 2 Sonic runs speech-to-speech conversations with asynchronous tools on Bedrock, with IAM scoping, no default storage of inputs and a 99.9 per cent SLA. Sessions cut off at 8 minutes, the Python SDK is pre-alpha, and the event payloads have no schema file. Prices are in a script-drawn table we couldn't read.",
        "bestFor": "Voice agents on AWS, call centres on Amazon Connect, teams that want IAM and in-account data handling.",
        "strengths": [
          "No Bedrock event on the AWS Health history in the 90 days from 8 August 2026",
          "IAM scoping per model ARN with SigV4 and temporary credentials",
          "Bedrock stores no inputs or outputs by default, and Sonic isn't on the list of models kept for abuse review",
          "Asynchronous tool calls let the model keep speaking while a tool runs",
          "Telephony guides for Twilio, Vonage and Amazon Connect"
        ],
        "weaknesses": [
          "Connections end after 8 minutes, so long calls need the session-continuation pattern",
          "The Python SDK for bidirectional streaming is pre-alpha and needs Python 3.12",
          "Sonic's event payloads are documented as examples, with no schema file",
          "20 concurrent sessions per Region, not adjustable through Service Quotas",
          "The March and May 2026 refreshes changed the model in place under the same ID"
        ],
        "agentNotes": [
          "Plan a reconnect before 8 minutes and replay chat history (up to 200 KB) at the start of the new session",
          "Send session, prompt and content start events in order before any audio",
          "Make tool calls safe to repeat, since a reconnect can replay them",
          "Back off on `ThrottlingException` and stay within 20 concurrent sessions per Region",
          "Use the polyglot voices TIFFANY or MATTHEW when callers may switch language"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "low",
            "grade": "B",
            "methodology": "0.7",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 67.6
          }
        ],
        "editorialScores": {
          "ergonomics": 64,
          "maintenance": 50,
          "payments": 10,
          "reliability": 95,
          "schema": 75,
          "security": 77,
          "transparency": 64
        },
        "provenanceScore": 94,
        "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": "pip install aws-sdk-bedrock-runtime"
      },
      "letme": {
        "capability": "https://letme.dev/voice.agent",
        "tool": "https://letme.dev/amazon-nova-sonic"
      },
      "sameCompany": [
        "amazon-bedrock",
        "amazon-nova-embeddings",
        "amazon-bedrock-guardrails",
        "amazon-transcribe",
        "amazon-polly",
        "agentcore-memory",
        "agentcore-identity",
        "aws-secrets-manager",
        "agentcore-web-search",
        "aws-mcp-servers",
        "amazon-ses",
        "amazon-location",
        "amazon-translate",
        "amazon-ads-api",
        "amazon-creators-api"
      ],
      "area": "voice",
      "provenance": {
        "legalEntity": "Amazon Web Services, Inc.",
        "domain": "amazon.com",
        "domainRegistered": "1994-11-01",
        "domainNote": "The endpoint is on amazonaws.com, an AWS domain registered on 2005-08-18. The security.txt on aws.amazon.com expires on 2027-10-16.",
        "endpointOnVendorDomain": true,
        "terms": "https://aws.amazon.com/service-terms/",
        "privacy": "https://aws.amazon.com/privacy/",
        "statusPage": "https://health.aws.amazon.com/health/status",
        "changelog": "https://docs.aws.amazon.com/nova/latest/nova2-userguide/release-notes.html",
        "securityTxt": "valid",
        "checked": "2026-11-06",
        "notes": [
          "The AWS Service Terms were last updated on 30 October 2026. Section 50.12 covers Amazon Bedrock, and Bedrock is not among the services section 50.3 lists for use of content to improve AWS services.",
          "RDAP gives 1994-11-01 for amazon.com and 2005-08-18 for amazonaws.com.",
          "aws.amazon.com/.well-known/security.txt has Contact, Policy and Encryption fields. Its Expires value is 2027-10-16T16:25:03Z, re-read on 2026-11-01.",
          "docs.aws.amazon.com/robots.txt allows the Nova and Bedrock pages read. The Nova and Bedrock pricing pages draw their tables by script, so Nova 2 Sonic's prices weren't read."
        ],
        "score": 94
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/amazon-nova-sonic.json",
      "live": {
        "slug": "amazon-nova-sonic",
        "versions": [
          {
            "registry": "npm",
            "name": "@aws-sdk/client-bedrock-runtime",
            "version": "3.1164.0",
            "seenAt": "2026-11-06T23:05:35.366071006Z"
          },
          {
            "registry": "pypi",
            "name": "aws-sdk-bedrock-runtime",
            "version": "0.12.0",
            "released": "2026-10-08",
            "seenAt": "2026-11-06T23:05:33.518358123Z"
          }
        ],
        "githubStars": 456,
        "npmWeekly": 21825916,
        "pypiWeekly": 112826,
        "securityTxt": {
          "url": "https://amazon.com/.well-known/security.txt",
          "state": "valid",
          "checkedAt": "2026-11-07T16:00:18.354437696Z"
        },
        "llmsTxt": {
          "url": "https://docs.aws.amazon.com/nova/latest/nova2-userguide/llms.txt",
          "ok": true,
          "status": 200,
          "checkedAt": "2026-11-07T15:31:25.828159373Z"
        },
        "pages": [
          {
            "url": "https://docs.aws.amazon.com/nova/latest/nova2-userguide/release-notes.html",
            "kind": "changelog",
            "status": 200,
            "checkedAt": "2026-11-07T14:05:20.262718007Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "48cb3eb6c070"
          }
        ],
        "updatedAt": "2026-11-07T16:00:18.354437696Z"
      }
    },
    "answer": "Amazon Nova 2 Sonic scores 67.6 (B) on agent readiness against Inworld Realtime API's 60.1 (C), and leads in 4 of 7 scored categories. Inworld Realtime API leads on payments \u0026 pricing and maintenance \u0026 community.",
    "b": {
      "slug": "inworld-realtime",
      "name": "Inworld Realtime API",
      "vendor": "Inworld AI",
      "vendorUrl": "https://inworld.ai",
      "kind": "http-api",
      "category": "voice-agents",
      "summary": "Inworld's Realtime API runs spoken conversations over WebSocket or WebRTC, chaining Inworld STT, an LLM chosen by the developer and Inworld TTS, with turn detection, interruptions and tool calling. It follows OpenAI's Realtime protocol.",
      "url": "https://www.anchorterminal.com/tools/inworld-realtime",
      "markdownUrl": "https://www.anchorterminal.com/tools/inworld-realtime.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/inworld-realtime.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/inworld-realtime.json",
      "dns": "inworld-realtime.grade.anchorterminal.com",
      "transports": [
        "websocket",
        "http"
      ],
      "packages": [
        {
          "registry": "npm",
          "name": "@inworld/cli"
        }
      ],
      "auth": "api-key",
      "authNotes": "Servers send `Authorization: Basic` with the Base64 `key_id:secret` credential. Browsers send `Authorization: Bearer` with a session token minted server side. The `key` query parameter in the WebSocket URL is a session ID, not a secret.",
      "pricing": "usage",
      "pricingNotes": "No per-minute or per-session price. A session is billed as its STT ($0.10 to $0.15 an hour), its LLM tokens at the model's rate and its TTS characters (TTS-2 from $25 per million on the free plan). Segments already sent to TTS are billed after an interruption.",
      "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/realtime/overview",
      "llmsTxt": "https://docs.inworld.ai/llms.txt",
      "capabilities": [
        "voice.agent",
        "voice.pipeline",
        "voice.tools",
        "voice.telephony"
      ],
      "tags": [
        "hosted",
        "usage",
        "free-tier",
        "closed-source",
        "llms-txt",
        "streaming",
        "websocket",
        "webrtc",
        "openai-compatible",
        "enterprise"
      ],
      "lastRelease": "2026-10-16",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 60.1,
        "grade": "C",
        "agentReady": false,
        "rank": 671,
        "ranked": true,
        "rankOf": 1510,
        "categoryRank": 12,
        "methodology": "0.7",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 68,
          "maintenance": 71,
          "payments": 40,
          "reliability": 62,
          "schema": 60,
          "security": 58,
          "transparency": 63
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-11-06"
        },
        "negative": 0,
        "verdict": "Inworld's Realtime API speaks OpenAI's Realtime protocol over WebSocket or WebRTC, with a choice of LLM, client-side tools and dated release notes. Cost is the sum of STT, LLM and TTS usage with no per-minute price, there is no machine-readable event schema, and status history couldn't be read.",
        "bestFor": "Teams moving off OpenAI's Realtime API who want a choice of LLM and Inworld voices.",
        "strengths": [
          "Follows OpenAI's Realtime events, with a migration guide that changes only the URL, key and a few defaults",
          "Dated release notes name affected clients and required actions for each compatibility change",
          "A choice of LLM through Inworld's router, with prompt caching on Anthropic models",
          "Concurrent sessions from 10 on the free plan to 1,000 on Growth",
          "Zero data retention covers session content from the Developer plan up"
        ],
        "weaknesses": [
          "No per-minute price. A session's cost depends on STT, LLM tokens and TTS characters, and interrupted segments are still billed",
          "No AsyncAPI or other machine-readable schema for the socket events",
          "Status history couldn't be read, and an SLA exists only for Enterprise",
          "The 21 July 2026 release changed response and item shapes for existing clients",
          "Zero data retention doesn't cover requests routed to third-party LLM providers"
        ],
        "agentNotes": [
          "Set the auto follow-up off if your client sends its own `response.create` after a tool result, or replies double",
          "Read `response.done` usage as an estimate and mute input audio when nobody speaks, since STT bills every second sent",
          "Use `response.speak` for fixed greetings, which skips the LLM",
          "Treat `unsupported_field` errors as warnings and keep the session open",
          "Mint browser session tokens on your server and never ship the Basic credential to a client"
        ],
        "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": 60.1
          }
        ],
        "editorialScores": {
          "ergonomics": 68,
          "maintenance": 71,
          "payments": 40,
          "reliability": 62,
          "schema": 60,
          "security": 58,
          "transparency": 51
        },
        "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"
      },
      "letme": {
        "capability": "https://letme.dev/voice.agent",
        "tool": "https://letme.dev/inworld-realtime"
      },
      "sameCompany": [
        "inworld-stt",
        "inworld-tts",
        "inworld-voice-cloning"
      ],
      "area": "voice",
      "unitPrices": [
        {
          "item": "Speech recognition in a session",
          "unit": "audio-minute",
          "usd": 0.0025,
          "note": "STT-1 at $0.15 an hour On-Demand, $0.10 on paid plans"
        },
        {
          "item": "Agent speech, TTS-2",
          "unit": "1m-chars",
          "usd": 25,
          "note": "free On-Demand plan; lower on paid plans"
        }
      ],
      "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. The public Realtime release notes start on 21 July 2026 and no launch date was found."
        ],
        "score": 75
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/inworld-realtime.json",
      "live": {
        "slug": "inworld-realtime",
        "vendorStatus": {
          "page": "https://status.inworld.ai",
          "indicator": "unknown",
          "summary": "no machine-readable status found",
          "checkedAt": "2026-11-07T04:47:57.03709454Z"
        },
        "versions": [
          {
            "registry": "npm",
            "name": "@inworld/cli",
            "version": "1.5.0",
            "seenAt": "2026-11-06T23:35:04.551623033Z"
          }
        ],
        "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:46.028273902Z"
        },
        "pages": [
          {
            "url": "https://docs.inworld.ai/release-notes/realtime",
            "kind": "changelog",
            "status": 200,
            "checkedAt": "2026-11-07T14:06:42.218731652Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "9ae0f1f05b69"
          },
          {
            "url": "https://inworld.ai/privacy",
            "kind": "privacy",
            "status": 304,
            "checkedAt": "2026-11-07T14:11:39.031139211Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "99dc39a9de92"
          },
          {
            "url": "https://inworld.ai/terms",
            "kind": "terms",
            "status": 304,
            "checkedAt": "2026-11-07T14:11:41.181276356Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "777d881cbf9b"
          }
        ],
        "updatedAt": "2026-11-07T16:01:11.794771951Z"
      }
    },
    "edges": [
      {
        "by": 33,
        "category": "reliability",
        "leads": "amazon-nova-sonic",
        "name": "Reliability",
        "reasons": {
          "a": "Hosted reading. AWS Health Dashboard with per-service, per-Region history (20). The dashboard history file (newest event 30 October 2026) lists no Bedrock event in the 90 days from 8 August, and the 3 September us-west-2 event names STS, Connect and IAM Identity Center, not Bedrock. The public dashboard records broad events only, so 25 of 30, as amazon-nova-embeddings was read. Quotas published, 20 concurrent requests per Region, not adjustable (15). The stream API lists `ThrottlingException` (429), `ServiceUnavailableException` (503), `ModelTimeoutException` (408) and `ModelStreamErrorException` (424), Bedrock's troubleshooting guide advises backoff with jitter, and the 8-minute connection limit comes with a session-continuation sample (15). Bedrock's SLA of 99.9 per cent a month per Region for model APIs, as read for amazon-nova-embeddings on 1 November (10). Generally available since 2 December 2025 (10). 20 + 25 + 15 + 15 + 10 + 10 = 95.",
          "b": "Hosted reading of the checklist. status.inworld.ai is a public status page (20), with history we couldn't read, as on inworld-tts (5). Concurrent sessions are published per plan, 10 on On-Demand up to 1,000 on Growth (15). The rate limits page gives exponential backoff with jitter and Retry-After on longer windows, and sessions emit `rate_limits.updated`, with nothing on reconnecting a dropped session (12 of 15). An SLA appears only in the Enterprise column, with no terms (0). No preview or beta label on the Realtime API (10). 20 + 5 + 15 + 12 + 0 + 10 = 62."
        },
        "scores": {
          "a": 95,
          "b": 62
        }
      },
      {
        "by": 30,
        "category": "payments",
        "leads": "inworld-realtime",
        "name": "Payments \u0026 pricing",
        "reasons": {
          "a": "No x402, MPP or L402 (0). The Nova and Bedrock pricing pages carry a speech-to-speech table drawn by script, so the per-token prices weren't read and this line scores absent, which is our reader's limit and not the vendor's (0). New accounts get up to $200 in Free Tier credits, and the Free Tier FAQ says most new customers need no payment method, read as half on the other AWS listings (10). A person signs up for an AWS account in a browser (0). Total 10.",
          "b": "No x402, MPP or L402 (0). No per-session price, but each billed part (STT per hour, TTS per character, LLM per token) is priced publicly (20). On-Demand includes free STT and TTS allowances and lists no payment method, though some premium LLMs need a card on file (20). A person signs up in a browser before a key exists (0). Total 40."
        },
        "scores": {
          "a": 10,
          "b": 40
        }
      },
      {
        "by": 21,
        "category": "maintenance",
        "leads": "inworld-realtime",
        "name": "Maintenance \u0026 community",
        "reasons": {
          "a": "Read as a model. The newest dated change is the May 2026 refresh, completed on 28 May, 162 days before this check (10). No Sonic release note or document history entry in the 90 days from 8 August. The pre-alpha Python SDK shipped 0.9.0, 0.10.0, 0.11.0 and 0.12.0 in the window, counted half (10 of 20). Release notes, document history, re:Post and AWS Support (10 of 15). The JavaScript Bedrock runtime client is current at 3.1163.0, while the Python route is pre-alpha (10 of 15). The SDKs ship on AWS's release train; CI not read (10). Total 50.",
          "b": "Release note of 16 October 2026 (`cache_transcript`), 21 days ago (30). Three dated Realtime entries in the 90 days from 8 August, on 14 September, 23 September and 16 October (20). Discord and support@inworld.ai, with no evidence of answers read (8 of 15). Works with OpenAI's Realtime clients and the CLI is current at 1.5.0, but there is no Inworld Realtime SDK (8 of 15). CLI on npm under MIT, CI not read (5 of 10). Total 71."
        },
        "scores": {
          "a": 50,
          "b": 71
        }
      },
      {
        "by": 19,
        "category": "security",
        "leads": "amazon-nova-sonic",
        "name": "Security \u0026 auth",
        "reasons": {
          "a": "SigV4 with IAM roles and temporary credentials scoped per model ARN, as the Sonic quickstart signs (30). Tools run in the client, so side effects are the developer's to approve, and IAM can restrict which models a role invokes, with no approval step in the API (12 of 20). The model listens to callers and acts on tool results, and no prompt-injection guidance was found in the Sonic guide (5 of 15). CloudTrail logs Bedrock API calls, read as amazon-nova-embeddings was (12 of 15). VDP on HackerOne, Bedrock in SOC scope and a valid security.txt on aws.amazon.com, with no paid bounty, as on the other AWS listings (18 of 20). Total 77.",
          "b": "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. Session IDs, not secrets, go in the URL (25 of 30). Tools run in the client, so the developer approves side effects, with no approval step in the API (10 of 20). The agent listens to callers and passes their speech to an LLM, and no prompt-injection guidance was found (5 of 15). Usage per key and a Performance page with 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 58. Zero data retention covers session content from the Developer plan up, but not requests routed to third-party LLM providers."
        },
        "scores": {
          "a": 77,
          "b": 58
        }
      },
      {
        "by": 16,
        "category": "transparency",
        "leads": "amazon-nova-sonic",
        "name": "Transparency \u0026 trust",
        "reasons": {
          "a": "Closed model under the AWS Service Terms, with Apache-2.0 SDKs and samples (15). Bedrock stores no inputs or outputs by default and model providers can't see them, Sonic isn't on the abuse-detection page's list of models whose traffic is stored, and section 50.3 doesn't list Bedrock among services whose content improves AWS services, as read for amazon-nova-embeddings on 1 November (22 of 30). Bedrock's lifecycle policy for models launched before 7 September 2026 promises 12 months and a Legacy period of at least 6 months, but the March and May refreshes changed the model in place under the same ID (15 of 20). Regions are listed, with sub-processors not read (12 of 20). Total 64.",
          "b": "Closed service with clear terms naming Theai, Inc. dba Inworld AI (15). The ZDR page says what a session keeps and that third-party LLM requests aren't covered, but the terms and privacy notice disagree on training (12 of 30). Release notes flag potentially breaking changes with the clients affected and what to do, without stating a notice period (14 of 20). US headquarters with EU and India residency on Enterprise, and no sub-processor list in the docs, while sessions may route to third-party LLM providers (10 of 20). Total 51."
        },
        "scores": {
          "a": 79,
          "b": 63
        }
      },
      {
        "by": 15,
        "category": "schema",
        "leads": "amazon-nova-sonic",
        "name": "Schema \u0026 documentation",
        "reasons": {
          "a": "The Bedrock service model types `InvokeModelWithBidirectionalStream`, but the Sonic events inside it (session, prompt, content, tool and usage events) are JSON payloads documented only in the guide, with no schema file (12 of 25). llms.txt and Markdown copies of the Nova 2 guide (10). Guides on the event lifecycle, barge-in, turn-taking, async tools and chat history say when and how to use each (16 of 20). Event fields are documented as JSON examples and tables, not typed schemas (10 of 15). Sample repositories in several languages and the API's exceptions with HTTP codes (12 of 15). Release notes and document history, with in-place model refreshes and a versioned model ID (15). Total 75.",
          "b": "No AsyncAPI or other machine-readable file for the socket, and the spec paths redirect (0). llms.txt, Markdown twins and a docs MCP server (10). The overview, OpenAI migration guide, `providerData` reference and the billing page's account of how a session is counted say what to use when (16 of 20). The reference lists every client and server event with field types and required marks, as text rather than a schema (12 of 15). JavaScript and Python example projects and an error event with `type`, `code` and `param`, without a list of codes (9 of 15). Dated release notes with affected clients and required actions, but no API version beyond `/v1` (13 of 15). Total 60."
        },
        "scores": {
          "a": 75,
          "b": 60
        }
      }
    ],
    "facts": [
      {
        "a": "HTTP API",
        "b": "HTTP API",
        "name": "Kind"
      },
      {
        "a": "Amazon Web Services",
        "b": "Inworld AI",
        "name": "Vendor"
      },
      {
        "a": "no (local only)",
        "b": "no (local only)",
        "name": "Hosted endpoint"
      },
      {
        "a": "HTTP",
        "b": "websocket, HTTP",
        "name": "Transports"
      },
      {
        "a": "API key",
        "b": "API key",
        "name": "Auth"
      },
      {
        "a": "Pay per use",
        "b": "Pay per use",
        "name": "Pricing"
      },
      {
        "a": "not published",
        "b": "$25 per 1M characters",
        "name": "Price for voice agents"
      },
      {
        "a": "no",
        "b": "no",
        "name": "x402"
      },
      {
        "a": "0",
        "b": "0",
        "name": "Tools exposed"
      },
      {
        "a": "no",
        "b": "no",
        "name": "Read-only variant documented"
      },
      {
        "a": "yes",
        "b": "yes",
        "name": "llms.txt"
      },
      {
        "a": "2026-05-28",
        "b": "2026-10-16",
        "name": "Last release"
      },
      {
        "a": "2026-10-01",
        "b": "2025-06-11",
        "name": "Terms last updated"
      },
      {
        "a": "2026-05-18",
        "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": "yes",
        "b": "not found in the text",
        "name": "Terms or service can change without notice"
      },
      {
        "a": "not found in the text",
        "b": "not found in the text",
        "name": "Arbitration or class-action waiver"
      }
    ],
    "faq": [
      {
        "answer": "Amazon Nova 2 Sonic scores 67.6 (B) on agent readiness against Inworld Realtime API's 60.1 (C), and leads in 4 of 7 scored categories. Inworld Realtime API leads on payments \u0026 pricing and maintenance \u0026 community.",
        "question": "Which is better for AI agents, Amazon Nova 2 Sonic or Inworld Realtime API?"
      },
      {
        "answer": "Both need an API key.",
        "question": "Do Amazon Nova 2 Sonic and Inworld Realtime API need an API key?"
      },
      {
        "answer": "No hosted endpoint is listed for Amazon Nova 2 Sonic. No hosted endpoint is listed for Inworld Realtime API.",
        "question": "Can an agent call Amazon Nova 2 Sonic and Inworld Realtime API without installing anything?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": [
          "Reliability, 95 against 62",
          "Schema \u0026 documentation, 75 against 60",
          "Security \u0026 auth, 77 against 58",
          "Transparency \u0026 trust, 79 against 63"
        ],
        "also": null,
        "goodFor": "Voice agents on AWS, call centres on Amazon Connect, teams that want IAM and in-account data handling.",
        "slug": "amazon-nova-sonic",
        "watchFor": "Connections end after 8 minutes, so long calls need the session-continuation pattern"
      },
      {
        "aheadOn": [
          "Payments \u0026 pricing, 40 against 10",
          "Maintenance \u0026 community, 71 against 50"
        ],
        "also": null,
        "goodFor": "Teams moving off OpenAI's Realtime API who want a choice of LLM and Inworld voices.",
        "slug": "inworld-realtime",
        "watchFor": "No per-minute price. A session's cost depends on STT, LLM tokens and TTS characters, and interrupted segments are still billed"
      }
    ],
    "history": null,
    "job": {
      "capability": "voice.agent",
      "name": "Voice agents"
    },
    "others": [
      {
        "json": "https://www.anchorterminal.com/compare/amazon-nova-sonic-vs-assemblyai-voice-agent.json",
        "title": "Amazon Nova 2 Sonic vs AssemblyAI Voice Agent API",
        "url": "https://www.anchorterminal.com/compare/amazon-nova-sonic-vs-assemblyai-voice-agent"
      },
      {
        "json": "https://www.anchorterminal.com/compare/amazon-nova-sonic-vs-bland-ai.json",
        "title": "Amazon Nova 2 Sonic vs Bland AI API + MCP",
        "url": "https://www.anchorterminal.com/compare/amazon-nova-sonic-vs-bland-ai"
      },
      {
        "json": "https://www.anchorterminal.com/compare/amazon-nova-sonic-vs-bolna.json",
        "title": "Amazon Nova 2 Sonic vs Bolna API + MCP",
        "url": "https://www.anchorterminal.com/compare/amazon-nova-sonic-vs-bolna"
      },
      {
        "json": "https://www.anchorterminal.com/compare/amazon-nova-sonic-vs-deepgram-voice-agent.json",
        "title": "Amazon Nova 2 Sonic vs Deepgram Voice Agent API",
        "url": "https://www.anchorterminal.com/compare/amazon-nova-sonic-vs-deepgram-voice-agent"
      },
      {
        "json": "https://www.anchorterminal.com/compare/amazon-nova-sonic-vs-elevenlabs-agents.json",
        "title": "Amazon Nova 2 Sonic vs ElevenLabs Agents API + MCP",
        "url": "https://www.anchorterminal.com/compare/amazon-nova-sonic-vs-elevenlabs-agents"
      },
      {
        "json": "https://www.anchorterminal.com/compare/amazon-nova-sonic-vs-fone-me.json",
        "title": "Amazon Nova 2 Sonic vs fone.me",
        "url": "https://www.anchorterminal.com/compare/amazon-nova-sonic-vs-fone-me"
      },
      {
        "json": "https://www.anchorterminal.com/compare/amazon-nova-sonic-vs-gemini-live.json",
        "title": "Amazon Nova 2 Sonic vs Gemini Live API",
        "url": "https://www.anchorterminal.com/compare/amazon-nova-sonic-vs-gemini-live"
      },
      {
        "json": "https://www.anchorterminal.com/compare/amazon-nova-sonic-vs-gpt-live.json",
        "title": "Amazon Nova 2 Sonic vs GPT-Live",
        "url": "https://www.anchorterminal.com/compare/amazon-nova-sonic-vs-gpt-live"
      },
      {
        "json": "https://www.anchorterminal.com/compare/amazon-nova-sonic-vs-harmony-ai.json",
        "title": "Amazon Nova 2 Sonic vs Harmony.ai",
        "url": "https://www.anchorterminal.com/compare/amazon-nova-sonic-vs-harmony-ai"
      },
      {
        "json": "https://www.anchorterminal.com/compare/amazon-nova-sonic-vs-hume-evi.json",
        "title": "Amazon Nova 2 Sonic vs Hume EVI (Empathic Voice Interface)",
        "url": "https://www.anchorterminal.com/compare/amazon-nova-sonic-vs-hume-evi"
      },
      {
        "json": "https://www.anchorterminal.com/compare/amazon-nova-sonic-vs-livekit-agents.json",
        "title": "Amazon Nova 2 Sonic vs LiveKit Agents",
        "url": "https://www.anchorterminal.com/compare/amazon-nova-sonic-vs-livekit-agents"
      },
      {
        "json": "https://www.anchorterminal.com/compare/amazon-nova-sonic-vs-openai-realtime.json",
        "title": "Amazon Nova 2 Sonic vs OpenAI Realtime API",
        "url": "https://www.anchorterminal.com/compare/amazon-nova-sonic-vs-openai-realtime"
      },
      {
        "json": "https://www.anchorterminal.com/compare/amazon-nova-sonic-vs-pipecat.json",
        "title": "Amazon Nova 2 Sonic vs Pipecat",
        "url": "https://www.anchorterminal.com/compare/amazon-nova-sonic-vs-pipecat"
      },
      {
        "json": "https://www.anchorterminal.com/compare/amazon-nova-sonic-vs-placecall.json",
        "title": "Amazon Nova 2 Sonic vs PlaceCall",
        "url": "https://www.anchorterminal.com/compare/amazon-nova-sonic-vs-placecall"
      },
      {
        "json": "https://www.anchorterminal.com/compare/amazon-nova-sonic-vs-retell-ai.json",
        "title": "Amazon Nova 2 Sonic vs Retell AI API + MCP",
        "url": "https://www.anchorterminal.com/compare/amazon-nova-sonic-vs-retell-ai"
      },
      {
        "json": "https://www.anchorterminal.com/compare/amazon-nova-sonic-vs-rime-prism.json",
        "title": "Amazon Nova 2 Sonic vs Rime Prism",
        "url": "https://www.anchorterminal.com/compare/amazon-nova-sonic-vs-rime-prism"
      },
      {
        "json": "https://www.anchorterminal.com/compare/amazon-nova-sonic-vs-synthflow.json",
        "title": "Amazon Nova 2 Sonic vs Synthflow API + MCP",
        "url": "https://www.anchorterminal.com/compare/amazon-nova-sonic-vs-synthflow"
      },
      {
        "json": "https://www.anchorterminal.com/compare/amazon-nova-sonic-vs-ultravox.json",
        "title": "Amazon Nova 2 Sonic vs Ultravox Realtime API",
        "url": "https://www.anchorterminal.com/compare/amazon-nova-sonic-vs-ultravox"
      },
      {
        "json": "https://www.anchorterminal.com/compare/amazon-nova-sonic-vs-vaani-voice.json",
        "title": "Amazon Nova 2 Sonic vs Vaani Developer Platform",
        "url": "https://www.anchorterminal.com/compare/amazon-nova-sonic-vs-vaani-voice"
      },
      {
        "json": "https://www.anchorterminal.com/compare/amazon-nova-sonic-vs-vapi.json",
        "title": "Amazon Nova 2 Sonic vs Vapi API + MCP",
        "url": "https://www.anchorterminal.com/compare/amazon-nova-sonic-vs-vapi"
      },
      {
        "json": "https://www.anchorterminal.com/compare/amazon-nova-sonic-vs-vocily.json",
        "title": "Amazon Nova 2 Sonic vs Vocily AI",
        "url": "https://www.anchorterminal.com/compare/amazon-nova-sonic-vs-vocily"
      },
      {
        "json": "https://www.anchorterminal.com/compare/amazon-nova-sonic-vs-vogent.json",
        "title": "Amazon Nova 2 Sonic vs Vogent API",
        "url": "https://www.anchorterminal.com/compare/amazon-nova-sonic-vs-vogent"
      },
      {
        "json": "https://www.anchorterminal.com/compare/assemblyai-voice-agent-vs-inworld-realtime.json",
        "title": "AssemblyAI Voice Agent API vs Inworld Realtime API",
        "url": "https://www.anchorterminal.com/compare/assemblyai-voice-agent-vs-inworld-realtime"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bland-ai-vs-inworld-realtime.json",
        "title": "Bland AI API + MCP vs Inworld Realtime API",
        "url": "https://www.anchorterminal.com/compare/bland-ai-vs-inworld-realtime"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bolna-vs-inworld-realtime.json",
        "title": "Bolna API + MCP vs Inworld Realtime API",
        "url": "https://www.anchorterminal.com/compare/bolna-vs-inworld-realtime"
      },
      {
        "json": "https://www.anchorterminal.com/compare/deepgram-voice-agent-vs-inworld-realtime.json",
        "title": "Deepgram Voice Agent API vs Inworld Realtime API",
        "url": "https://www.anchorterminal.com/compare/deepgram-voice-agent-vs-inworld-realtime"
      },
      {
        "json": "https://www.anchorterminal.com/compare/elevenlabs-agents-vs-inworld-realtime.json",
        "title": "ElevenLabs Agents API + MCP vs Inworld Realtime API",
        "url": "https://www.anchorterminal.com/compare/elevenlabs-agents-vs-inworld-realtime"
      },
      {
        "json": "https://www.anchorterminal.com/compare/fone-me-vs-inworld-realtime.json",
        "title": "fone.me vs Inworld Realtime API",
        "url": "https://www.anchorterminal.com/compare/fone-me-vs-inworld-realtime"
      },
      {
        "json": "https://www.anchorterminal.com/compare/gemini-live-vs-inworld-realtime.json",
        "title": "Gemini Live API vs Inworld Realtime API",
        "url": "https://www.anchorterminal.com/compare/gemini-live-vs-inworld-realtime"
      },
      {
        "json": "https://www.anchorterminal.com/compare/gpt-live-vs-inworld-realtime.json",
        "title": "GPT-Live vs Inworld Realtime API",
        "url": "https://www.anchorterminal.com/compare/gpt-live-vs-inworld-realtime"
      },
      {
        "json": "https://www.anchorterminal.com/compare/harmony-ai-vs-inworld-realtime.json",
        "title": "Harmony.ai vs Inworld Realtime API",
        "url": "https://www.anchorterminal.com/compare/harmony-ai-vs-inworld-realtime"
      },
      {
        "json": "https://www.anchorterminal.com/compare/hume-evi-vs-inworld-realtime.json",
        "title": "Hume EVI (Empathic Voice Interface) vs Inworld Realtime API",
        "url": "https://www.anchorterminal.com/compare/hume-evi-vs-inworld-realtime"
      },
      {
        "json": "https://www.anchorterminal.com/compare/inworld-realtime-vs-livekit-agents.json",
        "title": "Inworld Realtime API vs LiveKit Agents",
        "url": "https://www.anchorterminal.com/compare/inworld-realtime-vs-livekit-agents"
      },
      {
        "json": "https://www.anchorterminal.com/compare/inworld-realtime-vs-openai-realtime.json",
        "title": "Inworld Realtime API vs OpenAI Realtime API",
        "url": "https://www.anchorterminal.com/compare/inworld-realtime-vs-openai-realtime"
      },
      {
        "json": "https://www.anchorterminal.com/compare/inworld-realtime-vs-pipecat.json",
        "title": "Inworld Realtime API vs Pipecat",
        "url": "https://www.anchorterminal.com/compare/inworld-realtime-vs-pipecat"
      },
      {
        "json": "https://www.anchorterminal.com/compare/inworld-realtime-vs-placecall.json",
        "title": "Inworld Realtime API vs PlaceCall",
        "url": "https://www.anchorterminal.com/compare/inworld-realtime-vs-placecall"
      },
      {
        "json": "https://www.anchorterminal.com/compare/inworld-realtime-vs-retell-ai.json",
        "title": "Inworld Realtime API vs Retell AI API + MCP",
        "url": "https://www.anchorterminal.com/compare/inworld-realtime-vs-retell-ai"
      },
      {
        "json": "https://www.anchorterminal.com/compare/inworld-realtime-vs-rime-prism.json",
        "title": "Inworld Realtime API vs Rime Prism",
        "url": "https://www.anchorterminal.com/compare/inworld-realtime-vs-rime-prism"
      },
      {
        "json": "https://www.anchorterminal.com/compare/inworld-realtime-vs-synthflow.json",
        "title": "Inworld Realtime API vs Synthflow API + MCP",
        "url": "https://www.anchorterminal.com/compare/inworld-realtime-vs-synthflow"
      },
      {
        "json": "https://www.anchorterminal.com/compare/inworld-realtime-vs-ultravox.json",
        "title": "Inworld Realtime API vs Ultravox Realtime API",
        "url": "https://www.anchorterminal.com/compare/inworld-realtime-vs-ultravox"
      },
      {
        "json": "https://www.anchorterminal.com/compare/inworld-realtime-vs-vaani-voice.json",
        "title": "Inworld Realtime API vs Vaani Developer Platform",
        "url": "https://www.anchorterminal.com/compare/inworld-realtime-vs-vaani-voice"
      },
      {
        "json": "https://www.anchorterminal.com/compare/inworld-realtime-vs-vapi.json",
        "title": "Inworld Realtime API vs Vapi API + MCP",
        "url": "https://www.anchorterminal.com/compare/inworld-realtime-vs-vapi"
      },
      {
        "json": "https://www.anchorterminal.com/compare/inworld-realtime-vs-vocily.json",
        "title": "Inworld Realtime API vs Vocily AI",
        "url": "https://www.anchorterminal.com/compare/inworld-realtime-vs-vocily"
      },
      {
        "json": "https://www.anchorterminal.com/compare/inworld-realtime-vs-vogent.json",
        "title": "Inworld Realtime API vs Vogent API",
        "url": "https://www.anchorterminal.com/compare/inworld-realtime-vs-vogent"
      },
      {
        "json": "https://www.anchorterminal.com/compare/cuelight-vs-inworld-realtime.json",
        "title": "CueLight vs Inworld Realtime API",
        "url": "https://www.anchorterminal.com/compare/cuelight-vs-inworld-realtime"
      },
      {
        "json": "https://www.anchorterminal.com/compare/inworld-realtime-vs-pipecat-phonellm.json",
        "title": "Inworld Realtime API vs Pipecat PhoneLLM",
        "url": "https://www.anchorterminal.com/compare/inworld-realtime-vs-pipecat-phonellm"
      },
      {
        "json": "https://www.anchorterminal.com/compare/amazon-nova-sonic-vs-pipecat-phonellm.json",
        "title": "Amazon Nova 2 Sonic vs Pipecat PhoneLLM",
        "url": "https://www.anchorterminal.com/compare/amazon-nova-sonic-vs-pipecat-phonellm"
      }
    ],
    "panel": null,
    "scores": [
      {
        "amazon-nova-sonic": 95,
        "by": 33,
        "edge": "amazon-nova-sonic",
        "inworld-realtime": 62,
        "key": "reliability",
        "name": "Reliability",
        "weight": 16
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "amazon-nova-sonic": 75,
        "by": 15,
        "edge": "amazon-nova-sonic",
        "inworld-realtime": 60,
        "key": "schema",
        "name": "Schema \u0026 documentation",
        "weight": 13
      },
      {
        "amazon-nova-sonic": 64,
        "by": 4,
        "edge": "inworld-realtime",
        "inworld-realtime": 68,
        "key": "ergonomics",
        "name": "Agent ergonomics",
        "weight": 13
      },
      {
        "amazon-nova-sonic": 77,
        "by": 19,
        "edge": "amazon-nova-sonic",
        "inworld-realtime": 58,
        "key": "security",
        "name": "Security \u0026 auth",
        "weight": 14
      },
      {
        "amazon-nova-sonic": 10,
        "by": 30,
        "edge": "inworld-realtime",
        "inworld-realtime": 40,
        "key": "payments",
        "name": "Payments \u0026 pricing",
        "weight": 10
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "amazon-nova-sonic": 50,
        "by": 21,
        "edge": "inworld-realtime",
        "inworld-realtime": 71,
        "key": "maintenance",
        "name": "Maintenance \u0026 community",
        "weight": 7
      },
      {
        "amazon-nova-sonic": 79,
        "by": 16,
        "edge": "amazon-nova-sonic",
        "inworld-realtime": 63,
        "key": "transparency",
        "name": "Transparency \u0026 trust",
        "weight": 7
      }
    ],
    "summary": "Amazon Nova 2 Sonic scores 67.6 (B) on agent readiness against Inworld Realtime API's 60.1 (C), and leads in 4 of 7 scored categories. Inworld Realtime API leads on payments \u0026 pricing and maintenance \u0026 community. Both do voice agents.",
    "tasks": null,
    "tutorials": [],
    "verdicts": {
      "amazon-nova-sonic": "Nova 2 Sonic runs speech-to-speech conversations with asynchronous tools on Bedrock, with IAM scoping, no default storage of inputs and a 99.9 per cent SLA. Sessions cut off at 8 minutes, the Python SDK is pre-alpha, and the event payloads have no schema file. Prices are in a script-drawn table we couldn't read.",
      "inworld-realtime": "Inworld's Realtime API speaks OpenAI's Realtime protocol over WebSocket or WebRTC, with a choice of LLM, client-side tools and dated release notes. Cost is the sum of STT, LLM and TTS usage with no per-minute price, there is no machine-readable event schema, and status history couldn't be read."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/amazon-nova-sonic-vs-inworld-realtime",
    "json": "https://www.anchorterminal.com/compare/amazon-nova-sonic-vs-inworld-realtime.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/amazon-nova-sonic-vs-inworld-realtime.md",
    "mcp": "https://www.anchorterminal.com/mcp",
    "slim": "https://www.anchorterminal.com/compare/amazon-nova-sonic-vs-inworld-realtime.min.md"
  },
  "markdown": "Amazon Nova 2 Sonic scores 67.6 (B) on agent readiness against Inworld Realtime API's 60.1 (C), and leads in 4 of 7 scored categories. Inworld Realtime API leads on payments \u0026 pricing and maintenance \u0026 community. Both do voice agents.\n\n- Amazon Nova 2 Sonic: grade B, 67.6/100, rank #315 of 1510. Markdown https://www.anchorterminal.com/tools/amazon-nova-sonic.md · JSON https://www.anchorterminal.com/api/v1/tools/amazon-nova-sonic.json\n- Inworld Realtime API: grade C, 60.1/100, rank #671 of 1510. Markdown https://www.anchorterminal.com/tools/inworld-realtime.md · JSON https://www.anchorterminal.com/api/v1/tools/inworld-realtime.json\n- Best conversational voice-agent APIs: https://www.anchorterminal.com/best/voice-agents/index.md\n- All 518 voice agents comparisons: https://www.anchorterminal.com/compare/voice-agents/index.md\n\n## Which one, for what\n\n### Amazon Nova 2 Sonic (B)\n\nGood for: Voice agents on AWS, call centres on Amazon Connect, teams that want IAM and in-account data handling.\n\nAhead on:\n- Reliability, 95 against 62\n- Schema \u0026 documentation, 75 against 60\n- Security \u0026 auth, 77 against 58\n- Transparency \u0026 trust, 79 against 63\n\nWatch for: Connections end after 8 minutes, so long calls need the session-continuation pattern\n\n### Inworld Realtime API (C)\n\nGood for: Teams moving off OpenAI's Realtime API who want a choice of LLM and Inworld voices.\n\nAhead on:\n- Payments \u0026 pricing, 40 against 10\n- Maintenance \u0026 community, 71 against 50\n\nWatch for: No per-minute price. A session's cost depends on STT, LLM tokens and TTS characters, and interrupted segments are still billed\n\n\n## Why the edge\n\n### Reliability: Amazon Nova 2 Sonic +33\n\n- Amazon Nova 2 Sonic (95): Hosted reading. AWS Health Dashboard with per-service, per-Region history (20). The dashboard history file (newest event 30 October 2026) lists no Bedrock event in the 90 days from 8 August, and the 3 September us-west-2 event names STS, Connect and IAM Identity Center, not Bedrock. The public dashboard records broad events only, so 25 of 30, as amazon-nova-embeddings was read. Quotas published, 20 concurrent requests per Region, not adjustable (15). The stream API lists `ThrottlingException` (429), `ServiceUnavailableException` (503), `ModelTimeoutException` (408) and `ModelStreamErrorException` (424), Bedrock's troubleshooting guide advises backoff with jitter, and the 8-minute connection limit comes with a session-continuation sample (15). Bedrock's SLA of 99.9 per cent a month per Region for model APIs, as read for amazon-nova-embeddings on 1 November (10). Generally available since 2 December 2025 (10). 20 + 25 + 15 + 15 + 10 + 10 = 95.\n- Inworld Realtime API (62): Hosted reading of the checklist. status.inworld.ai is a public status page (20), with history we couldn't read, as on inworld-tts (5). Concurrent sessions are published per plan, 10 on On-Demand up to 1,000 on Growth (15). The rate limits page gives exponential backoff with jitter and Retry-After on longer windows, and sessions emit `rate_limits.updated`, with nothing on reconnecting a dropped session (12 of 15). An SLA appears only in the Enterprise column, with no terms (0). No preview or beta label on the Realtime API (10). 20 + 5 + 15 + 12 + 0 + 10 = 62.\n\n### Payments \u0026 pricing: Inworld Realtime API +30\n\n- Amazon Nova 2 Sonic (10): No x402, MPP or L402 (0). The Nova and Bedrock pricing pages carry a speech-to-speech table drawn by script, so the per-token prices weren't read and this line scores absent, which is our reader's limit and not the vendor's (0). New accounts get up to $200 in Free Tier credits, and the Free Tier FAQ says most new customers need no payment method, read as half on the other AWS listings (10). A person signs up for an AWS account in a browser (0). Total 10.\n- Inworld Realtime API (40): No x402, MPP or L402 (0). No per-session price, but each billed part (STT per hour, TTS per character, LLM per token) is priced publicly (20). On-Demand includes free STT and TTS allowances and lists no payment method, though some premium LLMs need a card on file (20). A person signs up in a browser before a key exists (0). Total 40.\n\n### Maintenance \u0026 community: Inworld Realtime API +21\n\n- Amazon Nova 2 Sonic (50): Read as a model. The newest dated change is the May 2026 refresh, completed on 28 May, 162 days before this check (10). No Sonic release note or document history entry in the 90 days from 8 August. The pre-alpha Python SDK shipped 0.9.0, 0.10.0, 0.11.0 and 0.12.0 in the window, counted half (10 of 20). Release notes, document history, re:Post and AWS Support (10 of 15). The JavaScript Bedrock runtime client is current at 3.1163.0, while the Python route is pre-alpha (10 of 15). The SDKs ship on AWS's release train; CI not read (10). Total 50.\n- Inworld Realtime API (71): Release note of 16 October 2026 (`cache_transcript`), 21 days ago (30). Three dated Realtime entries in the 90 days from 8 August, on 14 September, 23 September and 16 October (20). Discord and support@inworld.ai, with no evidence of answers read (8 of 15). Works with OpenAI's Realtime clients and the CLI is current at 1.5.0, but there is no Inworld Realtime SDK (8 of 15). CLI on npm under MIT, CI not read (5 of 10). Total 71.\n\n### Security \u0026 auth: Amazon Nova 2 Sonic +19\n\n- Amazon Nova 2 Sonic (77): SigV4 with IAM roles and temporary credentials scoped per model ARN, as the Sonic quickstart signs (30). Tools run in the client, so side effects are the developer's to approve, and IAM can restrict which models a role invokes, with no approval step in the API (12 of 20). The model listens to callers and acts on tool results, and no prompt-injection guidance was found in the Sonic guide (5 of 15). CloudTrail logs Bedrock API calls, read as amazon-nova-embeddings was (12 of 15). VDP on HackerOne, Bedrock in SOC scope and a valid security.txt on aws.amazon.com, with no paid bounty, as on the other AWS listings (18 of 20). Total 77.\n- Inworld Realtime API (58): 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. Session IDs, not secrets, go in the URL (25 of 30). Tools run in the client, so the developer approves side effects, with no approval step in the API (10 of 20). The agent listens to callers and passes their speech to an LLM, and no prompt-injection guidance was found (5 of 15). Usage per key and a Performance page with 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 58. Zero data retention covers session content from the Developer plan up, but not requests routed to third-party LLM providers.\n\n### Transparency \u0026 trust: Amazon Nova 2 Sonic +16\n\n- Amazon Nova 2 Sonic (79): Closed model under the AWS Service Terms, with Apache-2.0 SDKs and samples (15). Bedrock stores no inputs or outputs by default and model providers can't see them, Sonic isn't on the abuse-detection page's list of models whose traffic is stored, and section 50.3 doesn't list Bedrock among services whose content improves AWS services, as read for amazon-nova-embeddings on 1 November (22 of 30). Bedrock's lifecycle policy for models launched before 7 September 2026 promises 12 months and a Legacy period of at least 6 months, but the March and May refreshes changed the model in place under the same ID (15 of 20). Regions are listed, with sub-processors not read (12 of 20). Total 64.\n- Inworld Realtime API (63): Closed service with clear terms naming Theai, Inc. dba Inworld AI (15). The ZDR page says what a session keeps and that third-party LLM requests aren't covered, but the terms and privacy notice disagree on training (12 of 30). Release notes flag potentially breaking changes with the clients affected and what to do, without stating a notice period (14 of 20). US headquarters with EU and India residency on Enterprise, and no sub-processor list in the docs, while sessions may route to third-party LLM providers (10 of 20). Total 51.\n\n### Schema \u0026 documentation: Amazon Nova 2 Sonic +15\n\n- Amazon Nova 2 Sonic (75): The Bedrock service model types `InvokeModelWithBidirectionalStream`, but the Sonic events inside it (session, prompt, content, tool and usage events) are JSON payloads documented only in the guide, with no schema file (12 of 25). llms.txt and Markdown copies of the Nova 2 guide (10). Guides on the event lifecycle, barge-in, turn-taking, async tools and chat history say when and how to use each (16 of 20). Event fields are documented as JSON examples and tables, not typed schemas (10 of 15). Sample repositories in several languages and the API's exceptions with HTTP codes (12 of 15). Release notes and document history, with in-place model refreshes and a versioned model ID (15). Total 75.\n- Inworld Realtime API (60): No AsyncAPI or other machine-readable file for the socket, and the spec paths redirect (0). llms.txt, Markdown twins and a docs MCP server (10). The overview, OpenAI migration guide, `providerData` reference and the billing page's account of how a session is counted say what to use when (16 of 20). The reference lists every client and server event with field types and required marks, as text rather than a schema (12 of 15). JavaScript and Python example projects and an error event with `type`, `code` and `param`, without a list of codes (9 of 15). Dated release notes with affected clients and required actions, but no API version beyond `/v1` (13 of 15). Total 60.\n\n## Score by category\n\n| Category | Weight | Amazon Nova 2 Sonic | Inworld Realtime API | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 95 | 62 | Amazon Nova 2 Sonic +33 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 75 | 60 | Amazon Nova 2 Sonic +15 |\n| Agent ergonomics | 13% (16.2 this run) | 64 | 68 | Inworld Realtime API +4 |\n| Security \u0026 auth | 14% (17.5 this run) | 77 | 58 | Amazon Nova 2 Sonic +19 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 10 | 40 | Inworld Realtime API +30 |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 50 | 71 | Inworld Realtime API +21 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 79 | 63 | Amazon Nova 2 Sonic +16 |\n| Negative events | ≤15 | 0 | 0 | |\n| **Total** | | **67.6 · B** | **60.1 · C** | |\n\n## Facts side by side\n\n| Fact | Amazon Nova 2 Sonic | Inworld Realtime API |\n| --- | --- | --- |\n| Kind | HTTP API | HTTP API |\n| Vendor | Amazon Web Services | Inworld AI |\n| Hosted endpoint | no (local only) | no (local only) |\n| Transports | HTTP | websocket, HTTP |\n| Auth | API key | API key |\n| Pricing | Pay per use | Pay per use |\n| Price for voice agents | not published | $25 per 1M characters |\n| x402 | no | no |\n| Tools exposed | 0 | 0 |\n| Read-only variant documented | no | no |\n| llms.txt | yes | yes |\n| Last release | 2026-05-28 | 2026-10-16 |\n| Terms last updated | 2026-10-01 | 2025-06-11 |\n| Privacy policy last updated | 2026-05-18 | 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 | yes | not found in the text |\n| Arbitration or class-action waiver | not found in the text | not found in the text |\n\n## Verdicts\n\n**Amazon Nova 2 Sonic.** Nova 2 Sonic runs speech-to-speech conversations with asynchronous tools on Bedrock, with IAM scoping, no default storage of inputs and a 99.9 per cent SLA. Sessions cut off at 8 minutes, the Python SDK is pre-alpha, and the event payloads have no schema file. Prices are in a script-drawn table we couldn't read.\n\n**Inworld Realtime API.** Inworld's Realtime API speaks OpenAI's Realtime protocol over WebSocket or WebRTC, with a choice of LLM, client-side tools and dated release notes. Cost is the sum of STT, LLM and TTS usage with no per-minute price, there is no machine-readable event schema, and status history couldn't be read.\n\n## Before you call either\n\n### Amazon Nova 2 Sonic\n\n1. Plan a reconnect before 8 minutes and replay chat history (up to 200 KB) at the start of the new session\n2. Send session, prompt and content start events in order before any audio\n3. Make tool calls safe to repeat, since a reconnect can replay them\n4. Back off on `ThrottlingException` and stay within 20 concurrent sessions per Region\n5. Use the polyglot voices TIFFANY or MATTHEW when callers may switch language\n\n### Inworld Realtime API\n\n1. Set the auto follow-up off if your client sends its own `response.create` after a tool result, or replies double\n2. Read `response.done` usage as an estimate and mute input audio when nobody speaks, since STT bills every second sent\n3. Use `response.speak` for fixed greetings, which skips the LLM\n4. Treat `unsupported_field` errors as warnings and keep the session open\n5. Mint browser session tokens on your server and never ship the Basic credential to a client\n\n## Questions\n\n### Which is better for AI agents, Amazon Nova 2 Sonic or Inworld Realtime API?\n\nAmazon Nova 2 Sonic scores 67.6 (B) on agent readiness against Inworld Realtime API's 60.1 (C), and leads in 4 of 7 scored categories. Inworld Realtime API leads on payments \u0026 pricing and maintenance \u0026 community.\n\n### Do Amazon Nova 2 Sonic and Inworld Realtime API need an API key?\n\nBoth need an API key.\n\n### Can an agent call Amazon Nova 2 Sonic and Inworld Realtime API without installing anything?\n\nNo hosted endpoint is listed for Amazon Nova 2 Sonic. No hosted endpoint is listed for Inworld Realtime API.\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/amazon-nova-sonic-vs-inworld-realtime.json, and with the fewest tokens: https://www.anchorterminal.com/compare/amazon-nova-sonic-vs-inworld-realtime.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"amazon-nova-sonic\", \"b\": \"inworld-realtime\"}`. From a terminal: `anchor compare amazon-nova-sonic inworld-realtime`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/amazon-nova-sonic.json and https://www.anchorterminal.com/api/v1/tools/inworld-realtime.json\n\n## Other comparisons with Amazon Nova 2 Sonic or Inworld Realtime API\n\n- [Amazon Nova 2 Sonic vs AssemblyAI Voice Agent API](https://www.anchorterminal.com/compare/amazon-nova-sonic-vs-assemblyai-voice-agent.md)\n- [Amazon Nova 2 Sonic vs Bland AI API + MCP](https://www.anchorterminal.com/compare/amazon-nova-sonic-vs-bland-ai.md)\n- [Amazon Nova 2 Sonic vs Bolna API + MCP](https://www.anchorterminal.com/compare/amazon-nova-sonic-vs-bolna.md)\n- [Amazon Nova 2 Sonic vs Deepgram Voice Agent API](https://www.anchorterminal.com/compare/amazon-nova-sonic-vs-deepgram-voice-agent.md)\n- [Amazon Nova 2 Sonic vs ElevenLabs Agents API + MCP](https://www.anchorterminal.com/compare/amazon-nova-sonic-vs-elevenlabs-agents.md)\n- [Amazon Nova 2 Sonic vs fone.me](https://www.anchorterminal.com/compare/amazon-nova-sonic-vs-fone-me.md)\n- [Amazon Nova 2 Sonic vs Gemini Live API](https://www.anchorterminal.com/compare/amazon-nova-sonic-vs-gemini-live.md)\n- [Amazon Nova 2 Sonic vs GPT-Live](https://www.anchorterminal.com/compare/amazon-nova-sonic-vs-gpt-live.md)\n- [Amazon Nova 2 Sonic vs Harmony.ai](https://www.anchorterminal.com/compare/amazon-nova-sonic-vs-harmony-ai.md)\n- [Amazon Nova 2 Sonic vs Hume EVI (Empathic Voice Interface)](https://www.anchorterminal.com/compare/amazon-nova-sonic-vs-hume-evi.md)\n- [Amazon Nova 2 Sonic vs LiveKit Agents](https://www.anchorterminal.com/compare/amazon-nova-sonic-vs-livekit-agents.md)\n- [Amazon Nova 2 Sonic vs OpenAI Realtime API](https://www.anchorterminal.com/compare/amazon-nova-sonic-vs-openai-realtime.md)\n- [Amazon Nova 2 Sonic vs Pipecat](https://www.anchorterminal.com/compare/amazon-nova-sonic-vs-pipecat.md)\n- [Amazon Nova 2 Sonic vs PlaceCall](https://www.anchorterminal.com/compare/amazon-nova-sonic-vs-placecall.md)\n- [Amazon Nova 2 Sonic vs Retell AI API + MCP](https://www.anchorterminal.com/compare/amazon-nova-sonic-vs-retell-ai.md)\n- [Amazon Nova 2 Sonic vs Rime Prism](https://www.anchorterminal.com/compare/amazon-nova-sonic-vs-rime-prism.md)\n- [Amazon Nova 2 Sonic vs Synthflow API + MCP](https://www.anchorterminal.com/compare/amazon-nova-sonic-vs-synthflow.md)\n- [Amazon Nova 2 Sonic vs Ultravox Realtime API](https://www.anchorterminal.com/compare/amazon-nova-sonic-vs-ultravox.md)\n- [Amazon Nova 2 Sonic vs Vaani Developer Platform](https://www.anchorterminal.com/compare/amazon-nova-sonic-vs-vaani-voice.md)\n- [Amazon Nova 2 Sonic vs Vapi API + MCP](https://www.anchorterminal.com/compare/amazon-nova-sonic-vs-vapi.md)\n- [Amazon Nova 2 Sonic vs Vocily AI](https://www.anchorterminal.com/compare/amazon-nova-sonic-vs-vocily.md)\n- [Amazon Nova 2 Sonic vs Vogent API](https://www.anchorterminal.com/compare/amazon-nova-sonic-vs-vogent.md)\n- [AssemblyAI Voice Agent API vs Inworld Realtime API](https://www.anchorterminal.com/compare/assemblyai-voice-agent-vs-inworld-realtime.md)\n- [Bland AI API + MCP vs Inworld Realtime API](https://www.anchorterminal.com/compare/bland-ai-vs-inworld-realtime.md)\n- [Bolna API + MCP vs Inworld Realtime API](https://www.anchorterminal.com/compare/bolna-vs-inworld-realtime.md)\n- [Deepgram Voice Agent API vs Inworld Realtime API](https://www.anchorterminal.com/compare/deepgram-voice-agent-vs-inworld-realtime.md)\n- [ElevenLabs Agents API + MCP vs Inworld Realtime API](https://www.anchorterminal.com/compare/elevenlabs-agents-vs-inworld-realtime.md)\n- [fone.me vs Inworld Realtime API](https://www.anchorterminal.com/compare/fone-me-vs-inworld-realtime.md)\n- [Gemini Live API vs Inworld Realtime API](https://www.anchorterminal.com/compare/gemini-live-vs-inworld-realtime.md)\n- [GPT-Live vs Inworld Realtime API](https://www.anchorterminal.com/compare/gpt-live-vs-inworld-realtime.md)\n- [Harmony.ai vs Inworld Realtime API](https://www.anchorterminal.com/compare/harmony-ai-vs-inworld-realtime.md)\n- [Hume EVI (Empathic Voice Interface) vs Inworld Realtime API](https://www.anchorterminal.com/compare/hume-evi-vs-inworld-realtime.md)\n- [Inworld Realtime API vs LiveKit Agents](https://www.anchorterminal.com/compare/inworld-realtime-vs-livekit-agents.md)\n- [Inworld Realtime API vs OpenAI Realtime API](https://www.anchorterminal.com/compare/inworld-realtime-vs-openai-realtime.md)\n- [Inworld Realtime API vs Pipecat](https://www.anchorterminal.com/compare/inworld-realtime-vs-pipecat.md)\n- [Inworld Realtime API vs PlaceCall](https://www.anchorterminal.com/compare/inworld-realtime-vs-placecall.md)\n- [Inworld Realtime API vs Retell AI API + MCP](https://www.anchorterminal.com/compare/inworld-realtime-vs-retell-ai.md)\n- [Inworld Realtime API vs Rime Prism](https://www.anchorterminal.com/compare/inworld-realtime-vs-rime-prism.md)\n- [Inworld Realtime API vs Synthflow API + MCP](https://www.anchorterminal.com/compare/inworld-realtime-vs-synthflow.md)\n- [Inworld Realtime API vs Ultravox Realtime API](https://www.anchorterminal.com/compare/inworld-realtime-vs-ultravox.md)\n- [Inworld Realtime API vs Vaani Developer Platform](https://www.anchorterminal.com/compare/inworld-realtime-vs-vaani-voice.md)\n- [Inworld Realtime API vs Vapi API + MCP](https://www.anchorterminal.com/compare/inworld-realtime-vs-vapi.md)\n- [Inworld Realtime API vs Vocily AI](https://www.anchorterminal.com/compare/inworld-realtime-vs-vocily.md)\n- [Inworld Realtime API vs Vogent API](https://www.anchorterminal.com/compare/inworld-realtime-vs-vogent.md)\n- [CueLight vs Inworld Realtime API](https://www.anchorterminal.com/compare/cuelight-vs-inworld-realtime.md)\n- [Inworld Realtime API vs Pipecat PhoneLLM](https://www.anchorterminal.com/compare/inworld-realtime-vs-pipecat-phonellm.md)\n- [Amazon Nova 2 Sonic vs Pipecat PhoneLLM](https://www.anchorterminal.com/compare/amazon-nova-sonic-vs-pipecat-phonellm.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": "Amazon Nova 2 Sonic vs Inworld Realtime API",
        "url": ""
      }
    ],
    "description": "Amazon Nova 2 Sonic scores 67.6 (B) to Inworld Realtime's 60.1 (C) for voice agents. Prices, MCP, x402, uptime and agent notes side by side.",
    "facts": [
      "Amazon Nova 2 Sonic B 67.6",
      "Inworld Realtime API C 60.1",
      "scores"
    ],
    "h1": "Amazon Nova 2 Sonic vs Inworld Realtime API",
    "image": "https://www.anchorterminal.com/assets/og/default.png",
    "path": "/compare/amazon-nova-sonic-vs-inworld-realtime",
    "published": "2026-10-01",
    "section": "tools",
    "title": "Amazon Nova 2 Sonic vs Inworld Realtime for AI agents (2026)",
    "toc": null,
    "updated": "2026-11-07",
    "url": "https://www.anchorterminal.com/compare/amazon-nova-sonic-vs-inworld-realtime"
  },
  "tokens": {
    "markdown": 5250,
    "slim": 2630
  },
  "version": 1
}
