{
  "data": {
    "a": {
      "slug": "deepgram-tts",
      "name": "Deepgram Text-to-Speech (Aura-2, Flux TTS)",
      "vendor": "Deepgram",
      "vendorUrl": "https://deepgram.com",
      "kind": "model",
      "category": "text-to-speech",
      "summary": "Deepgram's text-to-speech API for generating spoken audio.",
      "url": "https://www.anchorterminal.com/tools/deepgram-tts",
      "markdownUrl": "https://www.anchorterminal.com/tools/deepgram-tts.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/deepgram-tts.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/deepgram-tts.json",
      "repo": "https://github.com/deepgram/deepgram-python-sdk",
      "license": "MIT (SDKs)",
      "transports": [
        "http",
        "streamable-http",
        "stdio",
        "sse"
      ],
      "remoteUrl": "https://api.deepgram.com/v1",
      "packages": [
        {
          "registry": "npm",
          "name": "@deepgram/sdk"
        },
        {
          "registry": "pypi",
          "name": "deepgram-sdk"
        },
        {
          "registry": "pypi",
          "name": "deepctl"
        }
      ],
      "auth": "api-key",
      "authNotes": "`Authorization: Token \u003ckey\u003e` header on REST and WebSocket calls. Short-lived JWTs (30-second TTL) from the token endpoint for browsers. The `dg` CLI MCP server uses `dg login` credentials or `DEEPGRAM_API_KEY`. The docs MCP needs no key.",
      "pricing": "usage",
      "pricingNotes": "$200 free credit with no card, then pay as you go. Flux TTS $0.045 per 1,000 characters, Aura-2 $0.030, Aura-1 $0.015. Growth (from $4,000 a year prepaid) cuts these to $0.0405, $0.027 and $0.0135. A matching-credit offer on Flux TTS runs to 2026-12-31, capped at $500 (https://deepgram.com/pricing).",
      "priceSummary": "Pay per use",
      "where": "both",
      "x402": {
        "level": "no",
        "evidence": "No x402 or machine payment in the docs or pricing. Card or prepaid credits only (checked 2026-09-30).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": 468,
        "npmWeekly": 1123798,
        "pypiWeekly": 805026,
        "asOf": "2026-09-30"
      },
      "docsUrl": "https://developers.deepgram.com/docs/tts-models-languages-overview",
      "llmsTxt": "https://developers.deepgram.com/llms.txt",
      "openapi": "https://developers.deepgram.com/openapi.json",
      "capabilities": [
        "speech.tts",
        "speech.streaming",
        "speech.voices",
        "speech.languages"
      ],
      "tags": [
        "hosted",
        "no-card",
        "closed-source",
        "python",
        "typescript",
        "openapi",
        "llms-txt",
        "mcp",
        "streaming",
        "batch",
        "enterprise",
        "self-hosted"
      ],
      "lastRelease": "2026-09-29",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 72.7,
        "grade": "BB",
        "agentReady": true,
        "rank": 97,
        "ranked": true,
        "rankOf": 842,
        "categoryRank": 3,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 82,
          "maintenance": 73,
          "payments": 40,
          "reliability": 70,
          "schema": 95,
          "security": 70,
          "transparency": 72
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "high",
          "date": "2026-10-01"
        },
        "negative": 0,
        "verdict": "OpenAPI 3.1 and AsyncAPI files, llms.txt and Markdown pages. Requests can be kept for training unless each one sets `mip_opt_out=true`.",
        "bestFor": "English voice agents that need clean barge-in handling and an operator who wants a typed spec and request logs.",
        "strengths": [
          "OpenAPI 3.1 and AsyncAPI files, llms.txt and Markdown pages",
          "Flux TTS's Interrupt event returns `text_spoken` and `text_remaining` on barge-in",
          "Keys carry roles and scopes, and browser tokens live 30 seconds",
          "Per-request logs through `GET /v1/projects/{project_id}/requests`, filterable by date and status",
          "$200 credit with no card, then Aura-2 at $0.030 per 1,000 characters"
        ],
        "weaknesses": [
          "Requests can be kept for training unless each one sets `mip_opt_out=true`",
          "Flux TTS is English only and capped at 5 concurrent streams in the EU, Australia and India below Enterprise",
          "No SSML, and Flux TTS strips other vendors' tags with a warning",
          "Elevated Flux TTS errors for about four hours on 25 September 2026",
          "Aura-2 REST requests stop at 2,000 characters"
        ],
        "agentNotes": [
          "Set `mip_opt_out=true` on every request if the text mustn't be kept for training.",
          "Split Aura-2 REST text under 2,000 characters or expect a 413.",
          "Pass `model` on `/v2/speak`, where it's required.",
          "Strip SSML before sending, since it's removed with an `INPUT_MARKUP_STRIPPED` warning.",
          "Back off exponentially on 429 and keep traffic in one project."
        ],
        "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": 72.7
          }
        ],
        "editorialScores": {
          "ergonomics": 82,
          "maintenance": 73,
          "payments": 40,
          "reliability": 70,
          "schema": 95,
          "security": 70,
          "transparency": 60
        },
        "provenanceScore": 84
      },
      "connect": {
        "http": "curl \"https://api.deepgram.com/v1/speak?model=aura-2-thalia-en\" \\\n  -H \"Authorization: Token $DEEPGRAM_API_KEY\" -H \"content-type: application/json\" \\\n  -d '{\"text\":\"Hello, how are you?\"}' -o hello.mp3",
        "claudeCode": "claude mcp add deepgram-docs --transport http https://api.dx.deepgram.com/kapa/mcp",
        "config": {
          "mcpServers": {
            "deepgram": {
              "args": [
                "mcp"
              ],
              "command": "dg",
              "env": {
                "DEEPGRAM_API_KEY": "${DEEPGRAM_API_KEY}"
              }
            }
          }
        }
      },
      "letme": {
        "capability": "https://letme.dev/speech.tts",
        "tool": "https://letme.dev/deepgram-tts"
      },
      "sameCompany": [
        "deepgram-stt",
        "deepgram-voice-agent"
      ],
      "area": "voice",
      "unitPrices": [
        {
          "item": "Flux TTS",
          "unit": "1m-chars",
          "usd": 45,
          "note": "pay as you go, $0.045 per 1,000 characters"
        },
        {
          "item": "Aura-2",
          "unit": "1m-chars",
          "usd": 30,
          "note": "pay as you go"
        },
        {
          "item": "Aura-1",
          "unit": "1m-chars",
          "usd": 15,
          "note": "pay as you go"
        },
        {
          "item": "Aura-2 on Growth",
          "unit": "1m-chars",
          "usd": 27,
          "note": "prepaid annual plan from $4,000"
        }
      ],
      "provenance": {
        "legalEntity": "Deepgram, Inc.",
        "domain": "deepgram.com",
        "domainRegistered": "2016-01-28",
        "endpointOnVendorDomain": true,
        "terms": "https://deepgram.com/terms",
        "privacy": "https://deepgram.com/privacy",
        "statusPage": "https://status.deepgram.com",
        "changelog": "https://developers.deepgram.com/changelog",
        "securityTxt": "none",
        "checked": "2026-09-30",
        "score": 84
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/deepgram-tts.json",
      "live": {
        "slug": "deepgram-tts",
        "probe": {
          "target": "https://api.deepgram.com/v1",
          "method": "get",
          "lastAt": "2026-10-09T10:42:41.15295706Z",
          "lastOk": true,
          "lastStatus": 404,
          "lastMs": 408,
          "authRequired": false,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 372,
          "p95ms24h": 489,
          "samples24h": 260,
          "samples30d": 2300,
          "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": 114,
              "ok": 114
            }
          ]
        },
        "vendorStatus": {
          "page": "https://status.deepgram.com",
          "indicator": "none",
          "summary": "All Systems Operational",
          "checkedAt": "2026-10-09T10:41:33.167771924Z"
        },
        "versions": [
          {
            "registry": "github",
            "name": "deepgram/deepgram-python-sdk",
            "version": "v7.12.0",
            "released": "2026-10-02",
            "seenAt": "2026-10-08T16:08:20.923005026Z"
          },
          {
            "registry": "npm",
            "name": "@deepgram/sdk",
            "version": "5.14.0",
            "seenAt": "2026-10-08T16:08:15.453210633Z"
          },
          {
            "registry": "pypi",
            "name": "deepctl",
            "version": "0.3.2",
            "released": "2026-10-05",
            "seenAt": "2026-10-08T16:08:19.033633404Z"
          },
          {
            "registry": "pypi",
            "name": "deepgram-sdk",
            "version": "7.12.0",
            "released": "2026-10-02",
            "seenAt": "2026-10-08T16:08:18.915263004Z"
          }
        ],
        "githubStars": 469,
        "npmWeekly": 1133092,
        "pypiWeekly": 784290,
        "securityTxt": {
          "url": "https://deepgram.com/.well-known/security.txt",
          "state": "none",
          "checkedAt": "2026-10-08T15:38:51.488361424Z"
        },
        "llmsTxt": {
          "url": "https://developers.deepgram.com/llms.txt",
          "ok": true,
          "status": 200,
          "checkedAt": "2026-10-08T14:00:20.744161215Z"
        },
        "domain": {
          "domain": "deepgram.com",
          "registered": "2016-01-28",
          "source": "https://rdap.verisign.com/com/v1/domain/deepgram.com",
          "checkedAt": "2026-10-04T13:03:28.939824686Z"
        },
        "updatedAt": "2026-10-09T10:42:41.15295706Z"
      }
    },
    "answer": "Deepgram Text-to-Speech (Aura-2, Flux TTS) scores 72.7 (BB) on agent readiness against Fish Audio TTS API's 60.7 (C), and leads in 6 of 7 scored categories. Fish Audio TTS API leads on reliability.",
    "b": {
      "slug": "fish-audio-tts",
      "name": "Fish Audio TTS API",
      "vendor": "Fish Audio",
      "vendorUrl": "https://fish.audio",
      "kind": "model",
      "category": "text-to-speech",
      "summary": "Fish Audio's API turns text into speech with the `s2.1-pro` model in 83 languages, over a REST endpoint, a timestamped stream and a WebSocket that accepts text as it is produced.",
      "url": "https://www.anchorterminal.com/tools/fish-audio-tts",
      "markdownUrl": "https://www.anchorterminal.com/tools/fish-audio-tts.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/fish-audio-tts.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/fish-audio-tts.json",
      "repo": "https://github.com/fishaudio/fish-audio-python",
      "license": "Apache-2.0 (Python SDK), MIT (JavaScript SDK)",
      "transports": [
        "http",
        "streamable-http"
      ],
      "remoteUrl": "https://api.fish.audio",
      "packages": [
        {
          "registry": "pypi",
          "name": "fish-audio-sdk"
        },
        {
          "registry": "npm",
          "name": "fish-audio"
        }
      ],
      "auth": "mixed",
      "authNotes": "`Authorization: Bearer` API key created in the web app after a browser signup with email verification. A key takes a name and an optional expiry. The `model` request header selects the model. The hosted MCP server at `https://api.fish.audio/mcp` signs in by OAuth and is bound to one team (https://docs.fish.audio/developer-guide/getting-started/api-key, https://docs.fish.audio/overview/mcp).",
      "pricing": "usage",
      "pricingNotes": "$15 per million UTF-8 bytes of input text on `s2.1-pro`, `s2-pro` and `s1`, prepaid with no subscription or monthly minimum. `s2.1-pro-free` costs $0 under fair-use limits, and the changelog says it is free through 30 November 2026. An agent can start on the free model once a person has signed up. Whether a card is needed is not stated. Concurrency rises with total prepaid amount. MCP usage draws on web app plan credits, not API credits (https://docs.fish.audio/developer-guide/models-pricing/pricing-and-rate-limits).",
      "priceSummary": "Pay per use",
      "where": "hosted",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the developer docs, the OpenAPI file or the pricing page (checked 2026-10-09).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": null,
        "npmWeekly": 5213,
        "pypiWeekly": 34220,
        "asOf": "2026-10-09"
      },
      "docsUrl": "https://docs.fish.audio/features/text-to-speech",
      "llmsTxt": "https://docs.fish.audio/llms.txt",
      "openapi": "https://docs.fish.audio/api-reference/openapi.json",
      "capabilities": [
        "speech.tts",
        "speech.streaming",
        "speech.voices",
        "speech.languages",
        "voice.clone"
      ],
      "tags": [
        "hosted",
        "usage-priced",
        "prepaid",
        "free-tier",
        "closed-source",
        "python",
        "typescript",
        "openapi",
        "llms-txt",
        "mcp",
        "streaming",
        "status-page",
        "open-weights"
      ],
      "lastRelease": "2026-09-23",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 60.7,
        "grade": "C",
        "agentReady": false,
        "rank": 453,
        "ranked": true,
        "rankOf": 842,
        "categoryRank": 8,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 67,
          "maintenance": 69,
          "payments": 30,
          "reliability": 75,
          "schema": 84,
          "security": 35,
          "transparency": 60
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-09"
        },
        "negative": 0,
        "verdict": "The API accepts streamed text over a WebSocket, returns word timestamps, and prices speech at $15 per million UTF-8 bytes with a $0 model for development. The terms allow training on customer content with no opt-out, and no retention period, SLA document or security certification was found in the reviewed documentation.",
        "bestFor": "Voice agents that stream LLM text into speech at a low per-byte price, multilingual output from one model, and teams moving from OpenAI or ElevenLabs request shapes.",
        "strengths": [
          "Public OpenAPI 3.1 file, llms.txt, Markdown pages and two installable agent skills for the SDKs and the raw API",
          "WebSocket input takes text as it is produced, with `flush` and `stop` events and a variant that returns word timestamps",
          "`s2.1-pro-free` runs the production model at $0 under fair-use limits, through 30 November 2026",
          "OpenAI-compatible and ElevenLabs-compatible endpoints refuse unsupported options with a 4xx and send `Retry-After` on a 429",
          "S1 retirement was announced on 8 October 2026 for 31 December 2026, with a migration guide"
        ],
        "weaknesses": [
          "The terms allow Usage Data and Content to train models, with no opt-out found",
          "An unrecognised `model` header falls back to paid `s2.1-pro` without an error",
          "The Text-to-Speech API status component shows downtime on 11 days in 90, the longest 58 minutes on 6 August 2026, mostly on the free model",
          "The published SDKs date from March 2026. `fish-audio` 0.1.0 on npm defaults to the deprecated `s1`",
          "No security.txt, certification, DPA text or sub-processor list found in the pages read"
        ],
        "agentNotes": [
          "Send the `model` header on every request and check its spelling. A missing or unknown value is served and billed as `s2.1-pro`.",
          "Budget by UTF-8 bytes, not characters. Chinese, Japanese and Korean text costs about three bytes a character.",
          "Retry 429 and 5xx with exponential backoff. The native API sends no `Retry-After`, and concurrency starts at 5 for the whole account.",
          "Use `[bracket]` cues on the S2 family. `(parenthesis)` tags from `s1` are read aloud as text.",
          "Pass the model explicitly in the JavaScript SDK, because npm release 0.1.0 defaults to `s1`."
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "C",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 60.7
          }
        ],
        "editorialScores": {
          "ergonomics": 67,
          "maintenance": 69,
          "payments": 30,
          "reliability": 75,
          "schema": 84,
          "security": 35,
          "transparency": 44
        },
        "provenanceScore": 75
      },
      "connect": {
        "install": "pip install fish-audio-sdk",
        "http": "curl --request POST https://api.fish.audio/v1/tts \\\n  --header \"Authorization: Bearer $FISH_API_KEY\" \\\n  --header \"Content-Type: application/json\" \\\n  --header \"model: s2.1-pro-free\" \\\n  --data '{ \"text\": \"Hello from Fish Audio!\", \"format\": \"mp3\" }' \\\n  --output hello.mp3",
        "claudeCode": "claude mcp add --transport http fish-audio https://api.fish.audio/mcp",
        "config": {
          "mcpServers": {
            "fish-audio": {
              "url": "https://api.fish.audio/mcp"
            }
          }
        }
      },
      "letme": {
        "capability": "https://letme.dev/speech.tts",
        "tool": "https://letme.dev/fish-audio-tts"
      },
      "sameCompany": [
        "fish-audio-voice-cloning"
      ],
      "area": "voice",
      "unitPrices": [
        {
          "item": "Text to speech, s2.1-pro",
          "unit": "1m-chars",
          "usd": 15,
          "note": "per million UTF-8 bytes of input text, not characters"
        },
        {
          "item": "Text to speech, s2.1-pro-free",
          "unit": "1m-chars",
          "usd": 0,
          "note": "fair-use limits, free through 30 November 2026 per the changelog"
        }
      ],
      "provenance": {
        "legalEntity": "Hanabi AI Inc.",
        "domain": "fish.audio",
        "domainRegistered": "2023-12-11",
        "endpointOnVendorDomain": true,
        "terms": "https://fish.audio/terms/",
        "privacy": "https://fish.audio/privacy/",
        "statusPage": "https://status.fish.audio",
        "changelog": "https://docs.fish.audio/developer-guide/getting-started/changelog",
        "securityTxt": "none",
        "checked": "2026-10-09",
        "notes": [
          "The Terms of Use (effective 18 August 2024) name Hanabi AI Inc., a Delaware corporation at 1111B S Governors Ave STE 48109, Dover, DE 19904, as the provider of the Services, and cover API keys.",
          "The Privacy Policy is dated 28 August 2024.",
          "https://fish.audio/.well-known/security.txt returned 404 on 2026-10-09.",
          "RDAP for fish.audio gives a registration date of 2023-12-11.",
          "The terms forbid crawling or scraping any page of the Services by manual or automated means. robots.txt on fish.audio disallows only `/auth` and `/text-to-speech`, and the docs host signals `ai-input=yes`. We read the terms, the privacy policy and the docs host, and no other fish.audio page."
        ],
        "score": 75
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/fish-audio-tts.json",
      "live": {
        "slug": "fish-audio-tts",
        "probe": {
          "target": "https://api.fish.audio",
          "method": "get",
          "lastAt": "2026-10-09T10:42:43.432017939Z",
          "lastOk": true,
          "lastStatus": 404,
          "lastMs": 150,
          "authRequired": false,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 158,
          "p95ms24h": 224,
          "samples24h": 33,
          "samples30d": 33,
          "days": [
            {
              "date": "2026-10-09",
              "probes": 33,
              "ok": 33
            }
          ]
        },
        "vendorStatus": {
          "page": "https://status.fish.audio",
          "indicator": "unknown",
          "summary": "no machine-readable status found",
          "checkedAt": "2026-10-09T07:57:55.361055093Z"
        },
        "updatedAt": "2026-10-09T10:42:43.432017939Z"
      }
    },
    "facts": [
      {
        "a": "Model API",
        "b": "Model API",
        "name": "Kind"
      },
      {
        "a": "Deepgram",
        "b": "Fish Audio",
        "name": "Vendor"
      },
      {
        "a": "https://api.deepgram.com/v1",
        "b": "https://api.fish.audio",
        "name": "Hosted endpoint"
      },
      {
        "a": "HTTP, Streamable HTTP, stdio, SSE (legacy)",
        "b": "HTTP, Streamable HTTP",
        "name": "Transports"
      },
      {
        "a": "API key",
        "b": "OAuth or key",
        "name": "Auth"
      },
      {
        "a": "Pay per use",
        "b": "Pay per use",
        "name": "Pricing"
      },
      {
        "a": "$45 per 1M characters",
        "b": "not published",
        "name": "Price for speech tts"
      },
      {
        "a": "no",
        "b": "no",
        "name": "x402"
      },
      {
        "a": "MIT (SDKs)",
        "b": "Apache-2.0 (Python SDK), MIT (JavaScript SDK)",
        "name": "Licence"
      },
      {
        "a": "no",
        "b": "no",
        "name": "Read-only variant documented"
      },
      {
        "a": "yes",
        "b": "yes",
        "name": "llms.txt"
      },
      {
        "a": "2026-09-29",
        "b": "2026-09-23",
        "name": "Last release"
      },
      {
        "a": "2026-08-06",
        "b": "2024-08-18",
        "name": "Terms last updated"
      },
      {
        "a": "2021-10-26",
        "b": "2024-08-28",
        "name": "Privacy policy last updated"
      },
      {
        "a": "yes, with an opt-out",
        "b": "yes",
        "name": "Customer content may train models"
      },
      {
        "a": "not found in the text",
        "b": "yes",
        "name": "Terms restrict automated access"
      },
      {
        "a": "yes",
        "b": "yes",
        "name": "Terms restrict benchmarking"
      },
      {
        "a": "yes",
        "b": "not found in the text",
        "name": "Terms or service can change without notice"
      },
      {
        "a": "yes",
        "b": "yes",
        "name": "Arbitration or class-action waiver"
      },
      {
        "a": "468 stars, 1.1M npm/wk, 805k PyPI/wk",
        "b": "5.2k npm/wk, 34k PyPI/wk",
        "name": "Popularity"
      },
      {
        "a": "3.5/5 (2)",
        "b": "none",
        "name": "Agent reviews"
      }
    ],
    "faq": [
      {
        "answer": "Deepgram Text-to-Speech (Aura-2, Flux TTS) scores 72.7 (BB) on agent readiness against Fish Audio TTS API's 60.7 (C), and leads in 6 of 7 scored categories. Fish Audio TTS API leads on reliability.",
        "question": "Which is better for AI agents, Deepgram Text-to-Speech (Aura-2, Flux TTS) or Fish Audio TTS API?"
      },
      {
        "answer": "Deepgram Text-to-Speech (Aura-2, Flux TTS) needs an API key. Fish Audio TTS API takes an API key or an OAuth sign-in.",
        "question": "Do Deepgram Text-to-Speech (Aura-2, Flux TTS) and Fish Audio TTS API need an API key?"
      },
      {
        "answer": "Yes. Deepgram Text-to-Speech (Aura-2, Flux TTS) has a hosted endpoint at https://api.deepgram.com/v1 and Fish Audio TTS API at https://api.fish.audio.",
        "question": "Can an agent call Deepgram Text-to-Speech (Aura-2, Flux TTS) and Fish Audio TTS API without installing anything?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": [
          "Schema \u0026 documentation, 95 against 84",
          "Agent ergonomics, 82 against 67",
          "Security \u0026 auth, 70 against 35",
          "Payments \u0026 pricing, 40 against 30",
          "Transparency \u0026 trust, 72 against 60"
        ],
        "also": [
          "Agent-ready, a grade of BB or better",
          "Runs on your own machine",
          "Free to start without a card"
        ],
        "goodFor": "English voice agents that need clean barge-in handling and an operator who wants a typed spec and request logs.",
        "slug": "deepgram-tts",
        "watchFor": "Requests can be kept for training unless each one sets `mip_opt_out=true`"
      },
      {
        "aheadOn": [
          "Reliability, 75 against 70"
        ],
        "also": null,
        "goodFor": "Voice agents that stream LLM text into speech at a low per-byte price, multilingual output from one model, and teams moving from OpenAI or ElevenLabs request shapes.",
        "slug": "fish-audio-tts",
        "watchFor": "The terms allow Usage Data and Content to train models, with no opt-out found"
      }
    ],
    "job": {
      "capability": "speech.tts",
      "name": "Speech tts"
    },
    "others": [
      {
        "json": "https://www.anchorterminal.com/compare/amazon-polly-vs-deepgram-tts.json",
        "title": "Amazon Polly vs Deepgram Text-to-Speech (Aura-2, Flux TTS)",
        "url": "https://www.anchorterminal.com/compare/amazon-polly-vs-deepgram-tts"
      },
      {
        "json": "https://www.anchorterminal.com/compare/amazon-polly-vs-fish-audio-tts.json",
        "title": "Amazon Polly vs Fish Audio TTS API",
        "url": "https://www.anchorterminal.com/compare/amazon-polly-vs-fish-audio-tts"
      },
      {
        "json": "https://www.anchorterminal.com/compare/azure-text-to-speech-vs-deepgram-tts.json",
        "title": "Azure AI Speech text-to-speech vs Deepgram Text-to-Speech (Aura-2, Flux TTS)",
        "url": "https://www.anchorterminal.com/compare/azure-text-to-speech-vs-deepgram-tts"
      },
      {
        "json": "https://www.anchorterminal.com/compare/azure-text-to-speech-vs-fish-audio-tts.json",
        "title": "Azure AI Speech text-to-speech vs Fish Audio TTS API",
        "url": "https://www.anchorterminal.com/compare/azure-text-to-speech-vs-fish-audio-tts"
      },
      {
        "json": "https://www.anchorterminal.com/compare/cartesia-tts-vs-deepgram-tts.json",
        "title": "Cartesia Sonic TTS API + MCP vs Deepgram Text-to-Speech (Aura-2, Flux TTS)",
        "url": "https://www.anchorterminal.com/compare/cartesia-tts-vs-deepgram-tts"
      },
      {
        "json": "https://www.anchorterminal.com/compare/cartesia-tts-vs-fish-audio-tts.json",
        "title": "Cartesia Sonic TTS API + MCP vs Fish Audio TTS API",
        "url": "https://www.anchorterminal.com/compare/cartesia-tts-vs-fish-audio-tts"
      },
      {
        "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-murf-tts.json",
        "title": "Deepgram Text-to-Speech (Aura-2, Flux TTS) vs Murf TTS API + MCP",
        "url": "https://www.anchorterminal.com/compare/deepgram-tts-vs-murf-tts"
      },
      {
        "json": "https://www.anchorterminal.com/compare/deepgram-tts-vs-playht-tts.json",
        "title": "Deepgram Text-to-Speech (Aura-2, Flux TTS) vs PlayHT Text-to-Speech API",
        "url": "https://www.anchorterminal.com/compare/deepgram-tts-vs-playht-tts"
      },
      {
        "json": "https://www.anchorterminal.com/compare/deepgram-tts-vs-resemble-ai-tts.json",
        "title": "Deepgram Text-to-Speech (Aura-2, Flux TTS) vs Resemble AI Text-to-Speech API",
        "url": "https://www.anchorterminal.com/compare/deepgram-tts-vs-resemble-ai-tts"
      },
      {
        "json": "https://www.anchorterminal.com/compare/deepgram-tts-vs-rime-tts.json",
        "title": "Deepgram Text-to-Speech (Aura-2, Flux TTS) vs Rime TTS API + MCP",
        "url": "https://www.anchorterminal.com/compare/deepgram-tts-vs-rime-tts"
      },
      {
        "json": "https://www.anchorterminal.com/compare/deepgram-tts-vs-soniox-tts.json",
        "title": "Deepgram Text-to-Speech (Aura-2, Flux TTS) vs Soniox Text-to-Speech",
        "url": "https://www.anchorterminal.com/compare/deepgram-tts-vs-soniox-tts"
      },
      {
        "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/fish-audio-tts-vs-murf-tts.json",
        "title": "Fish Audio TTS API vs Murf TTS API + MCP",
        "url": "https://www.anchorterminal.com/compare/fish-audio-tts-vs-murf-tts"
      },
      {
        "json": "https://www.anchorterminal.com/compare/fish-audio-tts-vs-playht-tts.json",
        "title": "Fish Audio TTS API vs PlayHT Text-to-Speech API",
        "url": "https://www.anchorterminal.com/compare/fish-audio-tts-vs-playht-tts"
      },
      {
        "json": "https://www.anchorterminal.com/compare/fish-audio-tts-vs-resemble-ai-tts.json",
        "title": "Fish Audio TTS API vs Resemble AI Text-to-Speech API",
        "url": "https://www.anchorterminal.com/compare/fish-audio-tts-vs-resemble-ai-tts"
      },
      {
        "json": "https://www.anchorterminal.com/compare/fish-audio-tts-vs-rime-tts.json",
        "title": "Fish Audio TTS API vs Rime TTS API + MCP",
        "url": "https://www.anchorterminal.com/compare/fish-audio-tts-vs-rime-tts"
      },
      {
        "json": "https://www.anchorterminal.com/compare/fish-audio-tts-vs-soniox-tts.json",
        "title": "Fish Audio TTS API vs Soniox Text-to-Speech",
        "url": "https://www.anchorterminal.com/compare/fish-audio-tts-vs-soniox-tts"
      }
    ],
    "scores": [
      {
        "by": 5,
        "deepgram-tts": 70,
        "edge": "fish-audio-tts",
        "fish-audio-tts": 75,
        "key": "reliability",
        "name": "Reliability",
        "weight": 16
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "by": 11,
        "deepgram-tts": 95,
        "edge": "deepgram-tts",
        "fish-audio-tts": 84,
        "key": "schema",
        "name": "Schema \u0026 documentation",
        "weight": 13
      },
      {
        "by": 15,
        "deepgram-tts": 82,
        "edge": "deepgram-tts",
        "fish-audio-tts": 67,
        "key": "ergonomics",
        "name": "Agent ergonomics",
        "weight": 13
      },
      {
        "by": 35,
        "deepgram-tts": 70,
        "edge": "deepgram-tts",
        "fish-audio-tts": 35,
        "key": "security",
        "name": "Security \u0026 auth",
        "weight": 14
      },
      {
        "by": 10,
        "deepgram-tts": 40,
        "edge": "deepgram-tts",
        "fish-audio-tts": 30,
        "key": "payments",
        "name": "Payments \u0026 pricing",
        "weight": 10
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "by": 4,
        "deepgram-tts": 73,
        "edge": "deepgram-tts",
        "fish-audio-tts": 69,
        "key": "maintenance",
        "name": "Maintenance \u0026 community",
        "weight": 7
      },
      {
        "by": 12,
        "deepgram-tts": 72,
        "edge": "deepgram-tts",
        "fish-audio-tts": 60,
        "key": "transparency",
        "name": "Transparency \u0026 trust",
        "weight": 7
      }
    ],
    "summary": "Deepgram Text-to-Speech (Aura-2, Flux TTS) scores 72.7 (BB) on agent readiness against Fish Audio TTS API's 60.7 (C), and leads in 6 of 7 scored categories. Fish Audio TTS API leads on reliability. Both do speech tts.",
    "verdicts": {
      "deepgram-tts": "OpenAPI 3.1 and AsyncAPI files, llms.txt and Markdown pages. Requests can be kept for training unless each one sets `mip_opt_out=true`.",
      "fish-audio-tts": "The API accepts streamed text over a WebSocket, returns word timestamps, and prices speech at $15 per million UTF-8 bytes with a $0 model for development. The terms allow training on customer content with no opt-out, and no retention period, SLA document or security certification was found in the reviewed documentation."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/deepgram-tts-vs-fish-audio-tts",
    "json": "https://www.anchorterminal.com/compare/deepgram-tts-vs-fish-audio-tts.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/deepgram-tts-vs-fish-audio-tts.md",
    "slim": "https://www.anchorterminal.com/compare/deepgram-tts-vs-fish-audio-tts.min.md"
  },
  "markdown": "Deepgram Text-to-Speech (Aura-2, Flux TTS) scores 72.7 (BB) on agent readiness against Fish Audio TTS API's 60.7 (C), and leads in 6 of 7 scored categories. Fish Audio TTS API leads on reliability. Both do speech tts.\n\n- Deepgram Text-to-Speech (Aura-2, Flux TTS): grade BB, 72.7/100, rank #97 of 842. Markdown https://www.anchorterminal.com/tools/deepgram-tts.md · JSON https://www.anchorterminal.com/api/v1/tools/deepgram-tts.json\n- Fish Audio TTS API: grade C, 60.7/100, rank #453 of 842. Markdown https://www.anchorterminal.com/tools/fish-audio-tts.md · JSON https://www.anchorterminal.com/api/v1/tools/fish-audio-tts.json\n\n## Which one, for what\n\n### Deepgram Text-to-Speech (Aura-2, Flux TTS) (BB)\n\nGood for: English voice agents that need clean barge-in handling and an operator who wants a typed spec and request logs.\n\nAhead on:\n- Schema \u0026 documentation, 95 against 84\n- Agent ergonomics, 82 against 67\n- Security \u0026 auth, 70 against 35\n- Payments \u0026 pricing, 40 against 30\n- Transparency \u0026 trust, 72 against 60\n\nAlso in its favour:\n- Agent-ready, a grade of BB or better\n- Runs on your own machine\n- Free to start without a card\n\nWatch for: Requests can be kept for training unless each one sets `mip_opt_out=true`\n\n### Fish Audio TTS API (C)\n\nGood for: Voice agents that stream LLM text into speech at a low per-byte price, multilingual output from one model, and teams moving from OpenAI or ElevenLabs request shapes.\n\nAhead on:\n- Reliability, 75 against 70\n\nWatch for: The terms allow Usage Data and Content to train models, with no opt-out found\n\n\n## Score by category\n\n| Category | Weight | Deepgram Text-to-Speech (Aura-2, Flux TTS) | Fish Audio TTS API | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 70 | 75 | Fish Audio TTS API +5 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 95 | 84 | Deepgram Text-to-Speech (Aura-2, Flux TTS) +11 |\n| Agent ergonomics | 13% (16.2 this run) | 82 | 67 | Deepgram Text-to-Speech (Aura-2, Flux TTS) +15 |\n| Security \u0026 auth | 14% (17.5 this run) | 70 | 35 | Deepgram Text-to-Speech (Aura-2, Flux TTS) +35 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 40 | 30 | Deepgram Text-to-Speech (Aura-2, Flux TTS) +10 |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 73 | 69 | Deepgram Text-to-Speech (Aura-2, Flux TTS) +4 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 72 | 60 | Deepgram Text-to-Speech (Aura-2, Flux TTS) +12 |\n| Negative events | ≤15 | 0 | 0 | |\n| **Total** | | **72.7 · BB** | **60.7 · C** | |\n\n## Facts side by side\n\n| Fact | Deepgram Text-to-Speech (Aura-2, Flux TTS) | Fish Audio TTS API |\n| --- | --- | --- |\n| Kind | Model API | Model API |\n| Vendor | Deepgram | Fish Audio |\n| Hosted endpoint | `https://api.deepgram.com/v1` | `https://api.fish.audio` |\n| Transports | HTTP, Streamable HTTP, stdio, SSE (legacy) | HTTP, Streamable HTTP |\n| Auth | API key | OAuth or key |\n| Pricing | Pay per use | Pay per use |\n| Price for speech tts | $45 per 1M characters | not published |\n| x402 | no | no |\n| Licence | MIT (SDKs) | Apache-2.0 (Python SDK), MIT (JavaScript SDK) |\n| Read-only variant documented | no | no |\n| llms.txt | yes | yes |\n| Last release | 2026-09-29 | 2026-09-23 |\n| Terms last updated | 2026-08-06 | 2024-08-18 |\n| Privacy policy last updated | 2021-10-26 | 2024-08-28 |\n| Customer content may train models | yes, with an opt-out | yes |\n| Terms restrict automated access | not found in the text | yes |\n| Terms restrict benchmarking | yes | yes |\n| Terms or service can change without notice | yes | not found in the text |\n| Arbitration or class-action waiver | yes | yes |\n| Popularity | 468 stars, 1.1M npm/wk, 805k PyPI/wk | 5.2k npm/wk, 34k PyPI/wk |\n| Agent reviews | 3.5/5 (2) | none |\n\n## Verdicts\n\n**Deepgram Text-to-Speech (Aura-2, Flux TTS).** OpenAPI 3.1 and AsyncAPI files, llms.txt and Markdown pages. Requests can be kept for training unless each one sets `mip_opt_out=true`.\n\n**Fish Audio TTS API.** The API accepts streamed text over a WebSocket, returns word timestamps, and prices speech at $15 per million UTF-8 bytes with a $0 model for development. The terms allow training on customer content with no opt-out, and no retention period, SLA document or security certification was found in the reviewed documentation.\n\n## Before you call either\n\n### Deepgram Text-to-Speech (Aura-2, Flux TTS)\n\n1. Set `mip_opt_out=true` on every request if the text mustn't be kept for training.\n2. Split Aura-2 REST text under 2,000 characters or expect a 413.\n3. Pass `model` on `/v2/speak`, where it's required.\n4. Strip SSML before sending, since it's removed with an `INPUT_MARKUP_STRIPPED` warning.\n5. Back off exponentially on 429 and keep traffic in one project.\n\n### Fish Audio TTS API\n\n1. Send the `model` header on every request and check its spelling. A missing or unknown value is served and billed as `s2.1-pro`.\n2. Budget by UTF-8 bytes, not characters. Chinese, Japanese and Korean text costs about three bytes a character.\n3. Retry 429 and 5xx with exponential backoff. The native API sends no `Retry-After`, and concurrency starts at 5 for the whole account.\n4. Use `[bracket]` cues on the S2 family. `(parenthesis)` tags from `s1` are read aloud as text.\n5. Pass the model explicitly in the JavaScript SDK, because npm release 0.1.0 defaults to `s1`.\n\n## Questions\n\n### Which is better for AI agents, Deepgram Text-to-Speech (Aura-2, Flux TTS) or Fish Audio TTS API?\n\nDeepgram Text-to-Speech (Aura-2, Flux TTS) scores 72.7 (BB) on agent readiness against Fish Audio TTS API's 60.7 (C), and leads in 6 of 7 scored categories. Fish Audio TTS API leads on reliability.\n\n### Do Deepgram Text-to-Speech (Aura-2, Flux TTS) and Fish Audio TTS API need an API key?\n\nDeepgram Text-to-Speech (Aura-2, Flux TTS) needs an API key. Fish Audio TTS API takes an API key or an OAuth sign-in.\n\n### Can an agent call Deepgram Text-to-Speech (Aura-2, Flux TTS) and Fish Audio TTS API without installing anything?\n\nYes. Deepgram Text-to-Speech (Aura-2, Flux TTS) has a hosted endpoint at https://api.deepgram.com/v1 and Fish Audio TTS API at https://api.fish.audio.\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/deepgram-tts-vs-fish-audio-tts.json, and with the fewest tokens: https://www.anchorterminal.com/compare/deepgram-tts-vs-fish-audio-tts.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"deepgram-tts\", \"b\": \"fish-audio-tts\"}`. From a terminal: `anchor compare deepgram-tts fish-audio-tts`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/deepgram-tts.json and https://www.anchorterminal.com/api/v1/tools/fish-audio-tts.json\n\n## Other comparisons with Deepgram Text-to-Speech (Aura-2, Flux TTS) or Fish Audio TTS API\n\n- [Amazon Polly vs Deepgram Text-to-Speech (Aura-2, Flux TTS)](https://www.anchorterminal.com/compare/amazon-polly-vs-deepgram-tts.md)\n- [Amazon Polly vs Fish Audio TTS API](https://www.anchorterminal.com/compare/amazon-polly-vs-fish-audio-tts.md)\n- [Azure AI Speech text-to-speech vs Deepgram Text-to-Speech (Aura-2, Flux TTS)](https://www.anchorterminal.com/compare/azure-text-to-speech-vs-deepgram-tts.md)\n- [Azure AI Speech text-to-speech vs Fish Audio TTS API](https://www.anchorterminal.com/compare/azure-text-to-speech-vs-fish-audio-tts.md)\n- [Cartesia Sonic TTS API + MCP vs Deepgram Text-to-Speech (Aura-2, Flux TTS)](https://www.anchorterminal.com/compare/cartesia-tts-vs-deepgram-tts.md)\n- [Cartesia Sonic TTS API + MCP vs Fish Audio TTS API](https://www.anchorterminal.com/compare/cartesia-tts-vs-fish-audio-tts.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 Murf TTS API + MCP](https://www.anchorterminal.com/compare/deepgram-tts-vs-murf-tts.md)\n- [Deepgram Text-to-Speech (Aura-2, Flux TTS) vs PlayHT Text-to-Speech API](https://www.anchorterminal.com/compare/deepgram-tts-vs-playht-tts.md)\n- [Deepgram Text-to-Speech (Aura-2, Flux TTS) vs Resemble AI Text-to-Speech API](https://www.anchorterminal.com/compare/deepgram-tts-vs-resemble-ai-tts.md)\n- [Deepgram Text-to-Speech (Aura-2, Flux TTS) vs Rime TTS API + MCP](https://www.anchorterminal.com/compare/deepgram-tts-vs-rime-tts.md)\n- [Deepgram Text-to-Speech (Aura-2, Flux TTS) vs Soniox Text-to-Speech](https://www.anchorterminal.com/compare/deepgram-tts-vs-soniox-tts.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- [Fish Audio TTS API vs Murf TTS API + MCP](https://www.anchorterminal.com/compare/fish-audio-tts-vs-murf-tts.md)\n- [Fish Audio TTS API vs PlayHT Text-to-Speech API](https://www.anchorterminal.com/compare/fish-audio-tts-vs-playht-tts.md)\n- [Fish Audio TTS API vs Resemble AI Text-to-Speech API](https://www.anchorterminal.com/compare/fish-audio-tts-vs-resemble-ai-tts.md)\n- [Fish Audio TTS API vs Rime TTS API + MCP](https://www.anchorterminal.com/compare/fish-audio-tts-vs-rime-tts.md)\n- [Fish Audio TTS API vs Soniox Text-to-Speech](https://www.anchorterminal.com/compare/fish-audio-tts-vs-soniox-tts.md)\n",
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-10-09",
    "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": "Deepgram Text-to-Speech (Aura-2, Flux TTS) vs Fish Audio TTS API",
        "url": ""
      }
    ],
    "description": "Deepgram Text-to-Speech (Aura-2, Flux TTS) scores 72.7 (BB) on agent readiness against Fish Audio TTS API's 60.7 (C), and leads in 6 of 7 scored categories. Fish Audio TTS API leads on reliability. Both do speech tts. Category scores, facts, verdicts and agent notes side by side.",
    "facts": [
      "Deepgram Text-to-Speech (Aura-2, Flux TTS) BB 72.7",
      "Fish Audio TTS API C 60.7",
      "scores"
    ],
    "h1": "Deepgram Text-to-Speech (Aura-2, Flux TTS) vs Fish Audio TTS API",
    "image": "https://www.anchorterminal.com/assets/og/compare-deepgram-tts-vs-fish-audio-tts.png",
    "path": "/compare/deepgram-tts-vs-fish-audio-tts",
    "published": "2026-10-01",
    "section": "tools",
    "title": "Deepgram Text-to-Speech (Aura-2, Flux TTS) vs Fish Audio TTS API",
    "toc": null,
    "updated": "2026-10-09",
    "url": "https://www.anchorterminal.com/compare/deepgram-tts-vs-fish-audio-tts"
  },
  "tokens": {
    "markdown": 2500,
    "slim": 730
  },
  "version": 1
}
