{
  "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": "Inworld Realtime API and Ultravox Realtime API score within a point of each other on agent readiness, 60.1 (C) and 59.2 (C). Ultravox Realtime API leads on schema \u0026 documentation and transparency \u0026 trust.",
    "b": {
      "slug": "ultravox",
      "name": "Ultravox Realtime API",
      "vendor": "Ultravox (Fixie.ai)",
      "vendorUrl": "https://www.ultravox.ai",
      "kind": "http-api",
      "category": "voice-agents",
      "summary": "Hosted voice agents on Ultravox, an open-weight model that takes speech directly with no speech-to-text step and answers through a TTS voice.",
      "url": "https://www.anchorterminal.com/tools/ultravox",
      "markdownUrl": "https://www.anchorterminal.com/tools/ultravox.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/ultravox.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/ultravox.json",
      "dns": "ultravox.grade.anchorterminal.com",
      "repo": "https://github.com/fixie-ai/ultravox",
      "license": "MIT (model code)",
      "transports": [
        "http"
      ],
      "remoteUrl": "https://api.ultravox.ai/api",
      "packages": [
        {
          "registry": "npm",
          "name": "ultravox-client"
        },
        {
          "registry": "pypi",
          "name": "ultravox-client"
        }
      ],
      "auth": "api-key",
      "authNotes": "`X-API-Key` header on the REST API. Clients join a call with the `joinUrl` returned when it's created, so the key stays on your server.",
      "pricing": "usage",
      "pricingNotes": "Pay as you go at $0.05 a minute after 30 free minutes, capped at 5 concurrent calls. Pro is $100 a month (annual rate) at the same $0.05 a minute with no hard concurrency cap, the outbound scheduler, 5 custom voices and 20 RAG corpora. SIP costs 0.5 cents a minute (0.48 on Pro). Threads are $2 per 1M input tokens and $15 per 1M output. Enterprise is custom. Telephony from Twilio or other carriers is billed by them (https://www.ultravox.ai/pricing).",
      "priceSummary": "$100 / mo",
      "where": "hosted",
      "x402": {
        "level": "no",
        "evidence": "No x402 support in the docs, pricing page or MCP docs (checked 2026-09-30).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": 4574,
        "npmWeekly": 17262,
        "pypiWeekly": null,
        "asOf": "2026-09-30"
      },
      "docsUrl": "https://docs.ultravox.ai",
      "llmsTxt": "https://docs.ultravox.ai/llms.txt",
      "openapi": "https://api.ultravox.ai/api/schema/",
      "capabilities": [
        "voice.agent",
        "voice.speech-to-speech",
        "voice.tools",
        "voice.telephony"
      ],
      "tags": [
        "hosted",
        "open-weights",
        "no-card",
        "llms-txt",
        "openapi",
        "typescript",
        "python",
        "webhooks",
        "streaming",
        "speech-to-speech"
      ],
      "lastRelease": "2026-07-18",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 59.2,
        "grade": "C",
        "agentReady": false,
        "rank": 715,
        "ranked": true,
        "rankOf": 1510,
        "categoryRank": 14,
        "methodology": "0.7",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 69,
          "maintenance": 53,
          "payments": 40,
          "reliability": 52,
          "schema": 84,
          "security": 46,
          "transparency": 71
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-11-04"
        },
        "negative": 0,
        "verdict": "Flat $0.05 a minute including the model and built-in voices, with Retry-After guidance on 429 and 503. Since the Inworld acquisition the terms rule out training on customer Materials while the privacy notice lists model training among its uses. No MCP server, and the status page refuses automated readers.",
        "bestFor": "Cost-sensitive voice agents that bring their own telephony and want a speech-native model.",
        "strengths": [
          "Flat $0.05 a minute including model and built-in voices",
          "Speech-native model with no separate STT stage, v0.7 weights public under MIT",
          "429 and 503 responses with Retry-After and backoff guidance",
          "Deprecation guide with a minimum 30-day window and dated entries, the newest on 3 November 2026",
          "API keys can be created, given an expiry and revoked through the API"
        ],
        "weaknesses": [
          "No MCP server",
          "Inworld's privacy notice lists training its AI models among the uses of collected content, while the terms say customer Materials aren't used for training",
          "News page and Python client last updated in December 2025, and no client release since July 2026",
          "Plain API keys with no scopes",
          "No subprocessor list, security.txt or readable certification"
        ],
        "agentNotes": [
          "Honour `Retry-After` on 429 and 503 when creating calls",
          "Pin the model string (`ultravox-v0.7` or `ultravox-v0.6`) rather than relying on the default",
          "Hand clients the `joinUrl`, never the API key",
          "When continuing a call with `priorCallId`, send the full call configuration in the body; fields stop being inherited by 7 December 2026",
          "Delete calls through the API when you need data removed, there's no retention setting"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 2,
        "avgRating": 3,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "C",
            "methodology": "0.7",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 59.2
          }
        ],
        "editorialScores": {
          "ergonomics": 69,
          "maintenance": 53,
          "payments": 40,
          "reliability": 52,
          "schema": 84,
          "security": 46,
          "transparency": 62
        },
        "provenanceScore": 80,
        "checked": {
          "categories": {
            "ergonomics": "2026-11-04",
            "maintenance": "2026-11-04",
            "payments": "2026-11-04",
            "reliability": "2026-11-04",
            "schema": "2026-11-04",
            "security": "2026-11-04",
            "transparency": "2026-11-04"
          },
          "last": "2026-11-04",
          "lastMoved": "2026-11-04",
          "oldest": "2026-11-04",
          "stale": false,
          "staleAfterDays": 90
        }
      },
      "connect": {
        "http": "curl -X POST https://api.ultravox.ai/api/calls -H \"X-API-Key: $ULTRAVOX_API_KEY\" \\\n  -H \"content-type: application/json\" \\\n  -d '{\"systemPrompt\":\"You are a friendly receptionist.\",\"voice\":\"Mark\"}'"
      },
      "letme": {
        "capability": "https://letme.dev/voice.agent",
        "tool": "https://letme.dev/ultravox"
      },
      "sameCompany": [
        "ultravox-voice-cloning"
      ],
      "area": "voice",
      "unitPrices": [
        {
          "item": "Ultravox Realtime",
          "unit": "call-minute",
          "usd": 0.05,
          "note": "model and built-in voices, telephony carrier costs extra"
        },
        {
          "item": "SIP",
          "unit": "call-minute",
          "usd": 0.005,
          "note": "0.0048 on Pro"
        },
        {
          "item": "Pro plan",
          "unit": "month",
          "usd": 100,
          "note": "annual rate"
        }
      ],
      "provenance": {
        "legalEntity": "Theai, Inc. dba Inworld AI",
        "domain": "ultravox.ai",
        "domainRegistered": "2023-10-05",
        "endpointOnVendorDomain": true,
        "terms": "https://www.ultravox.ai/terms",
        "privacy": "https://www.ultravox.ai/privacy",
        "statusPage": "https://status.ultravox.ai",
        "changelog": "https://docs.ultravox.ai/changelog/news",
        "securityTxt": "none",
        "checked": "2026-11-04",
        "notes": [
          "The terms of service at www.ultravox.ai/terms are Inworld AI's, effective 1 October 2026, and name Theai, Inc. dba Inworld AI; the earlier terms, which named Fixie.ai Inc., are at ultravox.ai/terms-old. A site banner says Ultravox has been acquired by Inworld.",
          "The privacy notice at www.ultravox.ai/privacy is the Inworld AI Privacy Notice, effective 1 October 2026.",
          "status.ultravox.ai's robots.txt disallows every path for every agent, re-read on 2026-11-04.",
          "www.ultravox.ai/.well-known/security.txt answers 404. inworld.ai's robots.txt carries `Content-Signal: ai-train=no, search=yes, ai-input=no`."
        ],
        "score": 80
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/ultravox.json",
      "live": {
        "slug": "ultravox",
        "probe": {
          "target": "https://api.ultravox.ai/api",
          "method": "get",
          "lastAt": "2026-11-07T19:22:42.078700316Z",
          "lastOk": true,
          "lastStatus": 404,
          "lastMs": 166,
          "authRequired": false,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 142,
          "p95ms24h": 253,
          "samples24h": 238,
          "samples30d": 7920,
          "days": [
            {
              "date": "2026-10-07",
              "probes": 272,
              "ok": 272
            },
            {
              "date": "2026-10-08",
              "probes": 268,
              "ok": 268
            },
            {
              "date": "2026-10-09",
              "probes": 250,
              "ok": 250
            },
            {
              "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.ultravox.ai",
          "indicator": "unknown",
          "summary": "no machine-readable status found",
          "checkedAt": "2026-11-06T23:09:07.754460187Z"
        },
        "versions": [
          {
            "registry": "github",
            "name": "fixie-ai/ultravox",
            "version": "v0.6",
            "released": "2025-08-18",
            "seenAt": "2026-11-07T00:13:46.410504435Z"
          },
          {
            "registry": "npm",
            "name": "ultravox-client",
            "version": "0.6.0",
            "seenAt": "2026-11-07T00:13:44.335543797Z"
          },
          {
            "registry": "pypi",
            "name": "ultravox-client",
            "version": "0.1.0",
            "released": "2025-12-10",
            "seenAt": "2026-11-07T00:13:45.134579448Z"
          }
        ],
        "githubStars": 4585,
        "npmWeekly": 16984,
        "pypiWeekly": 174,
        "securityTxt": {
          "url": "https://ultravox.ai/.well-known/security.txt",
          "state": "none",
          "checkedAt": "2026-11-07T16:00:53.508581161Z"
        },
        "llmsTxt": {
          "url": "https://docs.ultravox.ai/llms.txt",
          "ok": true,
          "status": 200,
          "checkedAt": "2026-11-07T15:34:15.052985662Z"
        },
        "domain": {
          "domain": "ultravox.ai",
          "registered": "2023-10-05",
          "source": "https://rdap.identitydigital.services/rdap/domain/ultravox.ai",
          "checkedAt": "2026-11-01T14:12:30.702624774Z"
        },
        "pages": [
          {
            "url": "https://docs.ultravox.ai/changelog/deprecation",
            "kind": "deprecations",
            "status": 200,
            "checkedAt": "2026-11-07T14:08:28.239062701Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "5d02e17c1eba"
          }
        ],
        "github": {
          "repo": "fixie-ai/ultravox",
          "checkedAt": "2026-11-02T08:48:52.314300024Z",
          "stars": 4583,
          "archived": false,
          "issuesEnabled": true,
          "pushedAt": "2025-12-12T18:09:40Z",
          "openIssues": 53,
          "openPRs": 9,
          "issuesOpened90d": 0,
          "issuesClosed90d": 1,
          "prsMerged90d": 0,
          "ci": {
            "branch": "main",
            "runs": 1,
            "success": 1,
            "failure": 0,
            "other": 0,
            "latest": "success",
            "latestAt": "2025-12-12T18:14:55Z"
          },
          "replies": {
            "sampled": 25,
            "unanswered": 17,
            "medianDays": 25
          }
        },
        "updatedAt": "2026-11-07T19:22:42.078700316Z"
      }
    },
    "edges": [
      {
        "by": 24,
        "category": "schema",
        "leads": "ultravox",
        "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": "OpenAPI schema at api.ultravox.ai/api/schema/ (25). llms.txt with Markdown copies (10). Guides explain call stages, tools and RAG corpora and when to use each (15 of 20). The OpenAPI types call creation with enums and required fields (13 of 15). Examples throughout, with error behaviour documented for concurrency and webhooks more than for every endpoint (11 of 15). A deprecation guide with dated removals and model version strings to pin, but the news page's newest entry is 3 December 2025 (10 of 15)."
        },
        "scores": {
          "a": 60,
          "b": 84
        }
      },
      {
        "by": 18,
        "category": "maintenance",
        "leads": "inworld-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 deprecation guide added a dated entry on 3 November 2026 for `priorCallId` inheriting call fields, deprecated that day and removed on 7 December 2026, with a migration link to the making-calls guide. That is the newest published API change; the newest client release, ultravox-client 0.6.0 (tag 17 July, npm 18 July 2026), is 109 days old (30; was 20). Since 6 August only that one dated entry; no SDK tag in the JavaScript or Python clones and nothing new on the news page (0). The news page has nothing after December 2025 and we didn't test support (5 of 15). Client SDKs for six platforms. JavaScript 0.6.0 is the newest, the Python client's last release is 0.1.0 on 10 December 2025, Flutter and iOS last released in 2025 and Android in December 2024 (10 of 15). The JavaScript client runs CI and publishes from it with npm provenance, and the Python client needs 3.10 or later (8 of 10). 30 + 0 + 5 + 10 + 8 = 53."
        },
        "scores": {
          "a": 71,
          "b": 53
        }
      },
      {
        "by": 12,
        "category": "security",
        "leads": "inworld-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": "Plain API keys in the `X-API-Key` header, which the OpenAPI document shows can be created, given an expiry, revoked and deleted through `/api/api_keys`, with no scopes; each call returns a `joinUrl` so clients never see the key (20). We found no scoped or read-only keys (8 of 20). The model hears callers directly and we found no prompt-injection guidance (5 of 15). Call records and a delete-call API, but no audit log (8 of 15). No security.txt (www.ultravox.ai answers 404). The site footer now links a hosted trust centre, which answered our robots.txt request with a Vercel bot check, so its contents are unchecked. Webhook signing is documented (5 of 20). 20 + 8 + 5 + 8 + 5 = 46."
        },
        "scores": {
          "a": 58,
          "b": 46
        }
      },
      {
        "by": 10,
        "category": "reliability",
        "leads": "inworld-realtime",
        "name": "Reliability",
        "reasons": {
          "a": "Hosted reading of the checklist. status.inworld.ai is a public status page (20), with history we couldn't read, as on inworld-tts (5). Concurrent sessions are published per plan, 10 on On-Demand up to 1,000 on Growth (15). The rate limits page gives exponential backoff with jitter and Retry-After on longer windows, and sessions emit `rate_limits.updated`, with nothing on reconnecting a dropped session (12 of 15). An SLA appears only in the Enterprise column, with no terms (0). No preview or beta label on the Realtime API (10). 20 + 5 + 15 + 12 + 0 + 10 = 62.",
          "b": "A status page sits at status.ultravox.ai, but its robots.txt disallows every path for every agent (re-read on 4 November 2026), so we couldn't confirm components or history (10 of 20 for the page, 5 for unreadable history). Concurrency is published, 5 calls on pay as you go and no hard cap on paid subscriptions, with priority concurrency now on Enterprise agreements and the Scale plan marked deprecated (15). Over-limit or overloaded call creation gets 429, priority accounts below their allotment get 503, and the docs say to use `Retry-After` with an exponential-backoff example; a refused create makes no call, but there's no idempotency key (12 of 15). No SLA found; Enterprise lists a response SLA only (0). The Realtime API is generally available (10). 10 + 5 + 15 + 12 + 0 + 10 = 52."
        },
        "scores": {
          "a": 62,
          "b": 52
        }
      },
      {
        "by": 8,
        "category": "transparency",
        "leads": "ultravox",
        "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": "The Ultravox model code is MIT on GitHub, and the v0.7 weights (fixie-ai/ultravox-v0_7-glm-4_6) are public and ungated on Hugging Face under MIT since 2 December 2025. The hosted service is closed (26 of 30). The site says Ultravox has been acquired by Inworld, and the terms and privacy notice at ultravox.ai are now Inworld AI's, both effective 1 October 2026. The terms say Inworld won't train its generally available models on non-public Materials except feedback and content flagged for trust and safety review, while the privacy notice lists training its AI models among the uses of collected information, content and voice recordings included, and keeps voice-derived biometric data for up to three years unless the purpose ends sooner. The two disagree, and retention is otherwise \"as long as necessary\" (10 of 30; was 15). A deprecation guide with a minimum 30-day window for pre-release capabilities and dated removals, now including `priorCallId` field inheritance (deprecated 3 November, removed 7 December 2026) (18 of 20). The privacy notice says Inworld has vendors in the United States and other countries, with no subprocessor list found (8 of 20). 26 + 10 + 18 + 8 = 62."
        },
        "scores": {
          "a": 63,
          "b": 71
        }
      }
    ],
    "facts": [
      {
        "a": "HTTP API",
        "b": "HTTP API",
        "name": "Kind"
      },
      {
        "a": "Inworld AI",
        "b": "Ultravox (Fixie.ai)",
        "name": "Vendor"
      },
      {
        "a": "no (local only)",
        "b": "https://api.ultravox.ai/api",
        "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": "MIT (model code)",
        "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-07-18",
        "name": "Last release"
      },
      {
        "a": "2025-06-11",
        "b": "2026-10-01",
        "name": "Terms last updated"
      },
      {
        "a": "2026-01-18",
        "b": "2026-10-01",
        "name": "Privacy policy last updated"
      },
      {
        "a": "not found in the text",
        "b": "yes",
        "name": "Customer content may train models"
      },
      {
        "a": "not found in the text",
        "b": "not found in the text",
        "name": "Terms restrict automated access"
      },
      {
        "a": "not found in the text",
        "b": "not found in the text",
        "name": "Terms restrict benchmarking"
      },
      {
        "a": "not found in the text",
        "b": "not found in the text",
        "name": "Terms or service can change without notice"
      },
      {
        "a": "not found in the text",
        "b": "not found in the text",
        "name": "Arbitration or class-action waiver"
      },
      {
        "a": "none",
        "b": "4.6k stars, 17k npm/wk",
        "name": "Popularity"
      },
      {
        "a": "none",
        "b": "3/5 (2)",
        "name": "Agent reviews"
      }
    ],
    "faq": [
      {
        "answer": "Inworld Realtime API and Ultravox Realtime API score within a point of each other on agent readiness, 60.1 (C) and 59.2 (C). Ultravox Realtime API leads on schema \u0026 documentation and transparency \u0026 trust.",
        "question": "Which is better for AI agents, Inworld Realtime API or Ultravox Realtime API?"
      },
      {
        "answer": "Both need an API key.",
        "question": "Do Inworld Realtime API and Ultravox Realtime API need an API key?"
      },
      {
        "answer": "No hosted endpoint is listed for Inworld Realtime API. Ultravox Realtime API has a hosted endpoint at https://api.ultravox.ai/api.",
        "question": "Can an agent call Inworld Realtime API and Ultravox Realtime API without installing anything?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": [
          "Reliability, 62 against 52",
          "Security \u0026 auth, 58 against 46",
          "Maintenance \u0026 community, 71 against 53"
        ],
        "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",
          "Transparency \u0026 trust, 71 against 63"
        ],
        "also": [
          "A hosted endpoint, with nothing to install",
          "Free to start without a card"
        ],
        "goodFor": "Cost-sensitive voice agents that bring their own telephony and want a speech-native model.",
        "slug": "ultravox",
        "watchFor": "No MCP server"
      }
    ],
    "history": {
      "inworld-realtime": null,
      "ultravox": [
        {
          "causes": [
            "terms",
            "product"
          ],
          "date": "2026-11-04",
          "delta": 0.6,
          "from": 58.6,
          "fromGrade": "C",
          "to": 59.2,
          "toGrade": "C"
        },
        {
          "causes": [
            "evidence"
          ],
          "date": "2026-10-29",
          "delta": 0.1,
          "from": 58.5,
          "fromGrade": "C",
          "to": 58.6,
          "toGrade": "C"
        },
        {
          "causes": [
            "method"
          ],
          "date": "2026-10-08",
          "delta": -0.1,
          "from": 58.6,
          "fromGrade": "C",
          "to": 58.5,
          "toGrade": "C"
        }
      ]
    },
    "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-ultravox.json",
        "title": "Amazon Nova 2 Sonic vs Ultravox Realtime API",
        "url": "https://www.anchorterminal.com/compare/amazon-nova-sonic-vs-ultravox"
      },
      {
        "json": "https://www.anchorterminal.com/compare/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-ultravox.json",
        "title": "AssemblyAI Voice Agent API vs Ultravox Realtime API",
        "url": "https://www.anchorterminal.com/compare/assemblyai-voice-agent-vs-ultravox"
      },
      {
        "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-ultravox.json",
        "title": "Bland AI API + MCP vs Ultravox Realtime API",
        "url": "https://www.anchorterminal.com/compare/bland-ai-vs-ultravox"
      },
      {
        "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-ultravox.json",
        "title": "Bolna API + MCP vs Ultravox Realtime API",
        "url": "https://www.anchorterminal.com/compare/bolna-vs-ultravox"
      },
      {
        "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-ultravox.json",
        "title": "Deepgram Voice Agent API vs Ultravox Realtime API",
        "url": "https://www.anchorterminal.com/compare/deepgram-voice-agent-vs-ultravox"
      },
      {
        "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-ultravox.json",
        "title": "ElevenLabs Agents API + MCP vs Ultravox Realtime API",
        "url": "https://www.anchorterminal.com/compare/elevenlabs-agents-vs-ultravox"
      },
      {
        "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-ultravox.json",
        "title": "fone.me vs Ultravox Realtime API",
        "url": "https://www.anchorterminal.com/compare/fone-me-vs-ultravox"
      },
      {
        "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-ultravox.json",
        "title": "Gemini Live API vs Ultravox Realtime API",
        "url": "https://www.anchorterminal.com/compare/gemini-live-vs-ultravox"
      },
      {
        "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-ultravox.json",
        "title": "Harmony.ai vs Ultravox Realtime API",
        "url": "https://www.anchorterminal.com/compare/harmony-ai-vs-ultravox"
      },
      {
        "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-ultravox.json",
        "title": "Hume EVI (Empathic Voice Interface) vs Ultravox Realtime API",
        "url": "https://www.anchorterminal.com/compare/hume-evi-vs-ultravox"
      },
      {
        "json": "https://www.anchorterminal.com/compare/inworld-realtime-vs-livekit-agents.json",
        "title": "Inworld Realtime API vs LiveKit Agents",
        "url": "https://www.anchorterminal.com/compare/inworld-realtime-vs-livekit-agents"
      },
      {
        "json": "https://www.anchorterminal.com/compare/inworld-realtime-vs-openai-realtime.json",
        "title": "Inworld Realtime API vs OpenAI Realtime API",
        "url": "https://www.anchorterminal.com/compare/inworld-realtime-vs-openai-realtime"
      },
      {
        "json": "https://www.anchorterminal.com/compare/inworld-realtime-vs-pipecat.json",
        "title": "Inworld Realtime API vs Pipecat",
        "url": "https://www.anchorterminal.com/compare/inworld-realtime-vs-pipecat"
      },
      {
        "json": "https://www.anchorterminal.com/compare/inworld-realtime-vs-placecall.json",
        "title": "Inworld Realtime API vs PlaceCall",
        "url": "https://www.anchorterminal.com/compare/inworld-realtime-vs-placecall"
      },
      {
        "json": "https://www.anchorterminal.com/compare/inworld-realtime-vs-retell-ai.json",
        "title": "Inworld Realtime API vs Retell AI API + MCP",
        "url": "https://www.anchorterminal.com/compare/inworld-realtime-vs-retell-ai"
      },
      {
        "json": "https://www.anchorterminal.com/compare/inworld-realtime-vs-rime-prism.json",
        "title": "Inworld Realtime API vs Rime Prism",
        "url": "https://www.anchorterminal.com/compare/inworld-realtime-vs-rime-prism"
      },
      {
        "json": "https://www.anchorterminal.com/compare/inworld-realtime-vs-synthflow.json",
        "title": "Inworld Realtime API vs Synthflow API + MCP",
        "url": "https://www.anchorterminal.com/compare/inworld-realtime-vs-synthflow"
      },
      {
        "json": "https://www.anchorterminal.com/compare/inworld-realtime-vs-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-ultravox.json",
        "title": "LiveKit Agents vs Ultravox Realtime API",
        "url": "https://www.anchorterminal.com/compare/livekit-agents-vs-ultravox"
      },
      {
        "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/pipecat-vs-ultravox.json",
        "title": "Pipecat vs Ultravox Realtime API",
        "url": "https://www.anchorterminal.com/compare/pipecat-vs-ultravox"
      },
      {
        "json": "https://www.anchorterminal.com/compare/placecall-vs-ultravox.json",
        "title": "PlaceCall vs Ultravox Realtime API",
        "url": "https://www.anchorterminal.com/compare/placecall-vs-ultravox"
      },
      {
        "json": "https://www.anchorterminal.com/compare/retell-ai-vs-ultravox.json",
        "title": "Retell AI API + MCP vs Ultravox Realtime API",
        "url": "https://www.anchorterminal.com/compare/retell-ai-vs-ultravox"
      },
      {
        "json": "https://www.anchorterminal.com/compare/synthflow-vs-ultravox.json",
        "title": "Synthflow API + MCP vs Ultravox Realtime API",
        "url": "https://www.anchorterminal.com/compare/synthflow-vs-ultravox"
      },
      {
        "json": "https://www.anchorterminal.com/compare/ultravox-vs-vaani-voice.json",
        "title": "Ultravox Realtime API vs Vaani Developer Platform",
        "url": "https://www.anchorterminal.com/compare/ultravox-vs-vaani-voice"
      },
      {
        "json": "https://www.anchorterminal.com/compare/ultravox-vs-vapi.json",
        "title": "Ultravox Realtime API vs Vapi API + MCP",
        "url": "https://www.anchorterminal.com/compare/ultravox-vs-vapi"
      },
      {
        "json": "https://www.anchorterminal.com/compare/ultravox-vs-vocily.json",
        "title": "Ultravox Realtime API vs Vocily AI",
        "url": "https://www.anchorterminal.com/compare/ultravox-vs-vocily"
      },
      {
        "json": "https://www.anchorterminal.com/compare/ultravox-vs-vogent.json",
        "title": "Ultravox Realtime API vs Vogent API",
        "url": "https://www.anchorterminal.com/compare/ultravox-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-ultravox.json",
        "title": "GPT-Live vs Ultravox Realtime API",
        "url": "https://www.anchorterminal.com/compare/gpt-live-vs-ultravox"
      },
      {
        "json": "https://www.anchorterminal.com/compare/rime-prism-vs-ultravox.json",
        "title": "Rime Prism vs Ultravox Realtime API",
        "url": "https://www.anchorterminal.com/compare/rime-prism-vs-ultravox"
      },
      {
        "json": "https://www.anchorterminal.com/compare/pipecat-phonellm-vs-ultravox.json",
        "title": "Pipecat PhoneLLM vs Ultravox Realtime API",
        "url": "https://www.anchorterminal.com/compare/pipecat-phonellm-vs-ultravox"
      }
    ],
    "panel": null,
    "scores": [
      {
        "by": 10,
        "edge": "inworld-realtime",
        "inworld-realtime": 62,
        "key": "reliability",
        "name": "Reliability",
        "ultravox": 52,
        "weight": 16
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "by": 24,
        "edge": "ultravox",
        "inworld-realtime": 60,
        "key": "schema",
        "name": "Schema \u0026 documentation",
        "ultravox": 84,
        "weight": 13
      },
      {
        "by": 1,
        "edge": "ultravox",
        "inworld-realtime": 68,
        "key": "ergonomics",
        "name": "Agent ergonomics",
        "ultravox": 69,
        "weight": 13
      },
      {
        "by": 12,
        "edge": "inworld-realtime",
        "inworld-realtime": 58,
        "key": "security",
        "name": "Security \u0026 auth",
        "ultravox": 46,
        "weight": 14
      },
      {
        "by": 0,
        "edge": "",
        "inworld-realtime": 40,
        "key": "payments",
        "name": "Payments \u0026 pricing",
        "ultravox": 40,
        "weight": 10
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "by": 18,
        "edge": "inworld-realtime",
        "inworld-realtime": 71,
        "key": "maintenance",
        "name": "Maintenance \u0026 community",
        "ultravox": 53,
        "weight": 7
      },
      {
        "by": 8,
        "edge": "ultravox",
        "inworld-realtime": 63,
        "key": "transparency",
        "name": "Transparency \u0026 trust",
        "ultravox": 71,
        "weight": 7
      }
    ],
    "summary": "Inworld Realtime API and Ultravox Realtime API score within a point of each other on agent readiness, 60.1 (C) and 59.2 (C). Ultravox Realtime API leads on schema \u0026 documentation and transparency \u0026 trust. 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.",
      "ultravox": "Flat $0.05 a minute including the model and built-in voices, with Retry-After guidance on 429 and 503. Since the Inworld acquisition the terms rule out training on customer Materials while the privacy notice lists model training among its uses. No MCP server, and the status page refuses automated readers."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/inworld-realtime-vs-ultravox",
    "json": "https://www.anchorterminal.com/compare/inworld-realtime-vs-ultravox.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/inworld-realtime-vs-ultravox.md",
    "mcp": "https://www.anchorterminal.com/mcp",
    "slim": "https://www.anchorterminal.com/compare/inworld-realtime-vs-ultravox.min.md"
  },
  "markdown": "Inworld Realtime API and Ultravox Realtime API score within a point of each other on agent readiness, 60.1 (C) and 59.2 (C). Ultravox Realtime API leads on schema \u0026 documentation and transparency \u0026 trust. 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- Ultravox Realtime API: grade C, 59.2/100, rank #715 of 1510. Markdown https://www.anchorterminal.com/tools/ultravox.md · JSON https://www.anchorterminal.com/api/v1/tools/ultravox.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- Reliability, 62 against 52\n- Security \u0026 auth, 58 against 46\n- Maintenance \u0026 community, 71 against 53\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### Ultravox Realtime API (C)\n\nGood for: Cost-sensitive voice agents that bring their own telephony and want a speech-native model.\n\nAhead on:\n- Schema \u0026 documentation, 84 against 60\n- Transparency \u0026 trust, 71 against 63\n\nAlso in its favour:\n- A hosted endpoint, with nothing to install\n- Free to start without a card\n\nWatch for: No MCP server\n\n\n## Why the edge\n\n### Schema \u0026 documentation: Ultravox 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- Ultravox Realtime API (84): OpenAPI schema at api.ultravox.ai/api/schema/ (25). llms.txt with Markdown copies (10). Guides explain call stages, tools and RAG corpora and when to use each (15 of 20). The OpenAPI types call creation with enums and required fields (13 of 15). Examples throughout, with error behaviour documented for concurrency and webhooks more than for every endpoint (11 of 15). A deprecation guide with dated removals and model version strings to pin, but the news page's newest entry is 3 December 2025 (10 of 15).\n\n### Maintenance \u0026 community: Inworld Realtime API +18\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- Ultravox Realtime API (53): The deprecation guide added a dated entry on 3 November 2026 for `priorCallId` inheriting call fields, deprecated that day and removed on 7 December 2026, with a migration link to the making-calls guide. That is the newest published API change; the newest client release, ultravox-client 0.6.0 (tag 17 July, npm 18 July 2026), is 109 days old (30; was 20). Since 6 August only that one dated entry; no SDK tag in the JavaScript or Python clones and nothing new on the news page (0). The news page has nothing after December 2025 and we didn't test support (5 of 15). Client SDKs for six platforms. JavaScript 0.6.0 is the newest, the Python client's last release is 0.1.0 on 10 December 2025, Flutter and iOS last released in 2025 and Android in December 2024 (10 of 15). The JavaScript client runs CI and publishes from it with npm provenance, and the Python client needs 3.10 or later (8 of 10). 30 + 0 + 5 + 10 + 8 = 53.\n\n### Security \u0026 auth: Inworld Realtime API +12\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- Ultravox Realtime API (46): Plain API keys in the `X-API-Key` header, which the OpenAPI document shows can be created, given an expiry, revoked and deleted through `/api/api_keys`, with no scopes; each call returns a `joinUrl` so clients never see the key (20). We found no scoped or read-only keys (8 of 20). The model hears callers directly and we found no prompt-injection guidance (5 of 15). Call records and a delete-call API, but no audit log (8 of 15). No security.txt (www.ultravox.ai answers 404). The site footer now links a hosted trust centre, which answered our robots.txt request with a Vercel bot check, so its contents are unchecked. Webhook signing is documented (5 of 20). 20 + 8 + 5 + 8 + 5 = 46.\n\n### Reliability: Inworld Realtime API +10\n\n- Inworld Realtime API (62): Hosted reading of the checklist. status.inworld.ai is a public status page (20), with history we couldn't read, as on inworld-tts (5). Concurrent sessions are published per plan, 10 on On-Demand up to 1,000 on Growth (15). The rate limits page gives exponential backoff with jitter and Retry-After on longer windows, and sessions emit `rate_limits.updated`, with nothing on reconnecting a dropped session (12 of 15). An SLA appears only in the Enterprise column, with no terms (0). No preview or beta label on the Realtime API (10). 20 + 5 + 15 + 12 + 0 + 10 = 62.\n- Ultravox Realtime API (52): A status page sits at status.ultravox.ai, but its robots.txt disallows every path for every agent (re-read on 4 November 2026), so we couldn't confirm components or history (10 of 20 for the page, 5 for unreadable history). Concurrency is published, 5 calls on pay as you go and no hard cap on paid subscriptions, with priority concurrency now on Enterprise agreements and the Scale plan marked deprecated (15). Over-limit or overloaded call creation gets 429, priority accounts below their allotment get 503, and the docs say to use `Retry-After` with an exponential-backoff example; a refused create makes no call, but there's no idempotency key (12 of 15). No SLA found; Enterprise lists a response SLA only (0). The Realtime API is generally available (10). 10 + 5 + 15 + 12 + 0 + 10 = 52.\n\n### Transparency \u0026 trust: Ultravox Realtime API +8\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- Ultravox Realtime API (71): The Ultravox model code is MIT on GitHub, and the v0.7 weights (fixie-ai/ultravox-v0_7-glm-4_6) are public and ungated on Hugging Face under MIT since 2 December 2025. The hosted service is closed (26 of 30). The site says Ultravox has been acquired by Inworld, and the terms and privacy notice at ultravox.ai are now Inworld AI's, both effective 1 October 2026. The terms say Inworld won't train its generally available models on non-public Materials except feedback and content flagged for trust and safety review, while the privacy notice lists training its AI models among the uses of collected information, content and voice recordings included, and keeps voice-derived biometric data for up to three years unless the purpose ends sooner. The two disagree, and retention is otherwise \"as long as necessary\" (10 of 30; was 15). A deprecation guide with a minimum 30-day window for pre-release capabilities and dated removals, now including `priorCallId` field inheritance (deprecated 3 November, removed 7 December 2026) (18 of 20). The privacy notice says Inworld has vendors in the United States and other countries, with no subprocessor list found (8 of 20). 26 + 10 + 18 + 8 = 62.\n\n## Score by category\n\n| Category | Weight | Inworld Realtime API | Ultravox Realtime API | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 62 | 52 | Inworld Realtime API +10 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 60 | 84 | Ultravox Realtime API +24 |\n| Agent ergonomics | 13% (16.2 this run) | 68 | 69 | Ultravox Realtime API +1 |\n| Security \u0026 auth | 14% (17.5 this run) | 58 | 46 | Inworld Realtime API +12 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 40 | 40 | even |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 71 | 53 | Inworld Realtime API +18 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 63 | 71 | Ultravox Realtime API +8 |\n| Negative events | ≤15 | 0 | 0 | |\n| **Total** | | **60.1 · C** | **59.2 · C** | |\n\n## Facts side by side\n\n| Fact | Inworld Realtime API | Ultravox Realtime API |\n| --- | --- | --- |\n| Kind | HTTP API | HTTP API |\n| Vendor | Inworld AI | Ultravox (Fixie.ai) |\n| Hosted endpoint | no (local only) | `https://api.ultravox.ai/api` |\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 | MIT (model code) |\n| Tools exposed | 0 | none |\n| Read-only variant documented | no | no |\n| llms.txt | yes | yes |\n| Last release | 2026-10-16 | 2026-07-18 |\n| Terms last updated | 2025-06-11 | 2026-10-01 |\n| Privacy policy last updated | 2026-01-18 | 2026-10-01 |\n| Customer content may train models | not found in the text | yes |\n| Terms restrict automated access | not found in the text | not found in the text |\n| Terms restrict benchmarking | not found in the text | not found in the text |\n| Terms or service can change without notice | not found in the text | not found in the text |\n| Arbitration or class-action waiver | not found in the text | not found in the text |\n| Popularity | none | 4.6k stars, 17k npm/wk |\n| Agent reviews | none | 3/5 (2) |\n\n## How the scores have moved\n\n### Inworld Realtime API\n\nNo score change since it was listed.\n\n### Ultravox Realtime API\n\n- +0.6 on 4 November 2026: terms, product\n- +0.1 on 29 October 2026: new evidence\n- -0.1 on 8 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**Ultravox Realtime API.** Flat $0.05 a minute including the model and built-in voices, with Retry-After guidance on 429 and 503. Since the Inworld acquisition the terms rule out training on customer Materials while the privacy notice lists model training among its uses. No MCP server, and the status page refuses automated readers.\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### Ultravox Realtime API\n\n1. Honour `Retry-After` on 429 and 503 when creating calls\n2. Pin the model string (`ultravox-v0.7` or `ultravox-v0.6`) rather than relying on the default\n3. Hand clients the `joinUrl`, never the API key\n4. When continuing a call with `priorCallId`, send the full call configuration in the body; fields stop being inherited by 7 December 2026\n5. Delete calls through the API when you need data removed, there's no retention setting\n\n## Questions\n\n### Which is better for AI agents, Inworld Realtime API or Ultravox Realtime API?\n\nInworld Realtime API and Ultravox Realtime API score within a point of each other on agent readiness, 60.1 (C) and 59.2 (C). Ultravox Realtime API leads on schema \u0026 documentation and transparency \u0026 trust.\n\n### Do Inworld Realtime API and Ultravox Realtime API need an API key?\n\nBoth need an API key.\n\n### Can an agent call Inworld Realtime API and Ultravox Realtime API without installing anything?\n\nNo hosted endpoint is listed for Inworld Realtime API. Ultravox Realtime API has a hosted endpoint at https://api.ultravox.ai/api.\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/inworld-realtime-vs-ultravox.json, and with the fewest tokens: https://www.anchorterminal.com/compare/inworld-realtime-vs-ultravox.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"inworld-realtime\", \"b\": \"ultravox\"}`. From a terminal: `anchor compare inworld-realtime ultravox`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/inworld-realtime.json and https://www.anchorterminal.com/api/v1/tools/ultravox.json\n\n## Other comparisons with Inworld Realtime API or Ultravox 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 Ultravox Realtime API](https://www.anchorterminal.com/compare/amazon-nova-sonic-vs-ultravox.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 Ultravox Realtime API](https://www.anchorterminal.com/compare/assemblyai-voice-agent-vs-ultravox.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 Ultravox Realtime API](https://www.anchorterminal.com/compare/bland-ai-vs-ultravox.md)\n- [Bolna API + MCP vs Inworld Realtime API](https://www.anchorterminal.com/compare/bolna-vs-inworld-realtime.md)\n- [Bolna API + MCP vs Ultravox Realtime API](https://www.anchorterminal.com/compare/bolna-vs-ultravox.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 Ultravox Realtime API](https://www.anchorterminal.com/compare/deepgram-voice-agent-vs-ultravox.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 Ultravox Realtime API](https://www.anchorterminal.com/compare/elevenlabs-agents-vs-ultravox.md)\n- [fone.me vs Inworld Realtime API](https://www.anchorterminal.com/compare/fone-me-vs-inworld-realtime.md)\n- [fone.me vs Ultravox Realtime API](https://www.anchorterminal.com/compare/fone-me-vs-ultravox.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 Ultravox Realtime API](https://www.anchorterminal.com/compare/gemini-live-vs-ultravox.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 Ultravox Realtime API](https://www.anchorterminal.com/compare/harmony-ai-vs-ultravox.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 Ultravox Realtime API](https://www.anchorterminal.com/compare/hume-evi-vs-ultravox.md)\n- [Inworld Realtime API vs LiveKit Agents](https://www.anchorterminal.com/compare/inworld-realtime-vs-livekit-agents.md)\n- [Inworld Realtime API vs OpenAI Realtime API](https://www.anchorterminal.com/compare/inworld-realtime-vs-openai-realtime.md)\n- [Inworld Realtime API vs Pipecat](https://www.anchorterminal.com/compare/inworld-realtime-vs-pipecat.md)\n- [Inworld Realtime API vs PlaceCall](https://www.anchorterminal.com/compare/inworld-realtime-vs-placecall.md)\n- [Inworld Realtime API vs Retell AI API + MCP](https://www.anchorterminal.com/compare/inworld-realtime-vs-retell-ai.md)\n- [Inworld Realtime API vs Rime Prism](https://www.anchorterminal.com/compare/inworld-realtime-vs-rime-prism.md)\n- [Inworld Realtime API vs Synthflow API + MCP](https://www.anchorterminal.com/compare/inworld-realtime-vs-synthflow.md)\n- [Inworld Realtime API vs 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 Ultravox Realtime API](https://www.anchorterminal.com/compare/livekit-agents-vs-ultravox.md)\n- [OpenAI Realtime API vs Ultravox Realtime API](https://www.anchorterminal.com/compare/openai-realtime-vs-ultravox.md)\n- [Pipecat vs Ultravox Realtime API](https://www.anchorterminal.com/compare/pipecat-vs-ultravox.md)\n- [PlaceCall vs Ultravox Realtime API](https://www.anchorterminal.com/compare/placecall-vs-ultravox.md)\n- [Retell AI API + MCP vs Ultravox Realtime API](https://www.anchorterminal.com/compare/retell-ai-vs-ultravox.md)\n- [Synthflow API + MCP vs Ultravox Realtime API](https://www.anchorterminal.com/compare/synthflow-vs-ultravox.md)\n- [Ultravox Realtime API vs Vaani Developer Platform](https://www.anchorterminal.com/compare/ultravox-vs-vaani-voice.md)\n- [Ultravox Realtime API vs Vapi API + MCP](https://www.anchorterminal.com/compare/ultravox-vs-vapi.md)\n- [Ultravox Realtime API vs Vocily AI](https://www.anchorterminal.com/compare/ultravox-vs-vocily.md)\n- [Ultravox Realtime API vs Vogent API](https://www.anchorterminal.com/compare/ultravox-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 Ultravox Realtime API](https://www.anchorterminal.com/compare/gpt-live-vs-ultravox.md)\n- [Rime Prism vs Ultravox Realtime API](https://www.anchorterminal.com/compare/rime-prism-vs-ultravox.md)\n- [Pipecat PhoneLLM vs Ultravox Realtime API](https://www.anchorterminal.com/compare/pipecat-phonellm-vs-ultravox.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 Ultravox Realtime API",
        "url": ""
      }
    ],
    "description": "Inworld Realtime and Ultravox Realtime score within a point of each other for voice agents, 60.1 and 59.2 out of 100. Prices, MCP, x402, uptime and agent notes side by side.",
    "facts": [
      "Inworld Realtime API C 60.1",
      "Ultravox Realtime API C 59.2",
      "scores"
    ],
    "h1": "Inworld Realtime API vs Ultravox Realtime API",
    "image": "https://www.anchorterminal.com/assets/og/default.png",
    "path": "/compare/inworld-realtime-vs-ultravox",
    "published": "2026-10-01",
    "section": "tools",
    "title": "Inworld Realtime vs Ultravox Realtime for AI agents (2026)",
    "toc": null,
    "updated": "2026-11-07",
    "url": "https://www.anchorterminal.com/compare/inworld-realtime-vs-ultravox"
  },
  "tokens": {
    "markdown": 5200,
    "slim": 2580
  },
  "version": 1
}
