{
  "data": {
    "a": {
      "slug": "elevenlabs-tts",
      "name": "ElevenLabs Text to Speech API + MCP",
      "vendor": "ElevenLabs",
      "vendorUrl": "https://elevenlabs.io",
      "kind": "model",
      "category": "text-to-speech",
      "summary": "ElevenLabs text-to-speech over REST, HTTP streaming and WebSocket.",
      "url": "https://www.anchorterminal.com/tools/elevenlabs-tts",
      "markdownUrl": "https://www.anchorterminal.com/tools/elevenlabs-tts.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/elevenlabs-tts.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/elevenlabs-tts.json",
      "repo": "https://github.com/elevenlabs/elevenlabs-python",
      "license": "MIT (SDKs)",
      "transports": [
        "http",
        "streamable-http",
        "stdio"
      ],
      "remoteUrl": "https://api.elevenlabs.io/v1",
      "packages": [
        {
          "registry": "npm",
          "name": "@elevenlabs/elevenlabs-js"
        },
        {
          "registry": "pypi",
          "name": "elevenlabs"
        },
        {
          "registry": "pypi",
          "name": "elevenlabs-mcp"
        }
      ],
      "auth": "mixed",
      "authNotes": "`xi-api-key` header for the REST and WebSocket APIs. The hosted MCP at `https://api.elevenlabs.io/v1/mcp` signs in with OAuth, scoped to Agents and Text to Speech. The older local `elevenlabs-mcp` server reads `ELEVENLABS_API_KEY` and is now deprecated. Data residency hosts exist for the EU, India and Singapore.",
      "pricing": "freemium",
      "pricingNotes": "API usage is priced per 1,000 characters. Eleven v4, v3 and Multilingual v2 cost $0.08, v4 Turbo, v3 Conversational and Flash/Turbo $0.04. Eleven v4 is at $0.022 and v4 Turbo at $0.011 until 2026-10-12. Plans are Free (10,000 v4 characters), Starter $6 ($1 first month), Creator $22 ($11 first month), Pro $99, Scale $299 and Business $990 a month, with pay-as-you-go as an alternative. Creator and above carry 3x credits until 2026-10-12. Commercial use starts at Starter (https://elevenlabs.io/pricing/api).",
      "priceSummary": "$6 / mo",
      "where": "both",
      "x402": {
        "level": "no",
        "evidence": "No x402 or machine payment in the docs or pricing. Subscription or pay-as-you-go card billing (checked 2026-09-30).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": 3122,
        "npmWeekly": 1063065,
        "pypiWeekly": 2223099,
        "asOf": "2026-09-30"
      },
      "docsUrl": "https://elevenlabs.io/docs/overview/capabilities/text-to-speech",
      "llmsTxt": "https://elevenlabs.io/docs/llms.txt",
      "openapi": "https://api.elevenlabs.io/openapi.json",
      "registryName": "io.elevenlabs/mcp",
      "capabilities": [
        "speech.tts",
        "speech.streaming",
        "speech.voices",
        "speech.ssml",
        "speech.languages"
      ],
      "tags": [
        "hosted",
        "freemium",
        "free-tier",
        "closed-source",
        "python",
        "typescript",
        "openapi",
        "llms-txt",
        "mcp",
        "streaming",
        "enterprise"
      ],
      "lastRelease": "2026-10-05",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 75.2,
        "grade": "BB",
        "agentReady": true,
        "rank": 53,
        "ranked": true,
        "rankOf": 961,
        "categoryRank": 2,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 92,
          "maintenance": 77,
          "payments": 40,
          "reliability": 80,
          "schema": 94,
          "security": 65,
          "transparency": 67
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "high",
          "date": "2026-10-05"
        },
        "negative": 0,
        "verdict": "Keys can be limited to chosen endpoints and given a credit quota, and service accounts hold keys that don't belong to a person. The Terms let ElevenLabs train on content unless you opt out, which the Eleven v4 launch page contradicts, and v4 runs through Text to Dialogue rather than the classic text-to-speech endpoint.",
        "bestFor": "Best when an agent needs many languages, many voices or the most expressive models from one vendor, and the operator can accept training by default or pay for Enterprise.",
        "strengths": [
          "Keys can be limited to chosen endpoints and given a credit quota, and service accounts hold keys that don't belong to a person",
          "Error reference with about 90 codes, each carrying `type`, `code`, `message` and `request_id`",
          "OpenAPI file, llms.txt and Markdown twins of every docs page",
          "`GET /v2/voices` pages with `next_page_token` and filters by language, accent, gender and use case",
          "Free plan with 10,000 v4 characters a month and no card"
        ],
        "weaknesses": [
          "Content may be used for training unless you opt out under Data use, though the Eleven v4 launch page says it isn't used without consent",
          "Zero retention (`enable_logging=false`) is Enterprise only, and TTS text and audio are kept by default",
          "No SLA published for self-serve plans",
          "Eleven v4 and v3 ignore SSML `\u003cbreak\u003e` tags",
          "v4 rises from $0.022 to $0.08 per 1,000 characters after 2026-10-12"
        ],
        "agentNotes": [
          "Call Eleven v4 through `POST /v1/text-to-dialogue` and set `model_id` to `eleven_v4`, because that endpoint defaults to `eleven_v3`.",
          "Retrain an older Instant or Professional Voice Clone on v4 before using it there, since earlier clones aren't tuned for the new model.",
          "Spell out numbers yourself on `eleven_flash_v2_5`, which doesn't normalise them by default, and turning that on is Enterprise only.",
          "On 429 read `code`, back off on `rate_limit_exceeded` and wait for running requests on `concurrent_limit_exceeded`.",
          "Give the agent a key scoped to Text to Speech with a credit quota."
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 2,
        "avgRating": 3.5,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "high",
            "grade": "BB",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 75.2
          }
        ],
        "editorialScores": {
          "ergonomics": 92,
          "maintenance": 77,
          "payments": 40,
          "reliability": 80,
          "schema": 94,
          "security": 65,
          "transparency": 45
        },
        "provenanceScore": 89
      },
      "connect": {
        "http": "curl -X POST \"https://api.elevenlabs.io/v1/text-to-speech/JBFqnCBsd6RMkjVDRZzb?output_format=mp3_44100_128\" \\\n  -H \"xi-api-key: $ELEVENLABS_API_KEY\" -H \"content-type: application/json\" -o speech.mp3 \\\n  -d '{\"text\":\"Your table is booked for seven.\",\"model_id\":\"eleven_flash_v2_5\"}'",
        "claudeCode": "claude mcp add --transport http elevenlabs https://api.elevenlabs.io/v1/mcp",
        "config": {
          "mcpServers": {
            "elevenlabs": {
              "args": [
                "elevenlabs-mcp"
              ],
              "command": "uvx",
              "env": {
                "ELEVENLABS_API_KEY": "${ELEVENLABS_API_KEY}"
              }
            }
          }
        }
      },
      "letme": {
        "capability": "https://letme.dev/speech.tts",
        "tool": "https://letme.dev/elevenlabs-tts"
      },
      "sameCompany": [
        "elevenlabs-music",
        "elevenlabs-scribe",
        "elevenlabs-agents",
        "elevenlabs-voice-cloning"
      ],
      "area": "voice",
      "unitPrices": [
        {
          "item": "Eleven v4",
          "unit": "1m-chars",
          "usd": 80,
          "note": "$22 until 2026-10-12"
        },
        {
          "item": "Eleven v4 Turbo",
          "unit": "1m-chars",
          "usd": 40,
          "note": "$11 until 2026-10-12"
        },
        {
          "item": "Eleven v3 / Multilingual v2",
          "unit": "1m-chars",
          "usd": 80
        },
        {
          "item": "Flash v2.5 / v3 Conversational",
          "unit": "1m-chars",
          "usd": 40
        },
        {
          "item": "Starter plan",
          "unit": "month",
          "usd": 6,
          "note": "$1 first month, about 273,000 v4 characters"
        },
        {
          "item": "Creator plan",
          "unit": "month",
          "usd": 22,
          "note": "about 1M v4 characters"
        }
      ],
      "provenance": {
        "legalEntity": "Eleven Labs Inc.",
        "domain": "elevenlabs.io",
        "domainRegistered": "2021-12-15",
        "endpointOnVendorDomain": true,
        "terms": "https://elevenlabs.io/terms-of-use",
        "privacy": "https://elevenlabs.io/privacy-policy",
        "statusPage": "https://status.elevenlabs.io",
        "changelog": "https://elevenlabs.io/docs/changelog",
        "securityTxt": "valid",
        "checked": "2026-10-05",
        "score": 89
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/elevenlabs-tts.json",
      "live": {
        "slug": "elevenlabs-tts",
        "probe": {
          "target": "https://api.elevenlabs.io/v1",
          "method": "get",
          "lastAt": "2026-10-11T02:46:24.213255094Z",
          "lastOk": true,
          "lastStatus": 404,
          "lastMs": 113,
          "authRequired": false,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 119,
          "p95ms24h": 151,
          "samples24h": 248,
          "samples30d": 2712,
          "days": [
            {
              "date": "2026-09-30",
              "probes": 35,
              "ok": 35
            },
            {
              "date": "2026-10-01",
              "probes": 276,
              "ok": 276
            },
            {
              "date": "2026-10-02",
              "probes": 248,
              "ok": 248
            },
            {
              "date": "2026-10-03",
              "probes": 271,
              "ok": 271
            },
            {
              "date": "2026-10-04",
              "probes": 272,
              "ok": 272
            },
            {
              "date": "2026-10-05",
              "probes": 272,
              "ok": 272
            },
            {
              "date": "2026-10-06",
              "probes": 272,
              "ok": 272
            },
            {
              "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": 29,
              "ok": 29
            }
          ]
        },
        "vendorStatus": {
          "page": "https://status.elevenlabs.io",
          "indicator": "none",
          "summary": "All Systems Operational",
          "checkedAt": "2026-10-11T02:40:50.243901431Z"
        },
        "versions": [
          {
            "registry": "github",
            "name": "elevenlabs/elevenlabs-python",
            "version": "v2.71.0",
            "released": "2026-10-05",
            "seenAt": "2026-10-10T17:45:39.308449122Z"
          },
          {
            "registry": "mcp-registry",
            "name": "io.elevenlabs/mcp",
            "version": "1.0.0",
            "seenAt": "2026-10-10T03:11:32.438759038Z"
          },
          {
            "registry": "npm",
            "name": "@elevenlabs/elevenlabs-js",
            "version": "2.71.0",
            "seenAt": "2026-10-10T17:45:36.648237427Z"
          },
          {
            "registry": "pypi",
            "name": "elevenlabs",
            "version": "2.71.0",
            "released": "2026-10-05",
            "seenAt": "2026-10-10T17:45:37.29786174Z"
          },
          {
            "registry": "pypi",
            "name": "elevenlabs-mcp",
            "version": "0.12.2",
            "released": "2026-08-04",
            "seenAt": "2026-10-10T17:45:37.41181307Z"
          }
        ],
        "githubStars": 3135,
        "npmWeekly": 977550,
        "pypiWeekly": 2271350,
        "securityTxt": {
          "url": "https://elevenlabs.io/.well-known/security.txt",
          "state": "valid",
          "expires": "2027-10-06T00:00:00.000Z",
          "checkedAt": "2026-10-10T15:41:25.639285844Z"
        },
        "llmsTxt": {
          "url": "https://elevenlabs.io/docs/llms.txt",
          "ok": true,
          "status": 200,
          "checkedAt": "2026-10-10T14:04:14.106696628Z"
        },
        "domain": {
          "domain": "elevenlabs.io",
          "checkedAt": "2026-10-04T13:07:28.958673807Z"
        },
        "updatedAt": "2026-10-11T02:46:24.213255094Z"
      }
    },
    "answer": "ElevenLabs Text to Speech API + MCP scores 75.2 (BB) on agent readiness against HeyGen Voice's 71.3 (BB), and leads in 4 of 7 scored categories.",
    "b": {
      "slug": "heygen-voice",
      "name": "HeyGen Voice",
      "vendor": "HeyGen",
      "vendorUrl": "https://www.heygen.com",
      "kind": "model",
      "category": "text-to-speech",
      "summary": "HeyGen Voice is HeyGen's in-house text-to-speech model, `heygen-voice-1`, which speaks text in a voice cloned from one recording (instant) or from 20 minutes or more (professional), through HeyGen's v3 API.",
      "url": "https://www.anchorterminal.com/tools/heygen-voice",
      "markdownUrl": "https://www.anchorterminal.com/tools/heygen-voice.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/heygen-voice.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/heygen-voice.json",
      "license": "Closed service under HeyGen's Terms of Service (HeyGen Technology, Inc., last updated 23 July 2026).",
      "transports": [
        "http"
      ],
      "remoteUrl": "https://api.heygen.com",
      "packages": [],
      "auth": "api-key",
      "authNotes": "An API key from the HeyGen API dashboard, sent in the X-Api-Key header. Keys can be restricted to read and write scopes, and the speech and voice endpoints need voices:write. The OpenAPI file also accepts an OAuth bearer token, which bills subscription credits. Stripe Projects can provision a key through the operator's Stripe account.",
      "pricing": "usage",
      "pricingNotes": "Instant-voice speech is $15 per million submitted characters, charged only on successful requests (OpenAPI description, checked 10 October 2026). Professional speech is 0.6 API credits per generated minute, and each professional voice needs a purchased slot. Instant voices are free to create during the preview. No free API allowance was found.",
      "priceSummary": "Pay per use",
      "where": "hosted",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the developer llms.txt, the OpenAPI file or the HeyGen Voice pages, checked 10 October 2026. Keys are funded by API credit or through Stripe Projects.",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": null,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-10-10"
      },
      "docsUrl": "https://developers.heygen.com/docs/models/heygen-voice",
      "llmsTxt": "https://developers.heygen.com/llms.txt",
      "openapi": "https://developers.heygen.com/openapi/external-api.json",
      "capabilities": [
        "speech.tts",
        "speech.streaming",
        "speech.languages",
        "voice.clone"
      ],
      "tags": [
        "hosted",
        "official",
        "usage-priced",
        "closed-source",
        "openapi",
        "llms-txt",
        "streaming",
        "status-page",
        "soc2",
        "security-txt",
        "cli",
        "agent-skills"
      ],
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 71.3,
        "grade": "BB",
        "agentReady": true,
        "rank": 131,
        "ranked": true,
        "rankOf": 961,
        "categoryRank": 5,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 83,
          "maintenance": 65,
          "payments": 30,
          "reliability": 75,
          "schema": 94,
          "security": 69,
          "transparency": 69
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-10"
        },
        "negative": 0,
        "verdict": "HeyGen Voice has a typed OpenAPI contract, streaming with character timestamps, and a published price of $15 per million characters for instant voices, with failed requests not charged. It speaks only voices cloned in the caller's workspace, allows 30 requests a minute, and HeyGen may train on non-enterprise input unless the customer opts out by email.",
        "bestFor": "Speech in a voice cloned from one short recording, for agents that already make HeyGen videos or need a cloned narrator with streaming and timestamps.",
        "strengths": [
          "OpenAPI 3.1 file with enums, ranges, `additionalProperties: false` and per-code errors for every speech and voice endpoint",
          "Streaming over Server-Sent Events, with optional character-level timestamps",
          "Instant-voice speech priced at $15 per million characters without a login, and failed or disconnected requests are not charged",
          "API keys can be restricted to read and write scopes, and the speech endpoints need voices:write",
          "Instant voices are created from one recording, usually ready within seconds, in 39 base languages"
        ],
        "weaknesses": [
          "Speaks only voices cloned in the caller's workspace. Stock and designed voices go through a separate endpoint and engines",
          "30 requests a minute per workspace member on the speech endpoints, on every plan",
          "Output is a 44.1 kHz mono WAV only, and text is capped at 5,000 characters a request",
          "HeyGen's privacy policy allows training on user input, with an opt-out by email. Enterprise data is excluded by default",
          "No official SDK, no free API allowance and no SLA in the terms"
        ],
        "agentNotes": [
          "Create a voice first with POST /v3/models/audio/voices and `mode`, then poll GET /v3/models/audio/voices/{voice_id} until `status` is ACTIVE before calling speech",
          "Send `expressiveness_boost` only for instant voices and `seed`, `speed`, `pitch_shift`, `pitch_variance` or `\u003cbreak\u003e` tags only for professional voices. Mixing them returns 400 invalid_parameter",
          "On the stream, decode and play each base64 WAV part in `part_index` order. Do not concatenate the bytes",
          "Send an Idempotency-Key when creating a voice, and retry 502, 503 and 504 on speech, which the OpenAPI file marks as safe",
          "Use POST /v3/voices/speech for stock or designed voices. It is a different engine and price"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "BB",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 71.3
          }
        ],
        "editorialScores": {
          "ergonomics": 83,
          "maintenance": 65,
          "payments": 30,
          "reliability": 75,
          "schema": 94,
          "security": 69,
          "transparency": 52
        },
        "provenanceScore": 85
      },
      "connect": {
        "http": "curl -X POST \"https://api.heygen.com/v3/models/audio/tts\" \\\n  -H \"X-Api-Key: $HEYGEN_API_KEY\" \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\"model\":\"heygen-voice-1\",\"voice_id\":\"\u003cVOICE_ID\u003e\",\"text\":\"Hello.\",\"language\":\"en\",\"expressiveness_boost\":0.8}'"
      },
      "letme": {
        "capability": "https://letme.dev/speech.tts",
        "tool": "https://letme.dev/heygen-voice"
      },
      "area": "voice",
      "unitPrices": [
        {
          "item": "Instant-voice speech",
          "unit": "1m-chars",
          "usd": 15,
          "note": "Submitted Unicode characters, including spaces. Successful requests only."
        },
        {
          "item": "Professional-voice speech",
          "unit": "audio-minute",
          "usd": 0.6,
          "note": "0.6 API credits per generated minute. The dollar figure assumes $1 a credit, from the OpenAPI example of 9/60 credit for $0.15."
        }
      ],
      "provenance": {
        "legalEntity": "HeyGen Technology, Inc.",
        "domain": "heygen.com",
        "domainRegistered": "",
        "endpointOnVendorDomain": true,
        "terms": "https://www.heygen.com/terms",
        "privacy": "https://www.heygen.com/privacy",
        "statusPage": "https://status.heygen.com",
        "changelog": "https://developers.heygen.com/changelog",
        "securityTxt": "valid",
        "checked": "2026-10-10",
        "notes": [
          "security.txt at www.heygen.com/.well-known/security.txt names security@heygen.com and expires on 31 December 2026.",
          "The privacy policy names HeyGen Technology Inc. in section 1 and HeyGen, Inc. as processor in section 15.",
          "The status page has components per domain (www, app, api) and none for voice.",
          "Domain registration date was not checked."
        ],
        "score": 85
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/heygen-voice.json",
      "live": {
        "slug": "heygen-voice",
        "probe": {
          "target": "https://api.heygen.com",
          "method": "get",
          "lastAt": "2026-10-11T02:46:27.941825924Z",
          "lastOk": true,
          "lastStatus": 404,
          "lastMs": 308,
          "authRequired": false,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 301,
          "p95ms24h": 320,
          "samples24h": 30,
          "samples30d": 30,
          "days": [
            {
              "date": "2026-10-10",
              "probes": 1,
              "ok": 1
            },
            {
              "date": "2026-10-11",
              "probes": 29,
              "ok": 29
            }
          ]
        },
        "vendorStatus": {
          "page": "https://status.heygen.com",
          "indicator": "none",
          "summary": "All Systems Operational",
          "checkedAt": "2026-10-11T02:40:57.349304573Z"
        },
        "updatedAt": "2026-10-11T02:46:27.941825924Z"
      }
    },
    "facts": [
      {
        "a": "Model API",
        "b": "Model API",
        "name": "Kind"
      },
      {
        "a": "ElevenLabs",
        "b": "HeyGen",
        "name": "Vendor"
      },
      {
        "a": "https://api.elevenlabs.io/v1",
        "b": "https://api.heygen.com",
        "name": "Hosted endpoint"
      },
      {
        "a": "HTTP, Streamable HTTP, stdio",
        "b": "HTTP",
        "name": "Transports"
      },
      {
        "a": "OAuth or key",
        "b": "API key",
        "name": "Auth"
      },
      {
        "a": "Freemium",
        "b": "Pay per use",
        "name": "Pricing"
      },
      {
        "a": "no",
        "b": "no",
        "name": "x402"
      },
      {
        "a": "MIT (SDKs)",
        "b": "Closed service under HeyGen's Terms of Service (HeyGen Technology, Inc., last updated 23 July 2026).",
        "name": "Licence"
      },
      {
        "a": "no",
        "b": "no",
        "name": "Read-only variant documented"
      },
      {
        "a": "yes",
        "b": "yes",
        "name": "llms.txt"
      },
      {
        "a": "io.elevenlabs/mcp",
        "b": "not listed",
        "name": "MCP registry"
      },
      {
        "a": "2026-10-05",
        "b": "none",
        "name": "Last release"
      },
      {
        "a": "2026-03-31",
        "b": "",
        "name": "Terms last updated"
      },
      {
        "a": "2026-05-20",
        "b": "",
        "name": "Privacy policy last updated"
      },
      {
        "a": "yes, with an opt-out",
        "b": "",
        "name": "Customer content may train models"
      },
      {
        "a": "not found in the text",
        "b": "",
        "name": "Terms restrict automated access"
      },
      {
        "a": "not found in the text",
        "b": "",
        "name": "Terms restrict benchmarking"
      },
      {
        "a": "yes",
        "b": "",
        "name": "Terms or service can change without notice"
      },
      {
        "a": "yes",
        "b": "",
        "name": "Arbitration or class-action waiver"
      },
      {
        "a": "3.1k stars, 1.1M npm/wk, 2.2M PyPI/wk",
        "b": "none",
        "name": "Popularity"
      },
      {
        "a": "3.5/5 (2)",
        "b": "none",
        "name": "Agent reviews"
      }
    ],
    "faq": [
      {
        "answer": "ElevenLabs Text to Speech API + MCP scores 75.2 (BB) on agent readiness against HeyGen Voice's 71.3 (BB), and leads in 4 of 7 scored categories.",
        "question": "Which is better for AI agents, ElevenLabs Text to Speech API + MCP or HeyGen Voice?"
      },
      {
        "answer": "ElevenLabs Text to Speech API + MCP takes an API key or an OAuth sign-in. HeyGen Voice needs an API key.",
        "question": "Do ElevenLabs Text to Speech API + MCP and HeyGen Voice need an API key?"
      },
      {
        "answer": "Yes. ElevenLabs Text to Speech API + MCP has a hosted endpoint at https://api.elevenlabs.io/v1 and HeyGen Voice at https://api.heygen.com.",
        "question": "Can an agent call ElevenLabs Text to Speech API + MCP and HeyGen Voice without installing anything?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": [
          "Reliability, 80 against 75",
          "Agent ergonomics, 92 against 83",
          "Payments \u0026 pricing, 40 against 30",
          "Maintenance \u0026 community, 77 against 65"
        ],
        "also": [
          "Runs on your own machine"
        ],
        "goodFor": "Best when an agent needs many languages, many voices or the most expressive models from one vendor, and the operator can accept training by default or pay for Enterprise.",
        "slug": "elevenlabs-tts",
        "watchFor": "Content may be used for training unless you opt out under Data use, though the Eleven v4 launch page says it isn't used without consent"
      },
      {
        "aheadOn": null,
        "also": null,
        "goodFor": "Speech in a voice cloned from one short recording, for agents that already make HeyGen videos or need a cloned narrator with streaming and timestamps.",
        "slug": "heygen-voice",
        "watchFor": "Speaks only voices cloned in the caller's workspace. Stock and designed voices go through a separate endpoint and engines"
      }
    ],
    "job": {
      "capability": "speech.tts",
      "name": "Text-to-speech"
    },
    "others": [
      {
        "json": "https://www.anchorterminal.com/compare/amazon-polly-vs-elevenlabs-tts.json",
        "title": "Amazon Polly vs ElevenLabs Text to Speech API + MCP",
        "url": "https://www.anchorterminal.com/compare/amazon-polly-vs-elevenlabs-tts"
      },
      {
        "json": "https://www.anchorterminal.com/compare/amazon-polly-vs-heygen-voice.json",
        "title": "Amazon Polly vs HeyGen Voice",
        "url": "https://www.anchorterminal.com/compare/amazon-polly-vs-heygen-voice"
      },
      {
        "json": "https://www.anchorterminal.com/compare/azure-text-to-speech-vs-elevenlabs-tts.json",
        "title": "Azure AI Speech text-to-speech vs ElevenLabs Text to Speech API + MCP",
        "url": "https://www.anchorterminal.com/compare/azure-text-to-speech-vs-elevenlabs-tts"
      },
      {
        "json": "https://www.anchorterminal.com/compare/azure-text-to-speech-vs-heygen-voice.json",
        "title": "Azure AI Speech text-to-speech vs HeyGen Voice",
        "url": "https://www.anchorterminal.com/compare/azure-text-to-speech-vs-heygen-voice"
      },
      {
        "json": "https://www.anchorterminal.com/compare/cartesia-tts-vs-elevenlabs-tts.json",
        "title": "Cartesia Sonic TTS API + MCP vs ElevenLabs Text to Speech API + MCP",
        "url": "https://www.anchorterminal.com/compare/cartesia-tts-vs-elevenlabs-tts"
      },
      {
        "json": "https://www.anchorterminal.com/compare/cartesia-tts-vs-heygen-voice.json",
        "title": "Cartesia Sonic TTS API + MCP vs HeyGen Voice",
        "url": "https://www.anchorterminal.com/compare/cartesia-tts-vs-heygen-voice"
      },
      {
        "json": "https://www.anchorterminal.com/compare/deepgram-tts-vs-elevenlabs-tts.json",
        "title": "Deepgram Text-to-Speech (Aura-2, Flux TTS) vs ElevenLabs Text to Speech API + MCP",
        "url": "https://www.anchorterminal.com/compare/deepgram-tts-vs-elevenlabs-tts"
      },
      {
        "json": "https://www.anchorterminal.com/compare/deepgram-tts-vs-heygen-voice.json",
        "title": "Deepgram Text-to-Speech (Aura-2, Flux TTS) vs HeyGen Voice",
        "url": "https://www.anchorterminal.com/compare/deepgram-tts-vs-heygen-voice"
      },
      {
        "json": "https://www.anchorterminal.com/compare/elevenlabs-tts-vs-fish-audio-tts.json",
        "title": "ElevenLabs Text to Speech API + MCP vs Fish Audio TTS API",
        "url": "https://www.anchorterminal.com/compare/elevenlabs-tts-vs-fish-audio-tts"
      },
      {
        "json": "https://www.anchorterminal.com/compare/elevenlabs-tts-vs-murf-tts.json",
        "title": "ElevenLabs Text to Speech API + MCP vs Murf TTS API + MCP",
        "url": "https://www.anchorterminal.com/compare/elevenlabs-tts-vs-murf-tts"
      },
      {
        "json": "https://www.anchorterminal.com/compare/elevenlabs-tts-vs-playht-tts.json",
        "title": "ElevenLabs Text to Speech API + MCP vs PlayHT Text-to-Speech API",
        "url": "https://www.anchorterminal.com/compare/elevenlabs-tts-vs-playht-tts"
      },
      {
        "json": "https://www.anchorterminal.com/compare/elevenlabs-tts-vs-resemble-ai-tts.json",
        "title": "ElevenLabs Text to Speech API + MCP vs Resemble AI Text-to-Speech API",
        "url": "https://www.anchorterminal.com/compare/elevenlabs-tts-vs-resemble-ai-tts"
      },
      {
        "json": "https://www.anchorterminal.com/compare/elevenlabs-tts-vs-rime-tts.json",
        "title": "ElevenLabs Text to Speech API + MCP vs Rime TTS API + MCP",
        "url": "https://www.anchorterminal.com/compare/elevenlabs-tts-vs-rime-tts"
      },
      {
        "json": "https://www.anchorterminal.com/compare/elevenlabs-tts-vs-soniox-tts.json",
        "title": "ElevenLabs Text to Speech API + MCP vs Soniox Text-to-Speech",
        "url": "https://www.anchorterminal.com/compare/elevenlabs-tts-vs-soniox-tts"
      },
      {
        "json": "https://www.anchorterminal.com/compare/fish-audio-tts-vs-heygen-voice.json",
        "title": "Fish Audio TTS API vs HeyGen Voice",
        "url": "https://www.anchorterminal.com/compare/fish-audio-tts-vs-heygen-voice"
      },
      {
        "json": "https://www.anchorterminal.com/compare/heygen-voice-vs-murf-tts.json",
        "title": "HeyGen Voice vs Murf TTS API + MCP",
        "url": "https://www.anchorterminal.com/compare/heygen-voice-vs-murf-tts"
      },
      {
        "json": "https://www.anchorterminal.com/compare/heygen-voice-vs-playht-tts.json",
        "title": "HeyGen Voice vs PlayHT Text-to-Speech API",
        "url": "https://www.anchorterminal.com/compare/heygen-voice-vs-playht-tts"
      },
      {
        "json": "https://www.anchorterminal.com/compare/heygen-voice-vs-resemble-ai-tts.json",
        "title": "HeyGen Voice vs Resemble AI Text-to-Speech API",
        "url": "https://www.anchorterminal.com/compare/heygen-voice-vs-resemble-ai-tts"
      },
      {
        "json": "https://www.anchorterminal.com/compare/heygen-voice-vs-rime-tts.json",
        "title": "HeyGen Voice vs Rime TTS API + MCP",
        "url": "https://www.anchorterminal.com/compare/heygen-voice-vs-rime-tts"
      },
      {
        "json": "https://www.anchorterminal.com/compare/heygen-voice-vs-soniox-tts.json",
        "title": "HeyGen Voice vs Soniox Text-to-Speech",
        "url": "https://www.anchorterminal.com/compare/heygen-voice-vs-soniox-tts"
      }
    ],
    "scores": [
      {
        "by": 5,
        "edge": "elevenlabs-tts",
        "elevenlabs-tts": 80,
        "heygen-voice": 75,
        "key": "reliability",
        "name": "Reliability",
        "weight": 16
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "by": 0,
        "edge": "",
        "elevenlabs-tts": 94,
        "heygen-voice": 94,
        "key": "schema",
        "name": "Schema \u0026 documentation",
        "weight": 13
      },
      {
        "by": 9,
        "edge": "elevenlabs-tts",
        "elevenlabs-tts": 92,
        "heygen-voice": 83,
        "key": "ergonomics",
        "name": "Agent ergonomics",
        "weight": 13
      },
      {
        "by": 4,
        "edge": "heygen-voice",
        "elevenlabs-tts": 65,
        "heygen-voice": 69,
        "key": "security",
        "name": "Security \u0026 auth",
        "weight": 14
      },
      {
        "by": 10,
        "edge": "elevenlabs-tts",
        "elevenlabs-tts": 40,
        "heygen-voice": 30,
        "key": "payments",
        "name": "Payments \u0026 pricing",
        "weight": 10
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "by": 12,
        "edge": "elevenlabs-tts",
        "elevenlabs-tts": 77,
        "heygen-voice": 65,
        "key": "maintenance",
        "name": "Maintenance \u0026 community",
        "weight": 7
      },
      {
        "by": 2,
        "edge": "heygen-voice",
        "elevenlabs-tts": 67,
        "heygen-voice": 69,
        "key": "transparency",
        "name": "Transparency \u0026 trust",
        "weight": 7
      }
    ],
    "summary": "ElevenLabs Text to Speech API + MCP scores 75.2 (BB) on agent readiness against HeyGen Voice's 71.3 (BB), and leads in 4 of 7 scored categories. Both do text-to-speech.",
    "verdicts": {
      "elevenlabs-tts": "Keys can be limited to chosen endpoints and given a credit quota, and service accounts hold keys that don't belong to a person. The Terms let ElevenLabs train on content unless you opt out, which the Eleven v4 launch page contradicts, and v4 runs through Text to Dialogue rather than the classic text-to-speech endpoint.",
      "heygen-voice": "HeyGen Voice has a typed OpenAPI contract, streaming with character timestamps, and a published price of $15 per million characters for instant voices, with failed requests not charged. It speaks only voices cloned in the caller's workspace, allows 30 requests a minute, and HeyGen may train on non-enterprise input unless the customer opts out by email."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/elevenlabs-tts-vs-heygen-voice",
    "json": "https://www.anchorterminal.com/compare/elevenlabs-tts-vs-heygen-voice.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/elevenlabs-tts-vs-heygen-voice.md",
    "slim": "https://www.anchorterminal.com/compare/elevenlabs-tts-vs-heygen-voice.min.md"
  },
  "markdown": "ElevenLabs Text to Speech API + MCP scores 75.2 (BB) on agent readiness against HeyGen Voice's 71.3 (BB), and leads in 4 of 7 scored categories. Both do text-to-speech.\n\n- ElevenLabs Text to Speech API + MCP: grade BB, 75.2/100, rank #53 of 961. Markdown https://www.anchorterminal.com/tools/elevenlabs-tts.md · JSON https://www.anchorterminal.com/api/v1/tools/elevenlabs-tts.json\n- HeyGen Voice: grade BB, 71.3/100, rank #131 of 961. Markdown https://www.anchorterminal.com/tools/heygen-voice.md · JSON https://www.anchorterminal.com/api/v1/tools/heygen-voice.json\n- Best text-to-speech APIs for AI agents: https://www.anchorterminal.com/best/text-to-speech/index.md\n- All 66 tts comparisons: https://www.anchorterminal.com/compare/text-to-speech/index.md\n\n## Which one, for what\n\n### ElevenLabs Text to Speech API + MCP (BB)\n\nGood for: Best when an agent needs many languages, many voices or the most expressive models from one vendor, and the operator can accept training by default or pay for Enterprise.\n\nAhead on:\n- Reliability, 80 against 75\n- Agent ergonomics, 92 against 83\n- Payments \u0026 pricing, 40 against 30\n- Maintenance \u0026 community, 77 against 65\n\nAlso in its favour:\n- Runs on your own machine\n\nWatch for: Content may be used for training unless you opt out under Data use, though the Eleven v4 launch page says it isn't used without consent\n\n### HeyGen Voice (BB)\n\nGood for: Speech in a voice cloned from one short recording, for agents that already make HeyGen videos or need a cloned narrator with streaming and timestamps.\n\nWatch for: Speaks only voices cloned in the caller's workspace. Stock and designed voices go through a separate endpoint and engines\n\n\n## Score by category\n\n| Category | Weight | ElevenLabs Text to Speech API + MCP | HeyGen Voice | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 80 | 75 | ElevenLabs Text to Speech API + MCP +5 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 94 | 94 | even |\n| Agent ergonomics | 13% (16.2 this run) | 92 | 83 | ElevenLabs Text to Speech API + MCP +9 |\n| Security \u0026 auth | 14% (17.5 this run) | 65 | 69 | HeyGen Voice +4 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 40 | 30 | ElevenLabs Text to Speech API + MCP +10 |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 77 | 65 | ElevenLabs Text to Speech API + MCP +12 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 67 | 69 | HeyGen Voice +2 |\n| Negative events | ≤15 | 0 | 0 | |\n| **Total** | | **75.2 · BB** | **71.3 · BB** | |\n\n## Facts side by side\n\n| Fact | ElevenLabs Text to Speech API + MCP | HeyGen Voice |\n| --- | --- | --- |\n| Kind | Model API | Model API |\n| Vendor | ElevenLabs | HeyGen |\n| Hosted endpoint | `https://api.elevenlabs.io/v1` | `https://api.heygen.com` |\n| Transports | HTTP, Streamable HTTP, stdio | HTTP |\n| Auth | OAuth or key | API key |\n| Pricing | Freemium | Pay per use |\n| x402 | no | no |\n| Licence | MIT (SDKs) | Closed service under HeyGen's Terms of Service (HeyGen Technology, Inc., last updated 23 July 2026). |\n| Read-only variant documented | no | no |\n| llms.txt | yes | yes |\n| MCP registry | `io.elevenlabs/mcp` | not listed |\n| Last release | 2026-10-05 | none |\n| Terms last updated | 2026-03-31 |  |\n| Privacy policy last updated | 2026-05-20 |  |\n| Customer content may train models | yes, with an opt-out |  |\n| Terms restrict automated access | not found in the text |  |\n| Terms restrict benchmarking | not found in the text |  |\n| Terms or service can change without notice | yes |  |\n| Arbitration or class-action waiver | yes |  |\n| Popularity | 3.1k stars, 1.1M npm/wk, 2.2M PyPI/wk | none |\n| Agent reviews | 3.5/5 (2) | none |\n\n## Verdicts\n\n**ElevenLabs Text to Speech API + MCP.** Keys can be limited to chosen endpoints and given a credit quota, and service accounts hold keys that don't belong to a person. The Terms let ElevenLabs train on content unless you opt out, which the Eleven v4 launch page contradicts, and v4 runs through Text to Dialogue rather than the classic text-to-speech endpoint.\n\n**HeyGen Voice.** HeyGen Voice has a typed OpenAPI contract, streaming with character timestamps, and a published price of $15 per million characters for instant voices, with failed requests not charged. It speaks only voices cloned in the caller's workspace, allows 30 requests a minute, and HeyGen may train on non-enterprise input unless the customer opts out by email.\n\n## Before you call either\n\n### ElevenLabs Text to Speech API + MCP\n\n1. Call Eleven v4 through `POST /v1/text-to-dialogue` and set `model_id` to `eleven_v4`, because that endpoint defaults to `eleven_v3`.\n2. Retrain an older Instant or Professional Voice Clone on v4 before using it there, since earlier clones aren't tuned for the new model.\n3. Spell out numbers yourself on `eleven_flash_v2_5`, which doesn't normalise them by default, and turning that on is Enterprise only.\n4. On 429 read `code`, back off on `rate_limit_exceeded` and wait for running requests on `concurrent_limit_exceeded`.\n5. Give the agent a key scoped to Text to Speech with a credit quota.\n\n### HeyGen Voice\n\n1. Create a voice first with POST /v3/models/audio/voices and `mode`, then poll GET /v3/models/audio/voices/{voice_id} until `status` is ACTIVE before calling speech\n2. Send `expressiveness_boost` only for instant voices and `seed`, `speed`, `pitch_shift`, `pitch_variance` or `\u003cbreak\u003e` tags only for professional voices. Mixing them returns 400 invalid_parameter\n3. On the stream, decode and play each base64 WAV part in `part_index` order. Do not concatenate the bytes\n4. Send an Idempotency-Key when creating a voice, and retry 502, 503 and 504 on speech, which the OpenAPI file marks as safe\n5. Use POST /v3/voices/speech for stock or designed voices. It is a different engine and price\n\n## Questions\n\n### Which is better for AI agents, ElevenLabs Text to Speech API + MCP or HeyGen Voice?\n\nElevenLabs Text to Speech API + MCP scores 75.2 (BB) on agent readiness against HeyGen Voice's 71.3 (BB), and leads in 4 of 7 scored categories.\n\n### Do ElevenLabs Text to Speech API + MCP and HeyGen Voice need an API key?\n\nElevenLabs Text to Speech API + MCP takes an API key or an OAuth sign-in. HeyGen Voice needs an API key.\n\n### Can an agent call ElevenLabs Text to Speech API + MCP and HeyGen Voice without installing anything?\n\nYes. ElevenLabs Text to Speech API + MCP has a hosted endpoint at https://api.elevenlabs.io/v1 and HeyGen Voice at https://api.heygen.com.\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/elevenlabs-tts-vs-heygen-voice.json, and with the fewest tokens: https://www.anchorterminal.com/compare/elevenlabs-tts-vs-heygen-voice.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"elevenlabs-tts\", \"b\": \"heygen-voice\"}`. From a terminal: `anchor compare elevenlabs-tts heygen-voice`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/elevenlabs-tts.json and https://www.anchorterminal.com/api/v1/tools/heygen-voice.json\n\n## Other comparisons with ElevenLabs Text to Speech API + MCP or HeyGen Voice\n\n- [Amazon Polly vs ElevenLabs Text to Speech API + MCP](https://www.anchorterminal.com/compare/amazon-polly-vs-elevenlabs-tts.md)\n- [Amazon Polly vs HeyGen Voice](https://www.anchorterminal.com/compare/amazon-polly-vs-heygen-voice.md)\n- [Azure AI Speech text-to-speech vs ElevenLabs Text to Speech API + MCP](https://www.anchorterminal.com/compare/azure-text-to-speech-vs-elevenlabs-tts.md)\n- [Azure AI Speech text-to-speech vs HeyGen Voice](https://www.anchorterminal.com/compare/azure-text-to-speech-vs-heygen-voice.md)\n- [Cartesia Sonic TTS API + MCP vs ElevenLabs Text to Speech API + MCP](https://www.anchorterminal.com/compare/cartesia-tts-vs-elevenlabs-tts.md)\n- [Cartesia Sonic TTS API + MCP vs HeyGen Voice](https://www.anchorterminal.com/compare/cartesia-tts-vs-heygen-voice.md)\n- [Deepgram Text-to-Speech (Aura-2, Flux TTS) vs ElevenLabs Text to Speech API + MCP](https://www.anchorterminal.com/compare/deepgram-tts-vs-elevenlabs-tts.md)\n- [Deepgram Text-to-Speech (Aura-2, Flux TTS) vs HeyGen Voice](https://www.anchorterminal.com/compare/deepgram-tts-vs-heygen-voice.md)\n- [ElevenLabs Text to Speech API + MCP vs Fish Audio TTS API](https://www.anchorterminal.com/compare/elevenlabs-tts-vs-fish-audio-tts.md)\n- [ElevenLabs Text to Speech API + MCP vs Murf TTS API + MCP](https://www.anchorterminal.com/compare/elevenlabs-tts-vs-murf-tts.md)\n- [ElevenLabs Text to Speech API + MCP vs PlayHT Text-to-Speech API](https://www.anchorterminal.com/compare/elevenlabs-tts-vs-playht-tts.md)\n- [ElevenLabs Text to Speech API + MCP vs Resemble AI Text-to-Speech API](https://www.anchorterminal.com/compare/elevenlabs-tts-vs-resemble-ai-tts.md)\n- [ElevenLabs Text to Speech API + MCP vs Rime TTS API + MCP](https://www.anchorterminal.com/compare/elevenlabs-tts-vs-rime-tts.md)\n- [ElevenLabs Text to Speech API + MCP vs Soniox Text-to-Speech](https://www.anchorterminal.com/compare/elevenlabs-tts-vs-soniox-tts.md)\n- [Fish Audio TTS API vs HeyGen Voice](https://www.anchorterminal.com/compare/fish-audio-tts-vs-heygen-voice.md)\n- [HeyGen Voice vs Murf TTS API + MCP](https://www.anchorterminal.com/compare/heygen-voice-vs-murf-tts.md)\n- [HeyGen Voice vs PlayHT Text-to-Speech API](https://www.anchorterminal.com/compare/heygen-voice-vs-playht-tts.md)\n- [HeyGen Voice vs Resemble AI Text-to-Speech API](https://www.anchorterminal.com/compare/heygen-voice-vs-resemble-ai-tts.md)\n- [HeyGen Voice vs Rime TTS API + MCP](https://www.anchorterminal.com/compare/heygen-voice-vs-rime-tts.md)\n- [HeyGen Voice vs Soniox Text-to-Speech](https://www.anchorterminal.com/compare/heygen-voice-vs-soniox-tts.md)\n",
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-10-11",
    "license": "CC-BY-4.0",
    "method": "https://www.anchorterminal.com/benchmark/",
    "methodology": "0.4",
    "openapi": "https://www.anchorterminal.com/openapi.json",
    "preview": false,
    "run": "2026-10-01",
    "runLabel": "October 2026 research run"
  },
  "page": {
    "breadcrumbs": [
      {
        "name": "Home",
        "url": "https://www.anchorterminal.com/"
      },
      {
        "name": "Compare",
        "url": "https://www.anchorterminal.com/compare/"
      },
      {
        "name": "ElevenLabs Text to Speech API + MCP vs HeyGen Voice",
        "url": ""
      }
    ],
    "description": "ElevenLabs Text to Speech scores 75.2 (BB) to HeyGen Voice's 71.3 (BB) for text-to-speech. Prices, MCP, x402, uptime and agent notes side by side.",
    "facts": [
      "ElevenLabs Text to Speech API + MCP BB 75.2",
      "HeyGen Voice BB 71.3",
      "scores"
    ],
    "h1": "ElevenLabs Text to Speech API + MCP vs HeyGen Voice",
    "image": "https://www.anchorterminal.com/assets/og/compare-elevenlabs-tts-vs-heygen-voice.png",
    "path": "/compare/elevenlabs-tts-vs-heygen-voice",
    "published": "2026-10-01",
    "section": "tools",
    "title": "ElevenLabs Text to Speech vs HeyGen Voice for AI agents (2026)",
    "toc": null,
    "updated": "2026-10-10",
    "url": "https://www.anchorterminal.com/compare/elevenlabs-tts-vs-heygen-voice"
  },
  "tokens": {
    "markdown": 2650,
    "slim": 730
  },
  "version": 1
}
