{
  "data": {
    "similar": [
      {
        "grade": "C",
        "json": "https://www.anchorterminal.com/tools/fish-audio-tts.json",
        "name": "Fish Audio TTS API",
        "score": 60.7,
        "shared": [
          "speech.tts",
          "speech.streaming",
          "speech.languages",
          "voice.clone"
        ],
        "slug": "fish-audio-tts"
      },
      {
        "grade": "BB",
        "json": "https://www.anchorterminal.com/tools/amazon-polly.json",
        "name": "Amazon Polly",
        "score": 75.6,
        "shared": [
          "speech.tts",
          "speech.streaming",
          "speech.languages"
        ],
        "slug": "amazon-polly"
      },
      {
        "grade": "BB",
        "json": "https://www.anchorterminal.com/tools/elevenlabs-tts.json",
        "name": "ElevenLabs Text to Speech API + MCP",
        "score": 75.2,
        "shared": [
          "speech.tts",
          "speech.streaming",
          "speech.languages"
        ],
        "slug": "elevenlabs-tts"
      },
      {
        "grade": "BB",
        "json": "https://www.anchorterminal.com/tools/deepgram-tts.json",
        "name": "Deepgram Text-to-Speech (Aura-2, Flux TTS)",
        "score": 72.7,
        "shared": [
          "speech.tts",
          "speech.streaming",
          "speech.languages"
        ],
        "slug": "deepgram-tts"
      },
      {
        "grade": "BB",
        "json": "https://www.anchorterminal.com/tools/azure-text-to-speech.json",
        "name": "Azure AI Speech text-to-speech",
        "score": 71.4,
        "shared": [
          "speech.tts",
          "speech.streaming",
          "speech.languages"
        ],
        "slug": "azure-text-to-speech"
      },
      {
        "grade": "BB",
        "json": "https://www.anchorterminal.com/tools/murf-tts.json",
        "name": "Murf TTS API + MCP",
        "score": 70.6,
        "shared": [
          "speech.tts",
          "speech.streaming",
          "speech.languages"
        ],
        "slug": "murf-tts"
      }
    ],
    "tool": {
      "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"
        ],
        "breakdown": [
          {
            "key": "reliability",
            "name": "Reliability",
            "weight": 16,
            "effectiveWeight": 20,
            "score": 75,
            "points": 15,
            "reason": "Status page at status.heygen.com with components for www, app and api.heygen.com and dated incident history (20). It has no voice component. In the 90 days to 10 October, majors hit Video Agent (9 September, about 3.5 hours of 404s on new sessions) and Seedance (16 September, 2 minutes), and minors hit video workflows. None names speech or voices, so minor only for this surface (20). The speech endpoints publish 30 requests a minute per workspace member (15). A 429 carries Retry-After and X-RateLimit headers, the error reference asks for exponential backoff, the OpenAPI file marks 502, 503 and 504 safe to retry, and voice creation takes an Idempotency-Key (15). The terms disclaim uninterrupted service and no SLA was found (0). Instant voice creation is in a preview and the professional mode carries no label, so half (5). Total 75."
          },
          {
            "key": "performance",
            "name": "Performance",
            "weight": 10,
            "effectiveWeight": 0,
            "pending": true,
            "points": 0,
            "reason": "Pending. Latency is measured per call by our probes, which haven't run yet, so this run doesn't score it. Its weight is shared across the assessed categories until the first probe window closes."
          },
          {
            "key": "schema",
            "name": "Schema \u0026 documentation",
            "weight": 13,
            "effectiveWeight": 16.25,
            "score": 94,
            "points": 15.28,
            "reason": "OpenAPI 3.1 file at developers.heygen.com/openapi/external-api.json covering create, list, get and delete voice, completed speech and streamed speech (25). llms.txt with a Markdown twin of every page (10). Descriptions say what each endpoint is for and when to use another, for example that Turbo refuses professional voices and that catalogue voices go through /v3/voices/speech. The model page and changelog do not mention Turbo (17 of 20). Request bodies are typed with an enum for `model`, numeric ranges for every control, a 5,000-character cap and `additionalProperties: false` (15). curl examples for both endpoints and a per-endpoint error table with codes and recovery steps (15). Versioned /v3 paths and a public changelog with an RSS feed, dated by month only (12 of 15). Total 94."
          },
          {
            "key": "ergonomics",
            "name": "Agent ergonomics",
            "weight": 13,
            "effectiveWeight": 16.25,
            "score": 83,
            "points": 13.49,
            "reason": "API reading of the checklist. The completed response is a URL and a duration, streaming returns WAV parts as they are made, and timestamps come only when asked. Output is WAV only, with no format or sample-rate choice (20 of 25). Voices list newest first with `limit` and `token`, and text is capped per request, but there are no output-size controls beyond the text (15 of 20). Typed error codes such as voice_not_ready, voice_expired and insufficient_credit, each with a documented next step (20). Idempotency-Key on voice creation, safe-retry status codes on speech, failed or disconnected requests not charged, and a best-effort `seed` for professional voices (20). Only `voice_id` and `text` are required and `model` defaults to heygen-voice-1, but no official SDK was found, only the HeyGen CLI and agent skills (8 of 15). Total 83."
          },
          {
            "key": "security",
            "name": "Security \u0026 auth",
            "weight": 14,
            "effectiveWeight": 17.5,
            "score": 69,
            "points": 12.08,
            "reason": "Model reading of the checklist, with training and retention in place of least-privilege and injection lines. API keys can be restricted to resource read and write scopes, a key without the scope gets 403 insufficient_api_key_scope, and the docs cover rotation (30). The privacy policy (11 August 2026) and the terms (23 July 2026) allow training on user input, with an opt-out by email. The security page excludes enterprise data by default (10). No retention period for voices or speech was found, deleted data stays in backups for 60 days, and voices can be deleted through the API (5). Each response carries an X-Request-Id used in usage and billing records, and the usage page has an Activity tab. Audit logs of user and admin actions are for enterprise customers (10 of 15). A valid security.txt (expires 31 December 2026), a disclosure policy with safe harbour, SOC 2 Type II stated on the security page with reports on request from security.heygen.com, and no bug bounty. The report was not read, so the certification counts as a vendor claim (14 of 20). Total 69."
          },
          {
            "key": "payments",
            "name": "Payments \u0026 pricing",
            "weight": 10,
            "effectiveWeight": 12.5,
            "score": 30,
            "points": 3.75,
            "reason": "No x402, MPP or L402 in the llms.txt, the OpenAPI file or the voice pages (0). Instant-voice speech is $15 per million characters in the public OpenAPI descriptions, and professional speech is 0.6 credits a minute. Self-serve API pricing in the dashboard needs a login, so this rests on the OpenAPI text (20). No free API allowance was found. The web Free plan and OAuth bill subscription credits, which were not checked for HeyGen Voice (0). Stripe Projects lists heygen/api, which lets an agent create the account and receive a key through the operator's Stripe login and saved payment method. A person still has to log in to Stripe once (10). Total 30."
          },
          {
            "key": "tasks",
            "name": "Task success",
            "weight": 10,
            "effectiveWeight": 0,
            "pending": true,
            "points": 0,
            "reason": "Pending. Task success needs the category task suites run through each tool, which haven't run yet, so this run doesn't score it. Its weight is shared across the assessed categories until then. A data provider's data-quality score is published on its listing now and becomes half of this category when it's scored."
          },
          {
            "key": "maintenance",
            "name": "Maintenance \u0026 community",
            "weight": 7,
            "effectiveWeight": 8.75,
            "score": 65,
            "points": 5.69,
            "reason": "Read as a model. The changelog's newest voice entry, instant voices and text-to-speech, is dated October 2026 (30). Four voice entries in the last 90 days, professional voice clone, pause tags and ElevenLabs model selection in September and instant voices in October, and dated sunset notices elsewhere in the API, v1 and v2 on 31 October 2026, announced in April (20). Public changelog with RSS and a developer Discord. Answers were not sampled (10 of 15). No official SDK. HeyGen ships a CLI and agent skills (5 of 15). No package health record was read (0). Total 65."
          },
          {
            "key": "transparency",
            "name": "Transparency \u0026 trust",
            "weight": 7,
            "effectiveWeight": 8.75,
            "score": 69,
            "points": 6.04,
            "note": "editorial 52, provenance 85",
            "reason": "Closed service with terms dated 23 July 2026. Paid plans own their output, and free-plan output is limited to non-commercial use (15). Privacy policy, terms and security page agree that non-enterprise input can train models with an opt-out by email, and differ on the entity name (HeyGen Technology Inc. and HeyGen, Inc.). No retention period for voice or speech data (12 of 30). Dated deprecation notices in the changelog, such as the v1 and v2 sunset on 31 October 2026, and no notice yet for this model (15 of 20). Subprocessors are listed on the security portal, which was not read, and the privacy policy says data may be processed in the United States (10 of 20). Total 52."
          }
        ],
        "assessment": {
          "date": "2026-10-10",
          "basis": "public evidence",
          "confidence": "medium",
          "notes": {
            "ergonomics": "API reading of the checklist. The completed response is a URL and a duration, streaming returns WAV parts as they are made, and timestamps come only when asked. Output is WAV only, with no format or sample-rate choice (20 of 25). Voices list newest first with `limit` and `token`, and text is capped per request, but there are no output-size controls beyond the text (15 of 20). Typed error codes such as voice_not_ready, voice_expired and insufficient_credit, each with a documented next step (20). Idempotency-Key on voice creation, safe-retry status codes on speech, failed or disconnected requests not charged, and a best-effort `seed` for professional voices (20). Only `voice_id` and `text` are required and `model` defaults to heygen-voice-1, but no official SDK was found, only the HeyGen CLI and agent skills (8 of 15). Total 83.",
            "maintenance": "Read as a model. The changelog's newest voice entry, instant voices and text-to-speech, is dated October 2026 (30). Four voice entries in the last 90 days, professional voice clone, pause tags and ElevenLabs model selection in September and instant voices in October, and dated sunset notices elsewhere in the API, v1 and v2 on 31 October 2026, announced in April (20). Public changelog with RSS and a developer Discord. Answers were not sampled (10 of 15). No official SDK. HeyGen ships a CLI and agent skills (5 of 15). No package health record was read (0). Total 65.",
            "payments": "No x402, MPP or L402 in the llms.txt, the OpenAPI file or the voice pages (0). Instant-voice speech is $15 per million characters in the public OpenAPI descriptions, and professional speech is 0.6 credits a minute. Self-serve API pricing in the dashboard needs a login, so this rests on the OpenAPI text (20). No free API allowance was found. The web Free plan and OAuth bill subscription credits, which were not checked for HeyGen Voice (0). Stripe Projects lists heygen/api, which lets an agent create the account and receive a key through the operator's Stripe login and saved payment method. A person still has to log in to Stripe once (10). Total 30.",
            "reliability": "Status page at status.heygen.com with components for www, app and api.heygen.com and dated incident history (20). It has no voice component. In the 90 days to 10 October, majors hit Video Agent (9 September, about 3.5 hours of 404s on new sessions) and Seedance (16 September, 2 minutes), and minors hit video workflows. None names speech or voices, so minor only for this surface (20). The speech endpoints publish 30 requests a minute per workspace member (15). A 429 carries Retry-After and X-RateLimit headers, the error reference asks for exponential backoff, the OpenAPI file marks 502, 503 and 504 safe to retry, and voice creation takes an Idempotency-Key (15). The terms disclaim uninterrupted service and no SLA was found (0). Instant voice creation is in a preview and the professional mode carries no label, so half (5). Total 75.",
            "schema": "OpenAPI 3.1 file at developers.heygen.com/openapi/external-api.json covering create, list, get and delete voice, completed speech and streamed speech (25). llms.txt with a Markdown twin of every page (10). Descriptions say what each endpoint is for and when to use another, for example that Turbo refuses professional voices and that catalogue voices go through /v3/voices/speech. The model page and changelog do not mention Turbo (17 of 20). Request bodies are typed with an enum for `model`, numeric ranges for every control, a 5,000-character cap and `additionalProperties: false` (15). curl examples for both endpoints and a per-endpoint error table with codes and recovery steps (15). Versioned /v3 paths and a public changelog with an RSS feed, dated by month only (12 of 15). Total 94.",
            "security": "Model reading of the checklist, with training and retention in place of least-privilege and injection lines. API keys can be restricted to resource read and write scopes, a key without the scope gets 403 insufficient_api_key_scope, and the docs cover rotation (30). The privacy policy (11 August 2026) and the terms (23 July 2026) allow training on user input, with an opt-out by email. The security page excludes enterprise data by default (10). No retention period for voices or speech was found, deleted data stays in backups for 60 days, and voices can be deleted through the API (5). Each response carries an X-Request-Id used in usage and billing records, and the usage page has an Activity tab. Audit logs of user and admin actions are for enterprise customers (10 of 15). A valid security.txt (expires 31 December 2026), a disclosure policy with safe harbour, SOC 2 Type II stated on the security page with reports on request from security.heygen.com, and no bug bounty. The report was not read, so the certification counts as a vendor claim (14 of 20). Total 69.",
            "transparency": "Closed service with terms dated 23 July 2026. Paid plans own their output, and free-plan output is limited to non-commercial use (15). Privacy policy, terms and security page agree that non-enterprise input can train models with an opt-out by email, and differ on the entity name (HeyGen Technology Inc. and HeyGen, Inc.). No retention period for voice or speech data (12 of 30). Dated deprecation notices in the changelog, such as the v1 and v2 sunset on 31 October 2026, and no notice yet for this model (15 of 20). Subprocessors are listed on the security portal, which was not read, and the privacy policy says data may be processed in the United States (10 of 20). Total 52."
          },
          "sources": [
            {
              "what": "HeyGen Voice model page, modes, endpoints and pricing",
              "url": "https://developers.heygen.com/docs/models/heygen-voice",
              "seen": "2026-10-10"
            },
            {
              "what": "Text to Speech page, parameters, streaming format, limits and errors",
              "url": "https://developers.heygen.com/docs/voices/heygen-voice-speech",
              "seen": "2026-10-10"
            },
            {
              "what": "Instant Voice Clone page, recording rules and languages",
              "url": "https://developers.heygen.com/docs/voices/heygen-voice-instant-clone",
              "seen": "2026-10-10"
            },
            {
              "what": "OpenAPI file, schemas, per-character price, scopes and retry notes",
              "url": "https://developers.heygen.com/openapi/external-api.json",
              "seen": "2026-10-10"
            },
            {
              "what": "Developer llms.txt",
              "url": "https://developers.heygen.com/llms.txt",
              "seen": "2026-10-10"
            },
            {
              "what": "API changelog",
              "url": "https://developers.heygen.com/changelog",
              "seen": "2026-10-10"
            },
            {
              "what": "Usage limits, rate limits and 429 headers",
              "url": "https://developers.heygen.com/docs/usage-limits",
              "seen": "2026-10-10"
            },
            {
              "what": "API key permission scopes",
              "url": "https://developers.heygen.com/docs/api-key-permissions",
              "seen": "2026-10-10"
            },
            {
              "what": "Stripe Projects provisioning",
              "url": "https://developers.heygen.com/docs/stripe-projects",
              "seen": "2026-10-10"
            },
            {
              "what": "Status page incidents feed",
              "url": "https://status.heygen.com/api/v2/incidents.json",
              "seen": "2026-10-10"
            },
            {
              "what": "Privacy policy, training and retention",
              "url": "https://www.heygen.com/privacy",
              "seen": "2026-10-10"
            },
            {
              "what": "Terms of Service, ownership, training licence and warranty",
              "url": "https://www.heygen.com/terms",
              "seen": "2026-10-10"
            },
            {
              "what": "Security page, SOC 2, disclosure policy and training exclusion",
              "url": "https://www.heygen.com/security",
              "seen": "2026-10-10"
            },
            {
              "what": "security.txt",
              "url": "https://www.heygen.com/.well-known/security.txt",
              "seen": "2026-10-10"
            }
          ],
          "openQuestions": [
            "unchecked: the self-serve API pricing modal at app.heygen.com/developers/api, which needs a login. The dollar value of an API credit is inferred from the OpenAPI example of 9/60 credit for $0.15.",
            "unchecked: whether the web Free plan or OAuth credits can call the HeyGen Voice speech endpoints.",
            "unchecked: the subprocessor list and SOC 2 report on security.heygen.com.",
            "The claim that HeyGen Voice leads a text-to-speech arena came from a social media post. No first-hand page with the ranking was read, and the listing does not state it.",
            "No release day for either mode. The changelog dates them by month only.",
            "No authenticated call was made, so latency, the Turbo model and the streaming format are as documented, not measured."
          ]
        },
        "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"
      },
      "notable": [
        "HeyGen's changelog dates professional voice cloning on the HeyGen Voice model to September 2026 and instant voices with the text-to-speech endpoints to October 2026, without day dates (https://developers.heygen.com/changelog)",
        "The OpenAPI file lists two model values, heygen-voice-1 and heygen-voice-1-turbo. Turbo speaks instant voices at lower latency and refuses professional voices. The changelog and the model page do not mention Turbo (https://developers.heygen.com/openapi/external-api.json)",
        "Instant-voice speech costs $15 per million submitted Unicode characters, and failed or disconnected streams are not charged, per the OpenAPI descriptions of POST /v3/models/audio/tts and /tts/stream (https://developers.heygen.com/openapi/external-api.json)",
        "The text-to-speech endpoints allow 30 requests a minute per workspace member on every plan, and a 429 carries Retry-After and X-RateLimit headers (https://developers.heygen.com/docs/usage-limits)",
        "Catalogue voices are spoken by a separate endpoint, POST /v3/voices/speech, with Orca, Starfish or ElevenLabs engines. HeyGen Voice clones are not used there (https://developers.heygen.com/docs/voices/speech)",
        "HeyGen's privacy policy (11 August 2026) says user input may be used to train its models, with an opt-out by email, and its security page says enterprise data is excluded from training by default (https://www.heygen.com/privacy and https://www.heygen.com/security)",
        "A claim that HeyGen Voice leads a text-to-speech arena came from a social media post and was not confirmed on a first-hand page"
      ],
      "area": "voice",
      "details": [
        {
          "label": "Surface graded",
          "value": "HeyGen Voice through HeyGen's v3 API, POST /v3/models/audio/tts and /tts/stream with the voice endpoints under /v3/models/audio/voices. Read from the developer docs and OpenAPI file on 10 October 2026. No authenticated call was made."
        },
        {
          "label": "Models",
          "value": "heygen-voice-1 (default, instant and professional voices) and heygen-voice-1-turbo (instant voices only, lower latency, per the OpenAPI file)."
        },
        {
          "label": "Voice modes",
          "value": "Instant voices use one recording (the first 3 minutes), are usually ready within seconds and cannot be retrained. Professional voices use 1 to 10 recordings of one speaker, 20 minutes or more in total, are trained and retrainable, and need one purchased slot each with five trainings a month."
        },
        {
          "label": "Output",
          "value": "Completed speech returns a URL to a 44.1 kHz mono PCM16 WAV and its duration. Streaming returns Server-Sent Events of base64 WAV parts, ending with [DONE], with optional character alignment events."
        },
        {
          "label": "Controls",
          "value": "Instant voices take expressiveness_boost from 0.0 to 1.0. Professional voices take seed, speed 0.75 to 1.25, pitch_shift -4 to +4 semitones, pitch_variance 0.5 to 2.0, and \u003cbreak\u003e pauses up to 5 seconds. No other SSML."
        },
        {
          "label": "Languages",
          "value": "39 base languages for cloning and speech, including ar, de, en, es, fr, hi, ja, ko, pt, ru and zh. Regional tags normalise to the base language. Detected from the text when omitted."
        },
        {
          "label": "Limits",
          "value": "1 to 5,000 characters a request. 30 requests a minute per workspace member on each speech endpoint, on every plan."
        },
        {
          "label": "Errors",
          "value": "400 invalid_parameter or voice_expired, 402 insufficient_credit or usage_limit_reached, 403 forbidden, 404 voice_not_found, 409 voice_not_ready or voice_training_failed, 429 rate_limit_exceeded with Retry-After, 502, 503 and 504 safe to retry."
        },
        {
          "label": "Preview status",
          "value": "Instant voice creation is free during a preview, per the model page. The professional mode carries no preview label."
        },
        {
          "label": "Data handling",
          "value": "The privacy policy of 11 August 2026 says input may train HeyGen's models, with an opt-out by email, and backups are kept 60 days after deletion. The security page says enterprise data is excluded from training by default and states SOC 2 Type II."
        }
      ],
      "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,
        "checks": [
          {
            "check": "Legal entity named",
            "value": "HeyGen Technology, Inc.",
            "points": 20,
            "max": 20,
            "state": "ok"
          },
          {
            "check": "Domain age",
            "value": "heygen.com, no registry record we could read",
            "points": 0,
            "max": 15,
            "state": "no"
          },
          {
            "check": "Endpoint on the vendor's domain",
            "value": "api.heygen.com",
            "points": 15,
            "max": 15,
            "state": "ok"
          },
          {
            "check": "Terms of service",
            "value": "published",
            "points": 10,
            "max": 10,
            "state": "ok"
          },
          {
            "check": "Privacy policy",
            "value": "published",
            "points": 10,
            "max": 10,
            "state": "ok"
          },
          {
            "check": "Status page",
            "value": "status.heygen.com",
            "points": 10,
            "max": 10,
            "state": "ok"
          },
          {
            "check": "Changelog",
            "value": "published",
            "points": 10,
            "max": 10,
            "state": "ok"
          },
          {
            "check": "security.txt",
            "value": "valid",
            "points": 10,
            "max": 10,
            "state": "ok"
          }
        ]
      },
      "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"
      }
    },
    "verify": {
      "accepts": "a page on heygen.com or one of its subdomains",
      "badgeUrl": "https://www.anchorterminal.com/badges/heygen-voice.svg",
      "body": {
        "slug": "heygen-voice",
        "url": "the page with the badge or the link"
      },
      "docs": "https://www.anchorterminal.com/builders/#verify",
      "effect": "none, it never changes a grade, rank or review",
      "endpoint": "https://www.anchorterminal.com/api/v1/verify",
      "listingUrl": "https://www.anchorterminal.com/tools/heygen-voice",
      "mcpTool": "verify_listing",
      "recheck": "weekly; two failed checks in a row and it lapses, a later pass restores it",
      "snippets": {
        "html": "\u003ca href=\"https://www.anchorterminal.com/tools/heygen-voice\"\u003e\u003cimg src=\"https://www.anchorterminal.com/badges/heygen-voice.svg\" alt=\"HeyGen Voice on Anchor Terminal\" height=\"20\"\u003e\u003c/a\u003e",
        "markdown": "[![HeyGen Voice on Anchor Terminal](https://www.anchorterminal.com/badges/heygen-voice.svg)](https://www.anchorterminal.com/tools/heygen-voice)",
        "link": "\u003ca href=\"https://www.anchorterminal.com/tools/heygen-voice\"\u003eHeyGen Voice on Anchor Terminal\u003c/a\u003e"
      }
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/tools/heygen-voice",
    "json": "https://www.anchorterminal.com/tools/heygen-voice.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/tools/heygen-voice.md",
    "slim": "https://www.anchorterminal.com/tools/heygen-voice.min.md"
  },
  "markdown": "## Overview\n\n**Grade BB · 71.3/100 · rank #131 of 961 · #5 in Text-to-speech · agent-ready · confidence medium**\n\n\n## Assessment\n\nHeyGen 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## Facts\n\n| Field | Value |\n| --- | --- |\n| Vendor | HeyGen (https://www.heygen.com) |\n| Kind | Model API |\n| Category | Text-to-speech (https://www.anchorterminal.com/categories/text-to-speech) |\n| Transport | HTTP |\n| Endpoint | `https://api.heygen.com` |\n| Auth | API key · 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. |\n| Pricing | Pay per use (Pay per use) · 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. |\n| x402 | No · 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. |\n| Licence | Closed service under HeyGen's Terms of Service (HeyGen Technology, Inc., last updated 23 July 2026). |\n| Docs | https://developers.heygen.com/docs/models/heygen-voice |\n| llms.txt | https://developers.heygen.com/llms.txt |\n| Surface graded | HeyGen Voice through HeyGen's v3 API, POST /v3/models/audio/tts and /tts/stream with the voice endpoints under /v3/models/audio/voices. Read from the developer docs and OpenAPI file on 10 October 2026. No authenticated call was made. |\n| Models | heygen-voice-1 (default, instant and professional voices) and heygen-voice-1-turbo (instant voices only, lower latency, per the OpenAPI file). |\n| Voice modes | Instant voices use one recording (the first 3 minutes), are usually ready within seconds and cannot be retrained. Professional voices use 1 to 10 recordings of one speaker, 20 minutes or more in total, are trained and retrainable, and need one purchased slot each with five trainings a month. |\n| Output | Completed speech returns a URL to a 44.1 kHz mono PCM16 WAV and its duration. Streaming returns Server-Sent Events of base64 WAV parts, ending with [DONE], with optional character alignment events. |\n| Controls | Instant voices take expressiveness_boost from 0.0 to 1.0. Professional voices take seed, speed 0.75 to 1.25, pitch_shift -4 to +4 semitones, pitch_variance 0.5 to 2.0, and \u003cbreak\u003e pauses up to 5 seconds. No other SSML. |\n| Languages | 39 base languages for cloning and speech, including ar, de, en, es, fr, hi, ja, ko, pt, ru and zh. Regional tags normalise to the base language. Detected from the text when omitted. |\n| Limits | 1 to 5,000 characters a request. 30 requests a minute per workspace member on each speech endpoint, on every plan. |\n| Errors | 400 invalid_parameter or voice_expired, 402 insufficient_credit or usage_limit_reached, 403 forbidden, 404 voice_not_found, 409 voice_not_ready or voice_training_failed, 429 rate_limit_exceeded with Retry-After, 502, 503 and 504 safe to retry. |\n| Preview status | Instant voice creation is free during a preview, per the model page. The professional mode carries no preview label. |\n| Data handling | The privacy policy of 11 August 2026 says input may train HeyGen's models, with an opt-out by email, and backups are kept 60 days after deletion. The security page says enterprise data is excluded from training by default and states SOC 2 Type II. |\n| Capabilities | speech.tts, speech.streaming, speech.languages, voice.clone |\n| Tags | hosted, official, usage-priced, closed-source, openapi, llms-txt, streaming, status-page, soc2, security-txt, cli, agent-skills |\n| JSON | https://www.anchorterminal.com/api/v1/tools/heygen-voice.json |\n\n## Score breakdown (methodology v0.4, October 2026 research run)\n\nAssessed 2026-10-10 from public evidence against the published checklist (https://www.anchorterminal.com/benchmark/#checklist). Confidence: medium. Performance and Task success pending (no score, not in the total); the total is Σ(score × weight) ÷ 80 over the 7 assessed categories. \"This run\" is each category's share of the 100 points.\n\n| Category | Weight | This run | Score (0–100) | Points |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% | 20 | 75 | 15.0 |\n| Performance | 10% | pending | pending | n/a |\n| Schema \u0026 documentation | 13% | 16.2 | 94 | 15.3 |\n| Agent ergonomics | 13% | 16.2 | 83 | 13.5 |\n| Security \u0026 auth | 14% | 17.5 | 69 | 12.1 |\n| Payments \u0026 pricing | 10% | 12.5 | 30 | 3.8 |\n| Task success | 10% | pending | pending | n/a |\n| Maintenance \u0026 community | 7% | 8.8 | 65 | 5.7 |\n| Transparency \u0026 trust (editorial 52, provenance 85) | 7% | 8.8 | 69 | 6.0 |\n| Negative events | up to −15 | up to −15 | none recorded | 0 |\n| **Total** | | | | **71.3 → BB** |\n\n### Why each score\n\n- Reliability 75: Status page at status.heygen.com with components for www, app and api.heygen.com and dated incident history (20). It has no voice component. In the 90 days to 10 October, majors hit Video Agent (9 September, about 3.5 hours of 404s on new sessions) and Seedance (16 September, 2 minutes), and minors hit video workflows. None names speech or voices, so minor only for this surface (20). The speech endpoints publish 30 requests a minute per workspace member (15). A 429 carries Retry-After and X-RateLimit headers, the error reference asks for exponential backoff, the OpenAPI file marks 502, 503 and 504 safe to retry, and voice creation takes an Idempotency-Key (15). The terms disclaim uninterrupted service and no SLA was found (0). Instant voice creation is in a preview and the professional mode carries no label, so half (5). Total 75.\n- Performance: Pending. Latency is measured per call by our probes, which haven't run yet, so this run doesn't score it. Its weight is shared across the assessed categories until the first probe window closes.\n- Schema \u0026 documentation 94: OpenAPI 3.1 file at developers.heygen.com/openapi/external-api.json covering create, list, get and delete voice, completed speech and streamed speech (25). llms.txt with a Markdown twin of every page (10). Descriptions say what each endpoint is for and when to use another, for example that Turbo refuses professional voices and that catalogue voices go through /v3/voices/speech. The model page and changelog do not mention Turbo (17 of 20). Request bodies are typed with an enum for `model`, numeric ranges for every control, a 5,000-character cap and `additionalProperties: false` (15). curl examples for both endpoints and a per-endpoint error table with codes and recovery steps (15). Versioned /v3 paths and a public changelog with an RSS feed, dated by month only (12 of 15). Total 94.\n- Agent ergonomics 83: API reading of the checklist. The completed response is a URL and a duration, streaming returns WAV parts as they are made, and timestamps come only when asked. Output is WAV only, with no format or sample-rate choice (20 of 25). Voices list newest first with `limit` and `token`, and text is capped per request, but there are no output-size controls beyond the text (15 of 20). Typed error codes such as voice_not_ready, voice_expired and insufficient_credit, each with a documented next step (20). Idempotency-Key on voice creation, safe-retry status codes on speech, failed or disconnected requests not charged, and a best-effort `seed` for professional voices (20). Only `voice_id` and `text` are required and `model` defaults to heygen-voice-1, but no official SDK was found, only the HeyGen CLI and agent skills (8 of 15). Total 83.\n- Security \u0026 auth 69: Model reading of the checklist, with training and retention in place of least-privilege and injection lines. API keys can be restricted to resource read and write scopes, a key without the scope gets 403 insufficient_api_key_scope, and the docs cover rotation (30). The privacy policy (11 August 2026) and the terms (23 July 2026) allow training on user input, with an opt-out by email. The security page excludes enterprise data by default (10). No retention period for voices or speech was found, deleted data stays in backups for 60 days, and voices can be deleted through the API (5). Each response carries an X-Request-Id used in usage and billing records, and the usage page has an Activity tab. Audit logs of user and admin actions are for enterprise customers (10 of 15). A valid security.txt (expires 31 December 2026), a disclosure policy with safe harbour, SOC 2 Type II stated on the security page with reports on request from security.heygen.com, and no bug bounty. The report was not read, so the certification counts as a vendor claim (14 of 20). Total 69.\n- Payments \u0026 pricing 30: No x402, MPP or L402 in the llms.txt, the OpenAPI file or the voice pages (0). Instant-voice speech is $15 per million characters in the public OpenAPI descriptions, and professional speech is 0.6 credits a minute. Self-serve API pricing in the dashboard needs a login, so this rests on the OpenAPI text (20). No free API allowance was found. The web Free plan and OAuth bill subscription credits, which were not checked for HeyGen Voice (0). Stripe Projects lists heygen/api, which lets an agent create the account and receive a key through the operator's Stripe login and saved payment method. A person still has to log in to Stripe once (10). Total 30.\n- Task success: Pending. Task success needs the category task suites run through each tool, which haven't run yet, so this run doesn't score it. Its weight is shared across the assessed categories until then. A data provider's data-quality score is published on its listing now and becomes half of this category when it's scored.\n- Maintenance \u0026 community 65: Read as a model. The changelog's newest voice entry, instant voices and text-to-speech, is dated October 2026 (30). Four voice entries in the last 90 days, professional voice clone, pause tags and ElevenLabs model selection in September and instant voices in October, and dated sunset notices elsewhere in the API, v1 and v2 on 31 October 2026, announced in April (20). Public changelog with RSS and a developer Discord. Answers were not sampled (10 of 15). No official SDK. HeyGen ships a CLI and agent skills (5 of 15). No package health record was read (0). Total 65.\n- Transparency \u0026 trust 69: Closed service with terms dated 23 July 2026. Paid plans own their output, and free-plan output is limited to non-commercial use (15). Privacy policy, terms and security page agree that non-enterprise input can train models with an opt-out by email, and differ on the entity name (HeyGen Technology Inc. and HeyGen, Inc.). No retention period for voice or speech data (12 of 30). Dated deprecation notices in the changelog, such as the v1 and v2 sunset on 31 October 2026, and no notice yet for this model (15 of 20). Subprocessors are listed on the security portal, which was not read, and the privacy policy says data may be processed in the United States (10 of 20). Total 52.\n\nFix list for a coding agent, everything this grade says the listing lacks, the biggest gain first (14 items): https://www.anchorterminal.com/fixes/heygen-voice.md (JSON https://www.anchorterminal.com/fixes/heygen-voice.json)\n\n### What we couldn't check\n\n- unchecked: the self-serve API pricing modal at app.heygen.com/developers/api, which needs a login. The dollar value of an API credit is inferred from the OpenAPI example of 9/60 credit for $0.15.\n- unchecked: whether the web Free plan or OAuth credits can call the HeyGen Voice speech endpoints.\n- unchecked: the subprocessor list and SOC 2 report on security.heygen.com.\n- The claim that HeyGen Voice leads a text-to-speech arena came from a social media post. No first-hand page with the ranking was read, and the listing does not state it.\n- No release day for either mode. The changelog dates them by month only.\n- No authenticated call was made, so latency, the Turbo model and the streaming format are as documented, not measured.\n\n### Sources\n\n- HeyGen Voice model page, modes, endpoints and pricing: \u003chttps://developers.heygen.com/docs/models/heygen-voice\u003e (seen 2026-10-10)\n- Text to Speech page, parameters, streaming format, limits and errors: \u003chttps://developers.heygen.com/docs/voices/heygen-voice-speech\u003e (seen 2026-10-10)\n- Instant Voice Clone page, recording rules and languages: \u003chttps://developers.heygen.com/docs/voices/heygen-voice-instant-clone\u003e (seen 2026-10-10)\n- OpenAPI file, schemas, per-character price, scopes and retry notes: \u003chttps://developers.heygen.com/openapi/external-api.json\u003e (seen 2026-10-10)\n- Developer llms.txt: \u003chttps://developers.heygen.com/llms.txt\u003e (seen 2026-10-10)\n- API changelog: \u003chttps://developers.heygen.com/changelog\u003e (seen 2026-10-10)\n- Usage limits, rate limits and 429 headers: \u003chttps://developers.heygen.com/docs/usage-limits\u003e (seen 2026-10-10)\n- API key permission scopes: \u003chttps://developers.heygen.com/docs/api-key-permissions\u003e (seen 2026-10-10)\n- Stripe Projects provisioning: \u003chttps://developers.heygen.com/docs/stripe-projects\u003e (seen 2026-10-10)\n- Status page incidents feed: \u003chttps://status.heygen.com/api/v2/incidents.json\u003e (seen 2026-10-10)\n- Privacy policy, training and retention: \u003chttps://www.heygen.com/privacy\u003e (seen 2026-10-10)\n- Terms of Service, ownership, training licence and warranty: \u003chttps://www.heygen.com/terms\u003e (seen 2026-10-10)\n- Security page, SOC 2, disclosure policy and training exclusion: \u003chttps://www.heygen.com/security\u003e (seen 2026-10-10)\n- security.txt: \u003chttps://www.heygen.com/.well-known/security.txt\u003e (seen 2026-10-10)\n\n## Who's behind it (provenance 85/100, checked 2026-10-10)\n\n| Check | Finding | Points |\n| --- | --- | --- |\n| Legal entity named | HeyGen Technology, Inc. | 20/20 |\n| Domain age | heygen.com, no registry record we could read | 0/15 |\n| Endpoint on the vendor's domain | api.heygen.com | 15/15 |\n| Terms of service | published | 10/10 |\n| Privacy policy | published | 10/10 |\n| Status page | status.heygen.com | 10/10 |\n| Changelog | published | 10/10 |\n| security.txt | valid | 10/10 |\n\nsecurity.txt at www.heygen.com/.well-known/security.txt names security@heygen.com and expires on 31 December 2026.\n\nThe privacy policy names HeyGen Technology Inc. in section 1 and HeyGen, Inc. as processor in section 15.\n\nThe status page has components per domain (www, app, api) and none for voice.\n\nDomain registration date was not checked.\n\n### Terms and privacy, as read\n\nA reading by a fixed set of rules, each answered with the vendor's own sentence. Not legal advice.\n\n**Terms of service** (https://www.heygen.com/terms), not read yet.\n\n\n**Privacy policy** (https://www.heygen.com/privacy), not read yet.\n\n\n## Live (updated 2026-10-11 02:46 UTC)\n\n- Right now: up, HTTP 404, 308 ms, checked 2026-10-11 02:46 UTC (get on `https://api.heygen.com`)\n- Uptime 24h 100.0% (30 probes) · 30 days 100.0% (30 probes) · p50 301 ms · p95 320 ms\n- Vendor status page: none, All Systems Operational\n- Always current: https://www.anchorterminal.com/api/v1/live/heygen-voice.json\n\n## Probe metrics\n\nNot measured yet. Our benchmark probes haven't run, so there's no availability, latency or error rate from a run and Performance is pending. Live uptime, where we poll the endpoint, is under Live and doesn't change the score.\n\n## Prices\n\n| Item | Price | Unit | Note |\n| --- | --- | --- | --- |\n| Instant-voice speech | $15 | per 1M characters | Submitted Unicode characters, including spaces. Successful requests only. |\n| Professional-voice speech | $0.60 | per minute of audio | 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. |\n\nAcross all listings: https://www.anchorterminal.com/prices/index.md\n\n## Strengths\n\n- OpenAPI 3.1 file with enums, ranges, `additionalProperties: false` and per-code errors for every speech and voice endpoint\n- Streaming over Server-Sent Events, with optional character-level timestamps\n- Instant-voice speech priced at $15 per million characters without a login, and failed or disconnected requests are not charged\n- API keys can be restricted to read and write scopes, and the speech endpoints need voices:write\n- Instant voices are created from one recording, usually ready within seconds, in 39 base languages\n\n## Weaknesses\n\n- Speaks only voices cloned in the caller's workspace. Stock and designed voices go through a separate endpoint and engines\n- 30 requests a minute per workspace member on the speech endpoints, on every plan\n- Output is a 44.1 kHz mono WAV only, and text is capped at 5,000 characters a request\n- HeyGen's privacy policy allows training on user input, with an opt-out by email. Enterprise data is excluded by default\n- No official SDK, no free API allowance and no SLA in the terms\n\n## Before you call it (notes for agents)\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## Connect\n\nFirst request:\n\n```bash\ncurl -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}'\n```\n\n## Similar tools\n\nRanked by shared capabilities, then score. Same-category tools with no shared capability key are listed last.\n\n| Tool | Grade | Score | Rank | Shared capabilities | x402 | Markdown |\n| --- | --- | --- | --- | --- | --- | --- |\n| Fish Audio TTS API | C | 60.7 | 505 | speech.tts, speech.streaming, speech.languages, voice.clone | no | https://www.anchorterminal.com/tools/fish-audio-tts.md |\n| Amazon Polly | BB | 75.6 | 43 | speech.tts, speech.streaming, speech.languages | no | https://www.anchorterminal.com/tools/amazon-polly.md |\n| ElevenLabs Text to Speech API + MCP | BB | 75.2 | 53 | speech.tts, speech.streaming, speech.languages | no | https://www.anchorterminal.com/tools/elevenlabs-tts.md |\n| Deepgram Text-to-Speech (Aura-2, Flux TTS) | BB | 72.7 | 100 | speech.tts, speech.streaming, speech.languages | no | https://www.anchorterminal.com/tools/deepgram-tts.md |\n| Azure AI Speech text-to-speech | BB | 71.4 | 125 | speech.tts, speech.streaming, speech.languages | no | https://www.anchorterminal.com/tools/azure-text-to-speech.md |\n| Murf TTS API + MCP | BB | 70.6 | 150 | speech.tts, speech.streaming, speech.languages | no | https://www.anchorterminal.com/tools/murf-tts.md |\n\n## Panel reviews (0)\n\nReviewed by the Anchor panel (https://www.anchorterminal.com/reviewers/index.md): .\n\nDesk reviews, written from public documentation, pricing, terms, source and status history on 1 October 2026. No calls made. For a desk review, the outcome says whether the reviewer's questions could be answered from public material: success, partial or failure. How reviews work: https://www.anchorterminal.com/reviews/how-it-works.md\n\n## Notable\n\n- HeyGen's changelog dates professional voice cloning on the HeyGen Voice model to September 2026 and instant voices with the text-to-speech endpoints to October 2026, without day dates (source: \u003chttps://developers.heygen.com/changelog\u003e)\n- The OpenAPI file lists two model values, heygen-voice-1 and heygen-voice-1-turbo. Turbo speaks instant voices at lower latency and refuses professional voices. The changelog and the model page do not mention Turbo (source: \u003chttps://developers.heygen.com/openapi/external-api.json\u003e)\n- Instant-voice speech costs $15 per million submitted Unicode characters, and failed or disconnected streams are not charged, per the OpenAPI descriptions of POST /v3/models/audio/tts and /tts/stream (source: \u003chttps://developers.heygen.com/openapi/external-api.json\u003e)\n- The text-to-speech endpoints allow 30 requests a minute per workspace member on every plan, and a 429 carries Retry-After and X-RateLimit headers (source: \u003chttps://developers.heygen.com/docs/usage-limits\u003e)\n- Catalogue voices are spoken by a separate endpoint, POST /v3/voices/speech, with Orca, Starfish or ElevenLabs engines. HeyGen Voice clones are not used there (source: \u003chttps://developers.heygen.com/docs/voices/speech\u003e)\n- HeyGen's privacy policy (11 August 2026) says user input may be used to train its models, with an opt-out by email, and its security page says enterprise data is excluded from training by default (source: \u003chttps://www.heygen.com/privacy and https://www.heygen.com/security\u003e)\n- A claim that HeyGen Voice leads a text-to-speech arena came from a social media post and was not confirmed on a first-hand page\n\n- #5 of 11 in 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## Compare\n\n- [Amazon Polly vs HeyGen Voice](https://www.anchorterminal.com/compare/amazon-polly-vs-heygen-voice.md): BB 75.6 vs BB 71.3\n- [Azure AI Speech text-to-speech vs HeyGen Voice](https://www.anchorterminal.com/compare/azure-text-to-speech-vs-heygen-voice.md): BB 71.4 vs BB 71.3\n- [Cartesia Sonic TTS API + MCP vs HeyGen Voice](https://www.anchorterminal.com/compare/cartesia-tts-vs-heygen-voice.md): B 63.8 vs BB 71.3\n- [Deepgram Text-to-Speech (Aura-2, Flux TTS) vs HeyGen Voice](https://www.anchorterminal.com/compare/deepgram-tts-vs-heygen-voice.md): BB 72.7 vs BB 71.3\n- [ElevenLabs Text to Speech API + MCP vs HeyGen Voice](https://www.anchorterminal.com/compare/elevenlabs-tts-vs-heygen-voice.md): BB 75.2 vs BB 71.3\n- [Fish Audio TTS API vs HeyGen Voice](https://www.anchorterminal.com/compare/fish-audio-tts-vs-heygen-voice.md): C 60.7 vs BB 71.3\n- [HeyGen Voice vs Murf TTS API + MCP](https://www.anchorterminal.com/compare/heygen-voice-vs-murf-tts.md): BB 71.3 vs BB 70.6\n- [HeyGen Voice vs PlayHT Text-to-Speech API](https://www.anchorterminal.com/compare/heygen-voice-vs-playht-tts.md): BB 71.3 vs F 3.9\n- [HeyGen Voice vs Resemble AI Text-to-Speech API](https://www.anchorterminal.com/compare/heygen-voice-vs-resemble-ai-tts.md): BB 71.3 vs D 50.3\n- [HeyGen Voice vs Rime TTS API + MCP](https://www.anchorterminal.com/compare/heygen-voice-vs-rime-tts.md): BB 71.3 vs C 55.8\n- [HeyGen Voice vs Soniox Text-to-Speech](https://www.anchorterminal.com/compare/heygen-voice-vs-soniox-tts.md): BB 71.3 vs B 63.7\n\n## Verify this listing\n\nFor the vendor. The badge or a plain link to this page verifies the listing, from a page on heygen.com or one of its subdomains. It shows the listing is the vendor's and that the vendor knows it's here, and it never changes a grade, rank or review. The vendor sends the page's address to `POST https://www.anchorterminal.com/api/v1/verify` as `{\"slug\": \"heygen-voice\", \"url\": \"…\"}`, or calls the `verify_listing` tool at https://www.anchorterminal.com/mcp. We fetch the page once, then again every week; two failed checks in a row and the verification lapses, and a later pass restores it. What we check: https://www.anchorterminal.com/builders/index.md#verify\n\nHTML badge:\n\n```html\n\u003ca href=\"https://www.anchorterminal.com/tools/heygen-voice\"\u003e\u003cimg src=\"https://www.anchorterminal.com/badges/heygen-voice.svg\" alt=\"HeyGen Voice on Anchor Terminal\" height=\"20\"\u003e\u003c/a\u003e\n```\n\nMarkdown badge, for a README:\n\n```markdown\n[![HeyGen Voice on Anchor Terminal](https://www.anchorterminal.com/badges/heygen-voice.svg)](https://www.anchorterminal.com/tools/heygen-voice)\n```\n\nPlain link:\n\n```html\n\u003ca href=\"https://www.anchorterminal.com/tools/heygen-voice\"\u003eHeyGen Voice on Anchor Terminal\u003c/a\u003e\n```\n\n## Share this listing\n\nFor the vendor. Sharing assets for social media, two PNGs of 1200 × 630 that say HeyGen Voice is listed on Anchor Terminal, with the vendor's logo and this page's address and no grade or score.\n\n- Dark: https://www.anchorterminal.com/assets/share/heygen-voice-dark.png\n- Light: https://www.anchorterminal.com/assets/share/heygen-voice-light.png\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": "Terminal",
        "url": "https://www.anchorterminal.com/tools/"
      },
      {
        "name": "Text-to-speech",
        "url": "https://www.anchorterminal.com/categories/text-to-speech"
      },
      {
        "name": "HeyGen Voice",
        "url": ""
      }
    ],
    "description": "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.",
    "facts": [
      "rank #131 of 961",
      "API key auth",
      "0 desk reviews"
    ],
    "h1": "HeyGen Voice",
    "image": "https://www.anchorterminal.com/assets/og/tools-heygen-voice.png",
    "path": "/tools/heygen-voice",
    "published": "2026-10-01",
    "section": "tools",
    "title": "HeyGen Voice review (2026): pricing, alternatives and grade BB",
    "toc": null,
    "updated": "2026-10-11",
    "url": "https://www.anchorterminal.com/tools/heygen-voice"
  },
  "tokens": {
    "markdown": 6450,
    "slim": 1780
  },
  "version": 1
}
