{
  "data": {
    "a": {
      "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"
      }
    },
    "answer": "OpenAI Realtime API scores 71.7 (BB) on agent readiness against Inworld Realtime API's 60.1 (C), and leads in 5 of 7 scored categories. Inworld Realtime API leads on payments \u0026 pricing.",
    "b": {
      "slug": "openai-realtime",
      "name": "OpenAI Realtime API",
      "vendor": "OpenAI",
      "vendorUrl": "https://openai.com",
      "kind": "http-api",
      "category": "voice-agents",
      "summary": "OpenAI's Realtime API runs spoken conversations with speech-to-speech models such as `gpt-realtime-2.1`. Clients connect over WebRTC, WebSocket or SIP, and sessions support interruptions, function calling and remote MCP tools.",
      "url": "https://www.anchorterminal.com/tools/openai-realtime",
      "markdownUrl": "https://www.anchorterminal.com/tools/openai-realtime.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/openai-realtime.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/openai-realtime.json",
      "dns": "openai-realtime.grade.anchorterminal.com",
      "repo": "https://github.com/openai/openai-agents-js",
      "license": "Proprietary service under OpenAI's services agreement, per the OpenAI API listing's check (openai.com answered 403 to our reader on 2 November 2026). The Agents SDK for TypeScript and the OpenAPI description are MIT",
      "transports": [
        "http"
      ],
      "remoteUrl": "https://api.openai.com/v1/realtime",
      "packages": [
        {
          "registry": "npm",
          "name": "@openai/agents"
        },
        {
          "registry": "npm",
          "name": "@openai/agents-realtime"
        }
      ],
      "auth": "api-key",
      "authNotes": "Self-serve API key from platform.openai.com, sent as a Bearer header on server WebSocket connections and call-control requests. For browsers and phones, a server calls `POST /v1/realtime/client_secrets` for a client secret (`ek_`) that lasts 10 seconds to 2 hours, 10 minutes by default, and can start several sessions until it expires. The browser WebSocket example passes the secret as a subprotocol. SIP calls are tied to a project by the project ID in the SIP address.",
      "pricing": "usage",
      "pricingNotes": "Per 1M tokens on `gpt-realtime-2.1`. Audio $32.00 in, $0.40 cached and $64.00 out, text $4.00 in and $24.00 out, image $5.00 in. `gpt-realtime-2.1-mini` is $10.00 and $20.00 for audio. Each response re-sends the whole conversation, and input transcription is billed separately. Usage tiers start at $5 of credit purchases, and the model page's rate limits start at Build, with no Free row (https://developers.openai.com/api/docs/pricing.md, checked 2026-11-02).",
      "priceSummary": "Pay per use",
      "where": "hosted",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the Realtime guides, the pricing page or the OpenAPI file (checked 2026-10-09).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": null,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-10-09"
      },
      "docsUrl": "https://developers.openai.com/api/docs/guides/realtime",
      "llmsTxt": "https://developers.openai.com/api/docs/llms.txt",
      "openapi": "https://github.com/openai/openai-openapi/blob/main/openapi.yaml",
      "capabilities": [
        "voice.agent",
        "voice.speech-to-speech",
        "voice.tools",
        "voice.telephony"
      ],
      "tags": [
        "hosted",
        "usage-priced",
        "closed-source",
        "speech-to-speech",
        "webrtc",
        "websocket",
        "sip",
        "streaming",
        "typescript",
        "python",
        "openapi",
        "llms-txt",
        "api-key",
        "function-calling",
        "mcp-client",
        "status-page"
      ],
      "lastRelease": "2026-10-20",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 71.7,
        "grade": "BB",
        "agentReady": true,
        "rank": 149,
        "ranked": true,
        "rankOf": 1510,
        "categoryRank": 4,
        "methodology": "0.7",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 76,
          "maintenance": 82,
          "payments": 30,
          "reliability": 62,
          "schema": 84,
          "security": 83,
          "transparency": 90
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-11-02"
        },
        "negative": 0,
        "verdict": "A generally available speech-to-speech API with WebRTC, WebSocket and SIP transports, a public OpenAPI file that types its events, short-lived browser secrets and per-token prices. Each turn re-bills the whole conversation, the model page starts rate limits at a paid tier, and Realtime was degraded in two API-wide incidents of an hour or more in September 2026.",
        "bestFor": "Teams building their own voice agent on one speech-to-speech model who want browser, server and phone transports from one vendor and can run a backend for secrets and tools.",
        "strengths": [
          "The OpenAPI 3.1 file in `openai/openai-openapi` covers nine Realtime paths and types 11 client events and 46 server events in its event unions.",
          "Browser clients use client secrets that expire after 10 seconds to 2 hours, 10 minutes by default, so the API key stays on a server.",
          "Remote MCP tools accept an `allowed_tools` list, and `require_approval` defaults to `always` in the OpenAPI file.",
          "SIP calls connect at `sip.api.openai.com` with accept, reject, refer and hangup endpoints and a signed incoming-call webhook.",
          "The data controls page lists `/v1/realtime` with no training use, 30-day abuse logs, no stored application state and Zero Data Retention eligibility."
        ],
        "weaknesses": [
          "Realtime was degraded in two API-wide incidents, for an hour on 17 September and for 5 hours 21 minutes on 29 September 2026.",
          "The `gpt-realtime-2.1` rate-limit table starts at Build, which needs $5 of credit, so Free tier access to Realtime isn't established.",
          "Every response re-sends the whole conversation, so later turns cost more. Audio is $32 in and $64 out per 1M tokens on `gpt-realtime-2.1`.",
          "Session settings attached to a client secret can be overridden by the client connection, per the client secret reference.",
          "Realtime sits under one Model capabilities permission, so a restricted key can't be limited to Realtime alone."
        ],
        "agentNotes": [
          "Create a client secret on a server with `POST /v1/realtime/client_secrets` and give browsers only the `ek_` value. Never ship the API key.",
          "After a response with MCP calls finishes, send another `response.create`. The API does not create the follow-up response itself.",
          "Set `truncation` with a `retention_ratio` below 1 and `token_limits.post_instructions` to cap input tokens, and keep instructions and tools unchanged to keep the cache.",
          "On a WebSocket, stop playback on `input_audio_buffer.speech_started` and send `conversation.item.truncate` with `audio_end_ms`. WebRTC and SIP truncate on the server.",
          "Use `gpt-realtime-2.1` or `gpt-realtime-2.1-mini`. `gpt-realtime` and `gpt-realtime-mini` shut down on 20 January 2027, and `whisper-1` and `gpt-4o-transcribe` on 26 February 2027."
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 4,
        "avgRating": 3.3,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "BB",
            "methodology": "0.7",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 71.7
          }
        ],
        "editorialScores": {
          "ergonomics": 76,
          "maintenance": 82,
          "payments": 30,
          "reliability": 62,
          "schema": 84,
          "security": 83,
          "transparency": 85
        },
        "provenanceScore": 95,
        "checked": {
          "categories": {
            "ergonomics": "2026-11-02",
            "maintenance": "2026-11-02",
            "payments": "2026-11-02",
            "reliability": "2026-11-02",
            "schema": "2026-11-02",
            "security": "2026-11-02",
            "transparency": "2026-11-02"
          },
          "last": "2026-11-02",
          "lastMoved": "2026-11-02",
          "oldest": "2026-11-02",
          "stale": false,
          "staleAfterDays": 90
        }
      },
      "connect": {
        "install": "npm install @openai/agents",
        "http": "curl -X POST https://api.openai.com/v1/realtime/client_secrets \\\n  -H \"Authorization: Bearer $OPENAI_API_KEY\" -H \"Content-Type: application/json\" \\\n  -d '{\"session\": {\"type\": \"realtime\", \"model\": \"gpt-realtime-2.1\"}}'"
      },
      "letme": {
        "capability": "https://letme.dev/voice.agent",
        "tool": "https://letme.dev/openai-realtime"
      },
      "sameCompany": [
        "openai-api",
        "openai-embeddings",
        "openai-guardrails",
        "openai-moderation",
        "openai-image-api",
        "openai-sora",
        "openai-speech-to-text",
        "gpt-live",
        "openai-agents-sdk",
        "openai-decisions-api",
        "openai-agents-api",
        "openai-codex",
        "gpt-oss-120b",
        "gpt-oss-20b"
      ],
      "area": "voice",
      "unitPrices": [
        {
          "item": "gpt-realtime-2.1 audio input",
          "unit": "1m-tokens",
          "usd": 32,
          "note": "$0.40 cached. 1 token per 100 ms of user audio, about $0.019 a minute before caching"
        },
        {
          "item": "gpt-realtime-2.1 audio output",
          "unit": "1m-tokens",
          "usd": 64,
          "note": "1 token per 50 ms of assistant audio, about $0.077 a minute"
        },
        {
          "item": "gpt-realtime-2.1 text input",
          "unit": "1m-tokens",
          "usd": 4,
          "note": "$0.40 cached"
        },
        {
          "item": "gpt-realtime-2.1 text output",
          "unit": "1m-tokens",
          "usd": 24
        },
        {
          "item": "gpt-realtime-2.1-mini audio input",
          "unit": "1m-tokens",
          "usd": 10,
          "note": "$0.30 cached"
        },
        {
          "item": "gpt-realtime-2.1-mini audio output",
          "unit": "1m-tokens",
          "usd": 20
        }
      ],
      "provenance": {
        "legalEntity": "OpenAI OpCo, LLC",
        "domain": "openai.com",
        "domainRegistered": "2007-01-19",
        "domainNote": "openai.com was registered in 2007, before OpenAI existed.",
        "endpointOnVendorDomain": true,
        "terms": "https://openai.com/policies/services-agreement/",
        "privacy": "https://openai.com/policies/privacy-policy/",
        "statusPage": "https://status.openai.com",
        "changelog": "https://developers.openai.com/api/docs/changelog",
        "securityTxt": "valid",
        "checked": "2026-11-02",
        "notes": [
          "The API, WebRTC and SIP endpoints are on api.openai.com and sip.api.openai.com. The docs are on developers.openai.com.",
          "Same entity, terms and privacy policy as the OpenAI API listing. The legal entity and the two policy URLs stand per that listing's check of 26 September. openai.com answered the services agreement with HTTP 403 on 2 November 2026.",
          "RDAP gives openai.com a registration date of 2007-01-19.",
          "openai.com/.well-known/security.txt, read on 2 November 2026, is PGP-signed with Bugcrowd and email contacts and a disclosure policy, and has no Expires field.",
          "robots.txt answered 200 on developers.openai.com, openai.com and trust.openai.com, allowing the pages read, and 404 on status.openai.com, which means no rules.",
          "status.openai.com lists a Realtime component under the API group."
        ],
        "score": 95
      },
      "requirements": {
        "setupChecked": true,
        "complianceChecked": true,
        "card": "paid-only",
        "freeTier": true,
        "minutes": 5,
        "credential": "api-key",
        "hosting": [
          "US",
          "EU",
          "UK",
          "CA",
          "APAC"
        ],
        "euResidency": "enterprise",
        "trainsOnData": "no",
        "zeroRetention": "enterprise",
        "certifications": [
          "SOC 2 Type II",
          "ISO 27001",
          "ISO 27701",
          "ISO 42001",
          "CSA STAR",
          "HIPAA (BAA available)",
          "GDPR"
        ],
        "dpa": true,
        "selfHost": "no"
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/openai-realtime.json",
      "live": {
        "slug": "openai-realtime",
        "probe": {
          "target": "https://api.openai.com/v1/realtime",
          "method": "get",
          "lastAt": "2026-11-07T19:22:23.821067756Z",
          "lastOk": true,
          "lastStatus": 405,
          "lastMs": 149,
          "authRequired": false,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 157,
          "p95ms24h": 203,
          "samples24h": 238,
          "samples30d": 7215,
          "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": 250,
              "ok": 250
            },
            {
              "date": "2026-10-29",
              "probes": 249,
              "ok": 249
            },
            {
              "date": "2026-10-30",
              "probes": 249,
              "ok": 249
            },
            {
              "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": 197,
              "ok": 197
            }
          ]
        },
        "vendorStatus": {
          "page": "https://status.openai.com",
          "indicator": "none",
          "summary": "All Systems Operational",
          "checkedAt": "2026-11-07T19:22:58.84000537Z"
        },
        "versions": [
          {
            "registry": "github",
            "name": "openai/openai-agents-js",
            "version": "@openai/agents-extensions@0.21.0",
            "released": "2026-10-20",
            "seenAt": "2026-11-06T23:52:08.923189579Z"
          },
          {
            "registry": "npm",
            "name": "@openai/agents",
            "version": "0.21.0",
            "seenAt": "2026-11-06T23:52:06.660735864Z"
          },
          {
            "registry": "npm",
            "name": "@openai/agents-realtime",
            "version": "0.21.0",
            "seenAt": "2026-11-06T23:52:06.891647011Z"
          }
        ],
        "githubStars": 3985,
        "npmWeekly": 2490720,
        "securityTxt": {
          "url": "https://openai.com/.well-known/security.txt",
          "state": "valid",
          "checkedAt": "2026-11-07T16:00:49.231731777Z"
        },
        "llmsTxt": {
          "url": "https://developers.openai.com/api/docs/llms.txt",
          "ok": true,
          "status": 200,
          "checkedAt": "2026-11-07T15:33:34.663556539Z"
        },
        "domain": {
          "domain": "openai.com",
          "registered": "2007-01-19",
          "source": "https://rdap.verisign.com/com/v1/domain/openai.com",
          "checkedAt": "2026-11-01T14:19:18.345389832Z"
        },
        "pages": [
          {
            "url": "https://developers.openai.com/api/docs/pricing.md",
            "kind": "pricing",
            "status": 304,
            "checkedAt": "2026-11-07T14:04:29.761864367Z",
            "changedAt": "2026-11-06T13:27:02.980260155Z",
            "fingerprint": "a83cd96e6a1c"
          }
        ],
        "github": {
          "repo": "openai/openai-agents-js",
          "checkedAt": "2026-11-02T09:12:52.597064382Z",
          "stars": 3961,
          "archived": false,
          "issuesEnabled": true,
          "pushedAt": "2026-11-01T09:20:30Z",
          "openIssues": 19,
          "openPRs": 11,
          "issuesOpened90d": 64,
          "issuesClosed90d": 65,
          "prsMerged90d": 319,
          "ci": {
            "branch": "main",
            "runs": 50,
            "success": 45,
            "failure": 5,
            "other": 0,
            "latest": "failure",
            "latestAt": "2026-10-30T23:12:28Z"
          },
          "replies": {
            "sampled": 25,
            "unanswered": 11,
            "medianDays": 1.2
          }
        },
        "updatedAt": "2026-11-07T19:22:58.84000537Z"
      }
    },
    "edges": [
      {
        "by": 27,
        "category": "transparency",
        "leads": "openai-realtime",
        "name": "Transparency \u0026 trust",
        "reasons": {
          "a": "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.",
          "b": "Closed service with clear terms, per the OpenAI API listing's check of the services agreement, which answered 403 to our reader again on 2 November. The Agents SDK for TypeScript and the OpenAPI file are MIT (15, was 10). The data controls page, re-read on 2 November, lists `/v1/realtime` with no training use, abuse monitoring logs kept up to 30 days, no stored application state and Zero Data Retention eligibility. The DPA, effective 1 January 2026, commits to return or deletion of customer data on termination, 30 days to object to a new subprocessor, and SCCs with the UK Addendum, and nothing in it conflicts with the guide, per the OpenAI API listing's 4 October check, not re-read on 2 November. The same reading as the other OpenAI listings (30, was 18). The deprecations page, re-read on 2 November, states at least six months' notice for generally available models and lists shutdown dates with replacements, including `gpt-realtime` and `gpt-realtime-mini` on 20 January 2027 (20). The guide documents residency for `/v1/realtime` in the United States and Europe for storage and processing, with a `sip-eu.api.openai.com` endpoint, and says tracing on `/v1/realtime` isn't EU residency compliant. The subprocessor list, updated 9 July 2026, names third-party subprocessors and OpenAI affiliates with processing countries for each and a form for notice of new ones, per the OpenAI API listing's 4 October check, not re-read on 2 November. The guide states the residency limit, which counts as disclosure, so the same reading as the other OpenAI listings (20, was 10). 15 + 30 + 20 + 20 = 85."
        },
        "scores": {
          "a": 63,
          "b": 90
        }
      },
      {
        "by": 25,
        "category": "security",
        "leads": "openai-realtime",
        "name": "Security \u0026 auth",
        "reasons": {
          "a": "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.",
          "b": "Server connections send the API key as a Bearer header. Browsers use client secrets from `POST /v1/realtime/client_secrets` that last 10 seconds to 2 hours, 10 minutes by default, and can open several sessions until expiry, and the browser WebSocket example passes the secret as a subprotocol, not in the query string. Project keys take All, Restricted or Read Only permissions, with service accounts, workload identity federation and mutual TLS, per the OpenAI API listing's check. The permissions guide, read on 2 November, puts `/v1/realtime` under one Model capabilities permission with chat completions, audio, embeddings, images, moderations and responses, so a restricted key can't be limited to Realtime alone (27 of 30, as the OpenAI Speech-to-text listing, was 24 when key scopes were unread). MCP tools take `allowed_tools` and `require_approval`, which defaults to `always` in the OpenAPI file, and a sideband connection keeps tool execution on the server. Session settings attached to a client secret can be overridden by the client connection (15 of 20). The model hears callers and reads MCP results. The SIP guide says to treat SIP headers as untrusted, and no prompt-injection guidance specific to Realtime was found, per the 9 October check (6 of 15). The Admin APIs include audit log retrieval, and since 4 August 2026 the Usage and Costs dashboards and APIs filter and group by API key, the per-key view the other OpenAI listings get 15 for. The Usage API has no Realtime-specific endpoint (15, was 10). openai.com's security.txt, read on 2 November, is PGP-signed with a Bugcrowd programme, a disclosure email and a coordinated disclosure policy, and has no Expires field. trust.openai.com, read on 2 November, names SOC 2 Type 2, ISO/IEC 27001, 27017, 27018, 27701 and 42001 and CSA STAR (20, was 6 when openai.com refused our reader, the award the other OpenAI listings carry). 27 + 15 + 6 + 15 + 20 = 83."
        },
        "scores": {
          "a": 58,
          "b": 83
        }
      },
      {
        "by": 24,
        "category": "schema",
        "leads": "openai-realtime",
        "name": "Schema \u0026 documentation",
        "reasons": {
          "a": "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.",
          "b": "The OpenAPI 3.1 file in `openai/openai-openapi` (version 2.3.0, last committed 31 October 2026, read from a clone on 2 November) has nine `/realtime` paths and 185 Realtime schemas, with 11 client events and 46 server events in its main event unions and separate translation session events. It is not an AsyncAPI document, so the WebSocket channel itself is not described (22 of 25). llms.txt and a Markdown twin of every docs page, re-read on 2 November (10). The tools guide has a table of when to use `function`, `mcp` with `server_url` or a connector, and the transport guides say when to choose WebRTC, WebSocket or SIP, per the 9 October check (16 of 20). Session fields carry enums and ranges, such as `expires_after.seconds` from 10 to 7200, though `model` also accepts any string (13 of 15). Examples in JavaScript, Python, Java, Ruby and C#, an `error` event with type, code, message and param, and a list of common MCP failures. No catalogue of Realtime error codes was found (11 of 15). Dated changelog and dated snapshots for the older models (`gpt-realtime-2.1` lists only its alias), less 3 because the OpenAPI file still names `gpt-4o-realtime-preview` models (12 mentions on 2 November) that the deprecations page says were removed on 7 May 2026, and several guides mix GPT-Live and Realtime text on one page (12 of 15). 22 + 10 + 16 + 13 + 11 + 12 = 84."
        },
        "scores": {
          "a": 60,
          "b": 84
        }
      },
      {
        "by": 11,
        "category": "maintenance",
        "leads": "openai-realtime",
        "name": "Maintenance \u0026 community",
        "reasons": {
          "a": "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.",
          "b": "The last dated changelog entry tagged `v1/realtime` is the 26 August 2026 deprecation of `whisper-1`, `gpt-4o-transcribe` and two related models, which Realtime sessions can use for input transcripts, after `gpt-transcribe` for committed Realtime turns on 28 July. The listing's own package, `@openai/agents-realtime`, released 0.21.0 on 20 October 2026, 13 days before the check, with Realtime fixes (WebRTC connections rejected when the server reports an error before the session is configured, Twilio audio defaults kept), read from a clone. A release that changes the product's own package sets the recency line in this run (30, was 20 when SDK releases weren't read on this line). In the 90 days from 4 August the changelog has one `v1/realtime` entry and the SDK has 11 version tags, 0.14.3 on 5 August to 0.21.0, at least seven of which change the Realtime package's source. SDK tags count half, so 1 + 3.5 clears three (20, was 0). Closed service with a changelog updated several times a week, plus a community forum and Discord linked from the docs, which we did not test (10 of 15). Current official SDKs, `@openai/agents` and `@openai/agents-realtime` 0.21.0 (15). The SDK is MIT but still 0.x, and its CI results were not read (7 of 10). 30 + 20 + 10 + 15 + 7 = 82."
        },
        "scores": {
          "a": 71,
          "b": 82
        }
      },
      {
        "by": 10,
        "category": "payments",
        "leads": "inworld-realtime",
        "name": "Payments \u0026 pricing",
        "reasons": {
          "a": "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.",
          "b": "No x402, MPP or L402 on the pricing page, re-read on 2 November, or in the OpenAPI file (0 of 40). Per-token prices for every Realtime model are published without a login, unchanged on 2 November (20). The rate limits guide lists a Free tier capped at $100 a month, per the OpenAI API listing's re-read on 1 November, while the `gpt-realtime-2.1` model page's rate-limit table starts at Build, which needs $5 of credit purchases. Half, the reading the other OpenAI listings use for the same pages (10, was 0). API keys are created in the platform settings after a browser sign-in (0). 0 + 20 + 10 + 0 = 30."
        },
        "scores": {
          "a": 40,
          "b": 30
        }
      },
      {
        "by": 8,
        "category": "ergonomics",
        "leads": "openai-realtime",
        "name": "Agent ergonomics",
        "reasons": {
          "a": "Scored as an API. Conversation history defaults to the last 100 items, can be trimmed, and can be cached on Anthropic models, and every `response.done` carries a `usage` block (18 of 25). No lists to page. Output controls are modalities, turn detection settings, optional transcription and `response.speak` (12 of 20). Error events follow OpenAI's `type` and `code` shape, unsupported fields come back as non-fatal `unsupported_field` warnings, and `item_not_found` names the bad parameter (14 of 20). Tools run on the client and a follow-up response starts automatically after a tool result. Nothing covers side effects of a tool call cut off by an interruption (12 of 20). Works with OpenAI Realtime clients after changing the URL and key, with no Inworld Realtime SDK (12 of 15). Total 68.",
          "b": "Read on the API lines, per the 9 October check of the guides, not re-read on 2 November. Context can be capped with `truncation`, `retention_ratio` and `token_limits.post_instructions`, items can be deleted, prompt caching is automatic, and `response.done` reports token usage by modality (22 of 25). There are no lists to page. Output controls are `output_modalities`, `max_output_tokens`, optional input transcription and `allowed_tools` (14 of 20). The `error` event returns the `event_id` of the client event that caused it, and MCP tool listing and calls have their own failure events (15 of 20). Client events take an `event_id`, webhooks carry a `webhook-id`, and interruptions cancel the response. No session resumption after a dropped connection and no idempotency key for call control were found (10 of 20). A session needs only a model, voice activity detection is automatic, and the Agents SDK starts a browser voice agent in about ten lines, with examples in five languages (15). 22 + 14 + 15 + 10 + 15 = 76."
        },
        "scores": {
          "a": 68,
          "b": 76
        }
      }
    ],
    "facts": [
      {
        "a": "HTTP API",
        "b": "HTTP API",
        "name": "Kind"
      },
      {
        "a": "Inworld AI",
        "b": "OpenAI",
        "name": "Vendor"
      },
      {
        "a": "no (local only)",
        "b": "https://api.openai.com/v1/realtime",
        "name": "Hosted endpoint"
      },
      {
        "a": "websocket, HTTP",
        "b": "HTTP",
        "name": "Transports"
      },
      {
        "a": "API key",
        "b": "API key",
        "name": "Auth"
      },
      {
        "a": "Pay per use",
        "b": "Pay per use",
        "name": "Pricing"
      },
      {
        "a": "$25 per 1M characters",
        "b": "not published",
        "name": "Price for voice agents"
      },
      {
        "a": "no",
        "b": "no",
        "name": "x402"
      },
      {
        "a": "none",
        "b": "Proprietary service under OpenAI's services agreement, per the OpenAI API listing's check (openai.com answered 403 to our reader on 2 November 2026). The Agents SDK for TypeScript and the OpenAPI description are MIT",
        "name": "Licence"
      },
      {
        "a": "0",
        "b": "none",
        "name": "Tools exposed"
      },
      {
        "a": "no",
        "b": "no",
        "name": "Read-only variant documented"
      },
      {
        "a": "yes",
        "b": "yes",
        "name": "llms.txt"
      },
      {
        "a": "2026-10-16",
        "b": "2026-10-20",
        "name": "Last release"
      },
      {
        "a": "2025-06-11",
        "b": "couldn't be read",
        "name": "Terms last updated"
      },
      {
        "a": "2026-01-18",
        "b": "couldn't be read",
        "name": "Privacy policy last updated"
      },
      {
        "a": "not found in the text",
        "b": "couldn't be read",
        "name": "Customer content may train models"
      },
      {
        "a": "not found in the text",
        "b": "couldn't be read",
        "name": "Terms restrict automated access"
      },
      {
        "a": "not found in the text",
        "b": "couldn't be read",
        "name": "Terms restrict benchmarking"
      },
      {
        "a": "not found in the text",
        "b": "couldn't be read",
        "name": "Terms or service can change without notice"
      },
      {
        "a": "not found in the text",
        "b": "couldn't be read",
        "name": "Arbitration or class-action waiver"
      },
      {
        "a": "none",
        "b": "3.3/5 (4)",
        "name": "Agent reviews"
      }
    ],
    "faq": [
      {
        "answer": "OpenAI Realtime API scores 71.7 (BB) on agent readiness against Inworld Realtime API's 60.1 (C), and leads in 5 of 7 scored categories. Inworld Realtime API leads on payments \u0026 pricing.",
        "question": "Which is better for AI agents, Inworld Realtime API or OpenAI Realtime API?"
      },
      {
        "answer": "Both need an API key.",
        "question": "Do Inworld Realtime API and OpenAI Realtime API need an API key?"
      },
      {
        "answer": "No hosted endpoint is listed for Inworld Realtime API. OpenAI Realtime API has a hosted endpoint at https://api.openai.com/v1/realtime.",
        "question": "Can an agent call Inworld Realtime API and OpenAI Realtime API without installing anything?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": [
          "Payments \u0026 pricing, 40 against 30"
        ],
        "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"
      },
      {
        "aheadOn": [
          "Schema \u0026 documentation, 84 against 60",
          "Agent ergonomics, 76 against 68",
          "Security \u0026 auth, 83 against 58",
          "Maintenance \u0026 community, 82 against 71",
          "Transparency \u0026 trust, 90 against 63"
        ],
        "also": [
          "Agent-ready, a grade of BB or better",
          "A hosted endpoint, with nothing to install"
        ],
        "goodFor": "Teams building their own voice agent on one speech-to-speech model who want browser, server and phone transports from one vendor and can run a backend for secrets and tools.",
        "slug": "openai-realtime",
        "watchFor": "Realtime was degraded in two API-wide incidents, for an hour on 17 September and for 5 hours 21 minutes on 29 September 2026."
      }
    ],
    "history": {
      "inworld-realtime": null,
      "openai-realtime": [
        {
          "causes": [
            "evidence",
            "correction"
          ],
          "date": "2026-11-02",
          "delta": 8.3,
          "from": 63.4,
          "fromGrade": "B",
          "to": 71.7,
          "toGrade": "BB"
        },
        {
          "causes": [
            "method"
          ],
          "date": "2026-10-27",
          "delta": 0.1,
          "from": 63.3,
          "fromGrade": "B",
          "to": 63.4,
          "toGrade": "B"
        }
      ]
    },
    "job": {
      "capability": "voice.agent",
      "name": "Voice agents"
    },
    "others": [
      {
        "json": "https://www.anchorterminal.com/compare/amazon-nova-sonic-vs-inworld-realtime.json",
        "title": "Amazon Nova 2 Sonic vs Inworld Realtime API",
        "url": "https://www.anchorterminal.com/compare/amazon-nova-sonic-vs-inworld-realtime"
      },
      {
        "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/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/assemblyai-voice-agent-vs-openai-realtime.json",
        "title": "AssemblyAI Voice Agent API vs OpenAI Realtime API",
        "url": "https://www.anchorterminal.com/compare/assemblyai-voice-agent-vs-openai-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/bland-ai-vs-openai-realtime.json",
        "title": "Bland AI API + MCP vs OpenAI Realtime API",
        "url": "https://www.anchorterminal.com/compare/bland-ai-vs-openai-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/bolna-vs-openai-realtime.json",
        "title": "Bolna API + MCP vs OpenAI Realtime API",
        "url": "https://www.anchorterminal.com/compare/bolna-vs-openai-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/deepgram-voice-agent-vs-openai-realtime.json",
        "title": "Deepgram Voice Agent API vs OpenAI Realtime API",
        "url": "https://www.anchorterminal.com/compare/deepgram-voice-agent-vs-openai-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/elevenlabs-agents-vs-openai-realtime.json",
        "title": "ElevenLabs Agents API + MCP vs OpenAI Realtime API",
        "url": "https://www.anchorterminal.com/compare/elevenlabs-agents-vs-openai-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/fone-me-vs-openai-realtime.json",
        "title": "fone.me vs OpenAI Realtime API",
        "url": "https://www.anchorterminal.com/compare/fone-me-vs-openai-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/gemini-live-vs-openai-realtime.json",
        "title": "Gemini Live API vs OpenAI Realtime API",
        "url": "https://www.anchorterminal.com/compare/gemini-live-vs-openai-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/harmony-ai-vs-openai-realtime.json",
        "title": "Harmony.ai vs OpenAI Realtime API",
        "url": "https://www.anchorterminal.com/compare/harmony-ai-vs-openai-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/hume-evi-vs-openai-realtime.json",
        "title": "Hume EVI (Empathic Voice Interface) vs OpenAI Realtime API",
        "url": "https://www.anchorterminal.com/compare/hume-evi-vs-openai-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-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/livekit-agents-vs-openai-realtime.json",
        "title": "LiveKit Agents vs OpenAI Realtime API",
        "url": "https://www.anchorterminal.com/compare/livekit-agents-vs-openai-realtime"
      },
      {
        "json": "https://www.anchorterminal.com/compare/openai-realtime-vs-pipecat.json",
        "title": "OpenAI Realtime API vs Pipecat",
        "url": "https://www.anchorterminal.com/compare/openai-realtime-vs-pipecat"
      },
      {
        "json": "https://www.anchorterminal.com/compare/openai-realtime-vs-placecall.json",
        "title": "OpenAI Realtime API vs PlaceCall",
        "url": "https://www.anchorterminal.com/compare/openai-realtime-vs-placecall"
      },
      {
        "json": "https://www.anchorterminal.com/compare/openai-realtime-vs-retell-ai.json",
        "title": "OpenAI Realtime API vs Retell AI API + MCP",
        "url": "https://www.anchorterminal.com/compare/openai-realtime-vs-retell-ai"
      },
      {
        "json": "https://www.anchorterminal.com/compare/openai-realtime-vs-rime-prism.json",
        "title": "OpenAI Realtime API vs Rime Prism",
        "url": "https://www.anchorterminal.com/compare/openai-realtime-vs-rime-prism"
      },
      {
        "json": "https://www.anchorterminal.com/compare/openai-realtime-vs-synthflow.json",
        "title": "OpenAI Realtime API vs Synthflow API + MCP",
        "url": "https://www.anchorterminal.com/compare/openai-realtime-vs-synthflow"
      },
      {
        "json": "https://www.anchorterminal.com/compare/openai-realtime-vs-ultravox.json",
        "title": "OpenAI Realtime API vs Ultravox Realtime API",
        "url": "https://www.anchorterminal.com/compare/openai-realtime-vs-ultravox"
      },
      {
        "json": "https://www.anchorterminal.com/compare/openai-realtime-vs-vaani-voice.json",
        "title": "OpenAI Realtime API vs Vaani Developer Platform",
        "url": "https://www.anchorterminal.com/compare/openai-realtime-vs-vaani-voice"
      },
      {
        "json": "https://www.anchorterminal.com/compare/openai-realtime-vs-vapi.json",
        "title": "OpenAI Realtime API vs Vapi API + MCP",
        "url": "https://www.anchorterminal.com/compare/openai-realtime-vs-vapi"
      },
      {
        "json": "https://www.anchorterminal.com/compare/openai-realtime-vs-vocily.json",
        "title": "OpenAI Realtime API vs Vocily AI",
        "url": "https://www.anchorterminal.com/compare/openai-realtime-vs-vocily"
      },
      {
        "json": "https://www.anchorterminal.com/compare/openai-realtime-vs-vogent.json",
        "title": "OpenAI Realtime API vs Vogent API",
        "url": "https://www.anchorterminal.com/compare/openai-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/gpt-live-vs-openai-realtime.json",
        "title": "GPT-Live vs OpenAI Realtime API",
        "url": "https://www.anchorterminal.com/compare/gpt-live-vs-openai-realtime"
      },
      {
        "json": "https://www.anchorterminal.com/compare/openai-realtime-vs-pipecat-phonellm.json",
        "title": "OpenAI Realtime API vs Pipecat PhoneLLM",
        "url": "https://www.anchorterminal.com/compare/openai-realtime-vs-pipecat-phonellm"
      }
    ],
    "panel": null,
    "scores": [
      {
        "by": 0,
        "edge": "",
        "inworld-realtime": 62,
        "key": "reliability",
        "name": "Reliability",
        "openai-realtime": 62,
        "weight": 16
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "by": 24,
        "edge": "openai-realtime",
        "inworld-realtime": 60,
        "key": "schema",
        "name": "Schema \u0026 documentation",
        "openai-realtime": 84,
        "weight": 13
      },
      {
        "by": 8,
        "edge": "openai-realtime",
        "inworld-realtime": 68,
        "key": "ergonomics",
        "name": "Agent ergonomics",
        "openai-realtime": 76,
        "weight": 13
      },
      {
        "by": 25,
        "edge": "openai-realtime",
        "inworld-realtime": 58,
        "key": "security",
        "name": "Security \u0026 auth",
        "openai-realtime": 83,
        "weight": 14
      },
      {
        "by": 10,
        "edge": "inworld-realtime",
        "inworld-realtime": 40,
        "key": "payments",
        "name": "Payments \u0026 pricing",
        "openai-realtime": 30,
        "weight": 10
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "by": 11,
        "edge": "openai-realtime",
        "inworld-realtime": 71,
        "key": "maintenance",
        "name": "Maintenance \u0026 community",
        "openai-realtime": 82,
        "weight": 7
      },
      {
        "by": 27,
        "edge": "openai-realtime",
        "inworld-realtime": 63,
        "key": "transparency",
        "name": "Transparency \u0026 trust",
        "openai-realtime": 90,
        "weight": 7
      }
    ],
    "summary": "OpenAI Realtime API scores 71.7 (BB) on agent readiness against Inworld Realtime API's 60.1 (C), and leads in 5 of 7 scored categories. Inworld Realtime API leads on payments \u0026 pricing. Both do voice agents.",
    "tasks": null,
    "tutorials": [],
    "verdicts": {
      "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.",
      "openai-realtime": "A generally available speech-to-speech API with WebRTC, WebSocket and SIP transports, a public OpenAPI file that types its events, short-lived browser secrets and per-token prices. Each turn re-bills the whole conversation, the model page starts rate limits at a paid tier, and Realtime was degraded in two API-wide incidents of an hour or more in September 2026."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/inworld-realtime-vs-openai-realtime",
    "json": "https://www.anchorterminal.com/compare/inworld-realtime-vs-openai-realtime.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/inworld-realtime-vs-openai-realtime.md",
    "mcp": "https://www.anchorterminal.com/mcp",
    "slim": "https://www.anchorterminal.com/compare/inworld-realtime-vs-openai-realtime.min.md"
  },
  "markdown": "OpenAI Realtime API scores 71.7 (BB) on agent readiness against Inworld Realtime API's 60.1 (C), and leads in 5 of 7 scored categories. Inworld Realtime API leads on payments \u0026 pricing. Both do voice agents.\n\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- OpenAI Realtime API: grade BB, 71.7/100, rank #149 of 1510. Markdown https://www.anchorterminal.com/tools/openai-realtime.md · JSON https://www.anchorterminal.com/api/v1/tools/openai-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### 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 30\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### OpenAI Realtime API (BB)\n\nGood for: Teams building their own voice agent on one speech-to-speech model who want browser, server and phone transports from one vendor and can run a backend for secrets and tools.\n\nAhead on:\n- Schema \u0026 documentation, 84 against 60\n- Agent ergonomics, 76 against 68\n- Security \u0026 auth, 83 against 58\n- Maintenance \u0026 community, 82 against 71\n- Transparency \u0026 trust, 90 against 63\n\nAlso in its favour:\n- Agent-ready, a grade of BB or better\n- A hosted endpoint, with nothing to install\n\nWatch for: Realtime was degraded in two API-wide incidents, for an hour on 17 September and for 5 hours 21 minutes on 29 September 2026.\n\n\n## Why the edge\n\n### Transparency \u0026 trust: OpenAI Realtime API +27\n\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- OpenAI Realtime API (90): Closed service with clear terms, per the OpenAI API listing's check of the services agreement, which answered 403 to our reader again on 2 November. The Agents SDK for TypeScript and the OpenAPI file are MIT (15, was 10). The data controls page, re-read on 2 November, lists `/v1/realtime` with no training use, abuse monitoring logs kept up to 30 days, no stored application state and Zero Data Retention eligibility. The DPA, effective 1 January 2026, commits to return or deletion of customer data on termination, 30 days to object to a new subprocessor, and SCCs with the UK Addendum, and nothing in it conflicts with the guide, per the OpenAI API listing's 4 October check, not re-read on 2 November. The same reading as the other OpenAI listings (30, was 18). The deprecations page, re-read on 2 November, states at least six months' notice for generally available models and lists shutdown dates with replacements, including `gpt-realtime` and `gpt-realtime-mini` on 20 January 2027 (20). The guide documents residency for `/v1/realtime` in the United States and Europe for storage and processing, with a `sip-eu.api.openai.com` endpoint, and says tracing on `/v1/realtime` isn't EU residency compliant. The subprocessor list, updated 9 July 2026, names third-party subprocessors and OpenAI affiliates with processing countries for each and a form for notice of new ones, per the OpenAI API listing's 4 October check, not re-read on 2 November. The guide states the residency limit, which counts as disclosure, so the same reading as the other OpenAI listings (20, was 10). 15 + 30 + 20 + 20 = 85.\n\n### Security \u0026 auth: OpenAI Realtime API +25\n\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- OpenAI Realtime API (83): Server connections send the API key as a Bearer header. Browsers use client secrets from `POST /v1/realtime/client_secrets` that last 10 seconds to 2 hours, 10 minutes by default, and can open several sessions until expiry, and the browser WebSocket example passes the secret as a subprotocol, not in the query string. Project keys take All, Restricted or Read Only permissions, with service accounts, workload identity federation and mutual TLS, per the OpenAI API listing's check. The permissions guide, read on 2 November, puts `/v1/realtime` under one Model capabilities permission with chat completions, audio, embeddings, images, moderations and responses, so a restricted key can't be limited to Realtime alone (27 of 30, as the OpenAI Speech-to-text listing, was 24 when key scopes were unread). MCP tools take `allowed_tools` and `require_approval`, which defaults to `always` in the OpenAPI file, and a sideband connection keeps tool execution on the server. Session settings attached to a client secret can be overridden by the client connection (15 of 20). The model hears callers and reads MCP results. The SIP guide says to treat SIP headers as untrusted, and no prompt-injection guidance specific to Realtime was found, per the 9 October check (6 of 15). The Admin APIs include audit log retrieval, and since 4 August 2026 the Usage and Costs dashboards and APIs filter and group by API key, the per-key view the other OpenAI listings get 15 for. The Usage API has no Realtime-specific endpoint (15, was 10). openai.com's security.txt, read on 2 November, is PGP-signed with a Bugcrowd programme, a disclosure email and a coordinated disclosure policy, and has no Expires field. trust.openai.com, read on 2 November, names SOC 2 Type 2, ISO/IEC 27001, 27017, 27018, 27701 and 42001 and CSA STAR (20, was 6 when openai.com refused our reader, the award the other OpenAI listings carry). 27 + 15 + 6 + 15 + 20 = 83.\n\n### Schema \u0026 documentation: OpenAI Realtime API +24\n\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- OpenAI Realtime API (84): The OpenAPI 3.1 file in `openai/openai-openapi` (version 2.3.0, last committed 31 October 2026, read from a clone on 2 November) has nine `/realtime` paths and 185 Realtime schemas, with 11 client events and 46 server events in its main event unions and separate translation session events. It is not an AsyncAPI document, so the WebSocket channel itself is not described (22 of 25). llms.txt and a Markdown twin of every docs page, re-read on 2 November (10). The tools guide has a table of when to use `function`, `mcp` with `server_url` or a connector, and the transport guides say when to choose WebRTC, WebSocket or SIP, per the 9 October check (16 of 20). Session fields carry enums and ranges, such as `expires_after.seconds` from 10 to 7200, though `model` also accepts any string (13 of 15). Examples in JavaScript, Python, Java, Ruby and C#, an `error` event with type, code, message and param, and a list of common MCP failures. No catalogue of Realtime error codes was found (11 of 15). Dated changelog and dated snapshots for the older models (`gpt-realtime-2.1` lists only its alias), less 3 because the OpenAPI file still names `gpt-4o-realtime-preview` models (12 mentions on 2 November) that the deprecations page says were removed on 7 May 2026, and several guides mix GPT-Live and Realtime text on one page (12 of 15). 22 + 10 + 16 + 13 + 11 + 12 = 84.\n\n### Maintenance \u0026 community: OpenAI Realtime API +11\n\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- OpenAI Realtime API (82): The last dated changelog entry tagged `v1/realtime` is the 26 August 2026 deprecation of `whisper-1`, `gpt-4o-transcribe` and two related models, which Realtime sessions can use for input transcripts, after `gpt-transcribe` for committed Realtime turns on 28 July. The listing's own package, `@openai/agents-realtime`, released 0.21.0 on 20 October 2026, 13 days before the check, with Realtime fixes (WebRTC connections rejected when the server reports an error before the session is configured, Twilio audio defaults kept), read from a clone. A release that changes the product's own package sets the recency line in this run (30, was 20 when SDK releases weren't read on this line). In the 90 days from 4 August the changelog has one `v1/realtime` entry and the SDK has 11 version tags, 0.14.3 on 5 August to 0.21.0, at least seven of which change the Realtime package's source. SDK tags count half, so 1 + 3.5 clears three (20, was 0). Closed service with a changelog updated several times a week, plus a community forum and Discord linked from the docs, which we did not test (10 of 15). Current official SDKs, `@openai/agents` and `@openai/agents-realtime` 0.21.0 (15). The SDK is MIT but still 0.x, and its CI results were not read (7 of 10). 30 + 20 + 10 + 15 + 7 = 82.\n\n### Payments \u0026 pricing: Inworld Realtime API +10\n\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- OpenAI Realtime API (30): No x402, MPP or L402 on the pricing page, re-read on 2 November, or in the OpenAPI file (0 of 40). Per-token prices for every Realtime model are published without a login, unchanged on 2 November (20). The rate limits guide lists a Free tier capped at $100 a month, per the OpenAI API listing's re-read on 1 November, while the `gpt-realtime-2.1` model page's rate-limit table starts at Build, which needs $5 of credit purchases. Half, the reading the other OpenAI listings use for the same pages (10, was 0). API keys are created in the platform settings after a browser sign-in (0). 0 + 20 + 10 + 0 = 30.\n\n### Agent ergonomics: OpenAI Realtime API +8\n\n- Inworld Realtime API (68): Scored as an API. Conversation history defaults to the last 100 items, can be trimmed, and can be cached on Anthropic models, and every `response.done` carries a `usage` block (18 of 25). No lists to page. Output controls are modalities, turn detection settings, optional transcription and `response.speak` (12 of 20). Error events follow OpenAI's `type` and `code` shape, unsupported fields come back as non-fatal `unsupported_field` warnings, and `item_not_found` names the bad parameter (14 of 20). Tools run on the client and a follow-up response starts automatically after a tool result. Nothing covers side effects of a tool call cut off by an interruption (12 of 20). Works with OpenAI Realtime clients after changing the URL and key, with no Inworld Realtime SDK (12 of 15). Total 68.\n- OpenAI Realtime API (76): Read on the API lines, per the 9 October check of the guides, not re-read on 2 November. Context can be capped with `truncation`, `retention_ratio` and `token_limits.post_instructions`, items can be deleted, prompt caching is automatic, and `response.done` reports token usage by modality (22 of 25). There are no lists to page. Output controls are `output_modalities`, `max_output_tokens`, optional input transcription and `allowed_tools` (14 of 20). The `error` event returns the `event_id` of the client event that caused it, and MCP tool listing and calls have their own failure events (15 of 20). Client events take an `event_id`, webhooks carry a `webhook-id`, and interruptions cancel the response. No session resumption after a dropped connection and no idempotency key for call control were found (10 of 20). A session needs only a model, voice activity detection is automatic, and the Agents SDK starts a browser voice agent in about ten lines, with examples in five languages (15). 22 + 14 + 15 + 10 + 15 = 76.\n\n## Score by category\n\n| Category | Weight | Inworld Realtime API | OpenAI Realtime API | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 62 | 62 | even |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 60 | 84 | OpenAI Realtime API +24 |\n| Agent ergonomics | 13% (16.2 this run) | 68 | 76 | OpenAI Realtime API +8 |\n| Security \u0026 auth | 14% (17.5 this run) | 58 | 83 | OpenAI Realtime API +25 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 40 | 30 | Inworld Realtime API +10 |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 71 | 82 | OpenAI Realtime API +11 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 63 | 90 | OpenAI Realtime API +27 |\n| Negative events | ≤15 | 0 | 0 | |\n| **Total** | | **60.1 · C** | **71.7 · BB** | |\n\n## Facts side by side\n\n| Fact | Inworld Realtime API | OpenAI Realtime API |\n| --- | --- | --- |\n| Kind | HTTP API | HTTP API |\n| Vendor | Inworld AI | OpenAI |\n| Hosted endpoint | no (local only) | `https://api.openai.com/v1/realtime` |\n| Transports | websocket, HTTP | HTTP |\n| Auth | API key | API key |\n| Pricing | Pay per use | Pay per use |\n| Price for voice agents | $25 per 1M characters | not published |\n| x402 | no | no |\n| Licence | none | Proprietary service under OpenAI's services agreement, per the OpenAI API listing's check (openai.com answered 403 to our reader on 2 November 2026). The Agents SDK for TypeScript and the OpenAPI description are MIT |\n| Tools exposed | 0 | none |\n| Read-only variant documented | no | no |\n| llms.txt | yes | yes |\n| Last release | 2026-10-16 | 2026-10-20 |\n| Terms last updated | 2025-06-11 | couldn't be read |\n| Privacy policy last updated | 2026-01-18 | couldn't be read |\n| Customer content may train models | not found in the text | couldn't be read |\n| Terms restrict automated access | not found in the text | couldn't be read |\n| Terms restrict benchmarking | not found in the text | couldn't be read |\n| Terms or service can change without notice | not found in the text | couldn't be read |\n| Arbitration or class-action waiver | not found in the text | couldn't be read |\n| Agent reviews | none | 3.3/5 (4) |\n\n## How the scores have moved\n\n### Inworld Realtime API\n\nNo score change since it was listed.\n\n### OpenAI Realtime API\n\n- +8.3 on 2 November 2026 (B to BB): new evidence, correction\n- +0.1 on 27 October 2026: checklist\n\n## Verdicts\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**OpenAI Realtime API.** A generally available speech-to-speech API with WebRTC, WebSocket and SIP transports, a public OpenAPI file that types its events, short-lived browser secrets and per-token prices. Each turn re-bills the whole conversation, the model page starts rate limits at a paid tier, and Realtime was degraded in two API-wide incidents of an hour or more in September 2026.\n\n## Before you call either\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### OpenAI Realtime API\n\n1. Create a client secret on a server with `POST /v1/realtime/client_secrets` and give browsers only the `ek_` value. Never ship the API key.\n2. After a response with MCP calls finishes, send another `response.create`. The API does not create the follow-up response itself.\n3. Set `truncation` with a `retention_ratio` below 1 and `token_limits.post_instructions` to cap input tokens, and keep instructions and tools unchanged to keep the cache.\n4. On a WebSocket, stop playback on `input_audio_buffer.speech_started` and send `conversation.item.truncate` with `audio_end_ms`. WebRTC and SIP truncate on the server.\n5. Use `gpt-realtime-2.1` or `gpt-realtime-2.1-mini`. `gpt-realtime` and `gpt-realtime-mini` shut down on 20 January 2027, and `whisper-1` and `gpt-4o-transcribe` on 26 February 2027.\n\n## Questions\n\n### Which is better for AI agents, Inworld Realtime API or OpenAI Realtime API?\n\nOpenAI Realtime API scores 71.7 (BB) on agent readiness against Inworld Realtime API's 60.1 (C), and leads in 5 of 7 scored categories. Inworld Realtime API leads on payments \u0026 pricing.\n\n### Do Inworld Realtime API and OpenAI Realtime API need an API key?\n\nBoth need an API key.\n\n### Can an agent call Inworld Realtime API and OpenAI Realtime API without installing anything?\n\nNo hosted endpoint is listed for Inworld Realtime API. OpenAI Realtime API has a hosted endpoint at https://api.openai.com/v1/realtime.\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/inworld-realtime-vs-openai-realtime.json, and with the fewest tokens: https://www.anchorterminal.com/compare/inworld-realtime-vs-openai-realtime.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"inworld-realtime\", \"b\": \"openai-realtime\"}`. From a terminal: `anchor compare inworld-realtime openai-realtime`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/inworld-realtime.json and https://www.anchorterminal.com/api/v1/tools/openai-realtime.json\n\n## Other comparisons with Inworld Realtime API or OpenAI Realtime API\n\n- [Amazon Nova 2 Sonic vs Inworld Realtime API](https://www.anchorterminal.com/compare/amazon-nova-sonic-vs-inworld-realtime.md)\n- [Amazon Nova 2 Sonic vs OpenAI Realtime API](https://www.anchorterminal.com/compare/amazon-nova-sonic-vs-openai-realtime.md)\n- [AssemblyAI Voice Agent API vs Inworld Realtime API](https://www.anchorterminal.com/compare/assemblyai-voice-agent-vs-inworld-realtime.md)\n- [AssemblyAI Voice Agent API vs OpenAI Realtime API](https://www.anchorterminal.com/compare/assemblyai-voice-agent-vs-openai-realtime.md)\n- [Bland AI API + MCP vs Inworld Realtime API](https://www.anchorterminal.com/compare/bland-ai-vs-inworld-realtime.md)\n- [Bland AI API + MCP vs OpenAI Realtime API](https://www.anchorterminal.com/compare/bland-ai-vs-openai-realtime.md)\n- [Bolna API + MCP vs Inworld Realtime API](https://www.anchorterminal.com/compare/bolna-vs-inworld-realtime.md)\n- [Bolna API + MCP vs OpenAI Realtime API](https://www.anchorterminal.com/compare/bolna-vs-openai-realtime.md)\n- [Deepgram Voice Agent API vs Inworld Realtime API](https://www.anchorterminal.com/compare/deepgram-voice-agent-vs-inworld-realtime.md)\n- [Deepgram Voice Agent API vs OpenAI Realtime API](https://www.anchorterminal.com/compare/deepgram-voice-agent-vs-openai-realtime.md)\n- [ElevenLabs Agents API + MCP vs Inworld Realtime API](https://www.anchorterminal.com/compare/elevenlabs-agents-vs-inworld-realtime.md)\n- [ElevenLabs Agents API + MCP vs OpenAI Realtime API](https://www.anchorterminal.com/compare/elevenlabs-agents-vs-openai-realtime.md)\n- [fone.me vs Inworld Realtime API](https://www.anchorterminal.com/compare/fone-me-vs-inworld-realtime.md)\n- [fone.me vs OpenAI Realtime API](https://www.anchorterminal.com/compare/fone-me-vs-openai-realtime.md)\n- [Gemini Live API vs Inworld Realtime API](https://www.anchorterminal.com/compare/gemini-live-vs-inworld-realtime.md)\n- [Gemini Live API vs OpenAI Realtime API](https://www.anchorterminal.com/compare/gemini-live-vs-openai-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- [Harmony.ai vs OpenAI Realtime API](https://www.anchorterminal.com/compare/harmony-ai-vs-openai-realtime.md)\n- [Hume EVI (Empathic Voice Interface) vs Inworld Realtime API](https://www.anchorterminal.com/compare/hume-evi-vs-inworld-realtime.md)\n- [Hume EVI (Empathic Voice Interface) vs OpenAI Realtime API](https://www.anchorterminal.com/compare/hume-evi-vs-openai-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 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- [LiveKit Agents vs OpenAI Realtime API](https://www.anchorterminal.com/compare/livekit-agents-vs-openai-realtime.md)\n- [OpenAI Realtime API vs Pipecat](https://www.anchorterminal.com/compare/openai-realtime-vs-pipecat.md)\n- [OpenAI Realtime API vs PlaceCall](https://www.anchorterminal.com/compare/openai-realtime-vs-placecall.md)\n- [OpenAI Realtime API vs Retell AI API + MCP](https://www.anchorterminal.com/compare/openai-realtime-vs-retell-ai.md)\n- [OpenAI Realtime API vs Rime Prism](https://www.anchorterminal.com/compare/openai-realtime-vs-rime-prism.md)\n- [OpenAI Realtime API vs Synthflow API + MCP](https://www.anchorterminal.com/compare/openai-realtime-vs-synthflow.md)\n- [OpenAI Realtime API vs Ultravox Realtime API](https://www.anchorterminal.com/compare/openai-realtime-vs-ultravox.md)\n- [OpenAI Realtime API vs Vaani Developer Platform](https://www.anchorterminal.com/compare/openai-realtime-vs-vaani-voice.md)\n- [OpenAI Realtime API vs Vapi API + MCP](https://www.anchorterminal.com/compare/openai-realtime-vs-vapi.md)\n- [OpenAI Realtime API vs Vocily AI](https://www.anchorterminal.com/compare/openai-realtime-vs-vocily.md)\n- [OpenAI Realtime API vs Vogent API](https://www.anchorterminal.com/compare/openai-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- [GPT-Live vs OpenAI Realtime API](https://www.anchorterminal.com/compare/gpt-live-vs-openai-realtime.md)\n- [OpenAI Realtime API vs Pipecat PhoneLLM](https://www.anchorterminal.com/compare/openai-realtime-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": "Inworld Realtime API vs OpenAI Realtime API",
        "url": ""
      }
    ],
    "description": "OpenAI Realtime scores 71.7 (BB) to Inworld Realtime's 60.1 (C) for voice agents. Prices, MCP, x402, uptime and agent notes side by side.",
    "facts": [
      "Inworld Realtime API C 60.1",
      "OpenAI Realtime API BB 71.7",
      "scores"
    ],
    "h1": "Inworld Realtime API vs OpenAI Realtime API",
    "image": "https://www.anchorterminal.com/assets/og/default.png",
    "path": "/compare/inworld-realtime-vs-openai-realtime",
    "published": "2026-10-01",
    "section": "tools",
    "title": "Inworld Realtime vs OpenAI Realtime for AI agents (2026)",
    "toc": null,
    "updated": "2026-11-07",
    "url": "https://www.anchorterminal.com/compare/inworld-realtime-vs-openai-realtime"
  },
  "tokens": {
    "markdown": 6550,
    "slim": 3830
  },
  "version": 1
}
