# Fish Audio TTS API > 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. - Canonical: https://www.anchorterminal.com/tools/fish-audio-tts - Markdown: https://www.anchorterminal.com/tools/fish-audio-tts.md (~7,800 tokens) - Slim: https://www.anchorterminal.com/tools/fish-audio-tts.min.md (~1,680 tokens, same facts, less prose, for token-sensitive contexts) - JSON: https://www.anchorterminal.com/tools/fish-audio-tts.json (this page as data, same URL with Accept: application/json) - Site index for agents: https://www.anchorterminal.com/llms.txt (full text: https://www.anchorterminal.com/llms-full.txt) - API: https://www.anchorterminal.com/api/v1/index.json - Updated: 2026-10-09 ## Overview **Grade C · 60.7/100 · rank #453 of 842 · #8 in Text-to-speech · not agent-ready · confidence medium** More from Fish Audio, listed separately because each is its own product: [Fish Audio Voice Cloning API](https://www.anchorterminal.com/tools/fish-audio-voice-cloning.md) (Voice cloning & custom voices). ## Assessment 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. ## Facts | Field | Value | | --- | --- | | Vendor | Fish Audio (https://fish.audio) | | Kind | Model API | | Category | Text-to-speech (https://www.anchorterminal.com/categories/text-to-speech) | | Transport | HTTP, Streamable HTTP | | Endpoint | `https://api.fish.audio` | | Auth | OAuth or key · `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 | Pay per use (Pay per use) · $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). | | x402 | No · No x402, MPP or L402 in the developer docs, the OpenAPI file or the pricing page (checked 2026-10-09). | | Licence | Apache-2.0 (Python SDK), MIT (JavaScript SDK) | | Packages | pypi: `fish-audio-sdk`; npm: `fish-audio` | | Source | https://github.com/fishaudio/fish-audio-python | | Docs | https://docs.fish.audio/features/text-to-speech | | llms.txt | https://docs.fish.audio/llms.txt | | Last release | 2026-09-23 | | npm downloads / week | 5,213 | | PyPI downloads / week | 34,220 | | Models | `s2.1-pro` (default), `s2.1-pro-free`, `s2-pro`, `drama-3-preview` (preview since 23 September 2026), `s1` (deprecated, retires 31 December 2026) | | Languages | 83 on `s2.1-pro`, detected automatically from the text. 13 on `s1` | | Time to first audio | Vendor docs give about 300 ms with `latency` set to `balanced` and 100 ms for `s2-pro`. Not measured by us | | Endpoints | `POST /v1/tts`, `POST /v1/tts/stream/with-timestamp` (SSE), WebSocket `/v1/tts/live` and `/v1/tts/live/with-timestamp`, `GET /model` for the voice library, plus `/compat/v1/audio/speech` and `/compat/elevenlabs` | | Streaming input | The WebSocket takes MessagePack `start`, `text`, `flush` and `stop` events, so LLM tokens can be sent as they arrive | | Speech control | No SSML. Free-form `[bracket]` cues on the S2 family, `prosody.speed` from 0.5 to 2.0, volume in dB, phoneme markup for English, Chinese and Japanese, and up to 3 pronunciation dictionaries a request | | Voices | A `reference_id` from the public Voice Library or your own models, inline reference audio over MessagePack, and several speakers in one request with `<\|speaker:N\|>` tags | | Output | MP3 at 64, 128 or 192 kbps, WAV or PCM at 8 to 44.1 kHz, Opus at 48 kHz, all mono | | Free tier | `s2.1-pro-free` at $0 under fair-use limits, with no latency or DPA guarantees, free through 30 November 2026 per the changelog | | Rate limits | 5 concurrent requests under $100 prepaid, 15 from $100, 50 from $1,000, shared by all keys on the account. A 429 on the native API has no `Retry-After` header | | Data retention | No fixed period published. The privacy policy keeps Content as long as needed to run the systems, and the compatibility page says zero-retention mode cannot be honoured | | 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 | | JSON | https://www.anchorterminal.com/api/v1/tools/fish-audio-tts.json | ## Score breakdown (methodology v0.4, October 2026 research run) Assessed 2026-10-09 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. | Category | Weight | This run | Score (0–100) | Points | | --- | --- | --- | --- | --- | | Reliability | 16% | 20 | 75 | 15.0 | | Performance | 10% | pending | pending | n/a | | Schema & documentation | 13% | 16.2 | 84 | 13.7 | | Agent ergonomics | 13% | 16.2 | 67 | 10.9 | | Security & auth | 14% | 17.5 | 35 | 6.1 | | Payments & pricing | 10% | 12.5 | 30 | 3.8 | | Task success | 10% | pending | pending | n/a | | Maintenance & community | 7% | 8.8 | 69 | 6.0 | | Transparency & trust (editorial 44, provenance 75) | 7% | 8.8 | 60 | 5.2 | | Negative events | up to −15 | up to −15 | none recorded | 0 | | **Total** | | | | **60.7 → C** | ### Why each score - Reliability 75: Hosted reading. Better Stack status page at status.fish.audio with Platform API, Text-to-Speech API and per-model components and 90 days of history (20). The Text-to-Speech API component shows downtime on 11 days in the last 90, the longest 58 minutes on 6 August and 40 minutes on 5 October 2026. Those follow the `s2.1-pro-free` component. Paid `s2.1-pro` shows 11 minutes on 15 July, and Platform API shows 2 hours 4 minutes on 12 July. One written incident, the APAC data centre failover on 10 August. No TTS outage reached an hour (18 of 30). Concurrency limits published as 5, 15 and 50 by prepaid amount (15). The docs say the native API returns 429 without `Retry-After` and tell callers to retry 429 and 5xx with exponential backoff. The compatibility endpoints send `Retry-After`. No idempotency key on TTS (12 of 15). The docs mention TTFA and DPA guarantees for `s2.1-pro` but no SLA document or figure was found (0). `s2.1-pro` is generally available, `drama-3-preview` is a preview (10). - 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. - Schema & documentation 84: OpenAPI 3.1 file at docs.fish.audio/api-reference/openapi.json, and an AsyncAPI schema rendered on the WebSocket page. The standalone AsyncAPI link in llms.txt returned 404 (25). llms.txt, llms-full.txt, Markdown pages and two agent skills under `/.well-known/agent-skills/` (10). The guide says when to use `convert`, `stream` and the WebSocket, which model to pick and what each `latency` mode trades (16 of 20). Enums for `format`, bitrates, `latency` and the `model` header, ranges on `temperature`, `top_p` and `chunk_length`, one required field. `features` is a free list of strings and the `speed` range is in prose only (12 of 15). Examples in curl, Python and JavaScript and an errors page with a status table. The OpenAPI file lists only 401, 402 and 503 for `/v1/tts`, and the guide and the reference disagree on the defaults for `latency` and `chunk_length` (10 of 15). `/v1` paths and a dated changelog current to 8 October 2026, with no way to pin API behaviour (11 of 15). - Agent ergonomics 67: API reading. MP3, WAV, PCM or Opus with selectable sample rate and bitrate, chunked HTTP output, an SSE stream with alignment and two WebSocket endpoints (21 of 25). `GET /model` pages the voice library with `page_size`, `page_number`, title, tag, language and `self` filters and three sort orders. No maximum text length per request was found (14 of 20). Errors are JSON with `message` and `status`, a status table and typed SDK exceptions, with no error codes for TTS. An unrecognised `model` header falls back to `s2.1-pro` and an unresolved pronunciation dictionary is dropped, both without an error (11 of 20). Retry guidance for 429 and 5xx. No idempotency key, and the pricing page does not say whether a failed TTS request is billed, though it does for speech-to-text and voice design (9 of 20). Only `text` is required, and there are Python and JavaScript SDKs, though npm 0.1.0 defaults to the deprecated `s1` and Python defaults to `s2-pro` (12 of 15). - Security & auth 35: Model reading of the checklist, with training and retention in place of the least-privilege and injection lines, as for the other TTS listings. Named, revocable API keys with optional expiry. The errors page refers to a key's scope but no scope settings are documented. The MCP server uses OAuth bound to one team. No short-lived token for browser TTS was found (20 of 30). The Terms of Use let Usage Data and Content train models with no opt-out found. A self-hosted enterprise deployment keeps text and audio inside the customer's boundary (3 of 20). No retention period is published, and the compatibility page says zero-retention mode cannot be honoured (2 of 15). W3C `traceparent` accepted on TTS, an `X-Generation-Id` header on compatibility responses and a credit balance endpoint. No per-call log documented (8 of 15). security.txt returned 404, the contributing page asks for security reports by email without giving an address, and no SOC 2, ISO 27001 or bug bounty was found in the pages read. The enterprise and trust pages on fish.audio were not read (2 of 20). - Payments & pricing 30: No x402, MPP or L402 (0). $15 per million UTF-8 bytes published without a login (20). `s2.1-pro-free` costs $0 under fair-use limits, free through 30 November 2026 per the changelog. Whether a card or a prepaid balance is needed is not stated (10 of 20). Signup is a browser flow with email verification and keys are created in the web app (0). - 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. - Maintenance & community 69: Read as a model. The changelog's newest entries are the S1 retirement notice of 8 October 2026 and `drama-3-preview` on 23 September 2026 (30). Three dated entries in the last 90 days, 18 September, 23 September and 8 October (20). Public changelog, Discord and a support address. We did not test how fast they answer (8 of 15). Official Python and JavaScript SDKs, last published on 10 March 2026. The Python fix for `s2.1` model names was merged on 31 July and is not in a tagged release, and npm 0.1.0 defaults to `s1` (7 of 15). The Python repository has CI across Python versions and Dependabot. Releases are 213 days old (4 of 10). - Transparency & trust 60: Closed API with public terms, SDKs under Apache-2.0 and MIT, and S2-Pro weights published under Fish Audio's own research licence, which is not OSI-approved (20 of 30). Terms dated 18 August 2024 and a privacy policy dated 28 August 2024. They take a perpetual, irrevocable licence to submissions, allow training and publish no fixed retention period. The docs refer to DPA guarantees on `s2.1-pro`, and no DPA text was found (5 of 30). A deprecations page with dates, and S1's retirement announced 84 days ahead with a migration guide (16 of 20). The privacy policy names Stripe, and the status page refers to APAC and North America data centres. No sub-processor list found (3 of 20). Fix list for a coding agent, everything this grade says the listing lacks, the biggest gain first (19 items): https://www.anchorterminal.com/fixes/fish-audio-tts.md (JSON https://www.anchorterminal.com/fixes/fish-audio-tts.json) ### What we couldn't check - unchecked: the fish.audio pricing, enterprise and any trust or security pages. The Terms of Use forbid crawling or scraping the Services, so we read only the terms, the privacy policy and the docs host. A certification or DPA published there would raise the security and transparency scores. - unchecked: GitHub star counts. The GitHub API refused our request for its rate limit, so `githubStars` is empty. - unchecked: the PyPI project page, which answered with a short challenge page. The Python release date comes from the repository's tag and changelog. - unchecked: `https://api.fish.audio/openapi.json`, which the docs call the canonical schema. We read the copy on the docs host and sent no request to the API host. - Whether a failed or interrupted `/v1/tts` request is billed. The pricing page states the rule for speech-to-text and voice design only. - Whether the free model needs a card or a prepaid balance, and what the fair-use limits are. - What the TTFA and DPA guarantees on `s2.1-pro` consist of. No figure or document was found. - The tool list of the MCP server. The MCP page points to one and shows none, so `toolCount` is empty. - Whether a maximum text length applies to one `/v1/tts` request. ### Sources - docs index for agents: (seen 2026-10-09) - text to speech endpoint reference: (seen 2026-10-09) - WebSocket TTS reference: (seen 2026-10-09) - OpenAPI file: (seen 2026-10-09) - text to speech guide: (seen 2026-10-09) - pricing and rate limits: (seen 2026-10-09) - models overview: (seen 2026-10-09) - model deprecations: (seen 2026-10-09) - S1 migration guide: (seen 2026-10-09) - changelog: (seen 2026-10-09) - errors and retries: (seen 2026-10-09) - tracing: (seen 2026-10-09) - compatibility contract: (seen 2026-10-09) - MCP server: (seen 2026-10-09) - API key setup: (seen 2026-10-09) - agent skills and coding assistants: (seen 2026-10-09) - full docs text, searched for security and data terms: (seen 2026-10-09) - status page, 90 day component history: (seen 2026-10-09) - APAC data centre incident, 10 August 2026: (seen 2026-10-09) - Terms of Use: (seen 2026-10-09) - Privacy Policy: (seen 2026-10-09) - robots.txt: (seen 2026-10-09) - security.txt, 404: (seen 2026-10-09) - Python SDK repository, tags and changelog: (seen 2026-10-09) - JavaScript SDK repository: (seen 2026-10-09) - npm package metadata: (seen 2026-10-09) - npm weekly downloads: (seen 2026-10-09) - PyPI weekly downloads: (seen 2026-10-09) - domain registration: (seen 2026-10-09) ## Who's behind it (provenance 75/100, checked 2026-10-09) | Check | Finding | Points | | --- | --- | --- | | Legal entity named | Hanabi AI Inc. | 20/20 | | Domain age | fish.audio, registered 2023-12-11 (2 years) | 7/15 | | Endpoint on the vendor's domain | api.fish.audio | 15/15 | | Terms of service | read, states 6 of the 7 things a reader expects, and has 3 clauses that cost points | 3.1/10 | | Privacy policy | read, states 8 of the 8 things a reader expects | 10/10 | | Status page | status.fish.audio | 10/10 | | Changelog | published | 10/10 | | security.txt | not found | 0/10 | 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. ### Terms and privacy, as read A reading by a fixed set of rules, each answered with the vendor's own sentence. Not legal advice. **Terms of service** (https://fish.audio/terms/), read 2026-10-08, dated 2024-08-18, states 6 of the 7 things a reader expects. - To know. Says it may use customer content to train or improve models, and no opt-out was found (costs points). "Usage Data and Content may be used to develop, train, or enhance artificial intelligence or machine learning models that are part of Fish.Audio’s products and services, including third-party components of the Services" - To know. Restricts automated access (costs points). "(h) “crawls,” “scrapes,” or “spiders” any page, data, or portion of or relating to the Services or Content (through use of manual or automated means);" - To know. Restricts benchmarking or competitive use (costs points). "(j) use output from the Services to develop models that compete with Fish.Audio;" - To know. Says access can be ended without notice or for any reason. "We reserve the right to terminate your right to use or access the Services at any time, for any reason, in our sole discretion, and without notice." - To know. Requires arbitration or waives class actions. "Please read the following ARBITRATION AGREEMENT carefully because it requires you to arbitrate certain disputes and claims with Fish.Audio and limits the manner in which you can seek relief from Fish.Audio." - Gives the date it was last updated. Last updated 2024-08-18. - Names the governing law or courts. The law of the State of California. - States a limit on its liability. Capped at $100. - Says how changes to the terms are announced. Says it gives notice of a change. - Not found in the text. Refers to a service level or uptime commitment. - Also in the text (2026-10-08). The terms limit use to internal, personal, non-commercial purposes and not on behalf of a third party, and the following sentence grants a licence for commercial use for users of Paid Services. "You will only use the Services for your own internal, personal, non-commercial use, and not on behalf of or for the benefit of any third party, and only in a manner that complies with all laws that apply to you." - Also in the text (2026-10-08). The licences the user grants over User Submissions are royalty-free, perpetual, sublicensable, irrevocable and worldwide. "You agree that the licenses you grant are royalty-free, perpetual, sublicensable, irrevocable, and worldwide" - Also in the text (2026-10-08). Any cause of action arising out of or related to the services must commence within one year after it accrues. "YOU AND Fish.Audio AGREE THAT ANY CAUSE OF ACTION ARISING OUT OF OR RELATED TO THE SERVICES MUST COMMENCE WITHIN ONE (1) YEAR AFTER THE CAUSE OF ACTION ACCRUES." **Privacy policy** (https://fish.audio/privacy/), read 2026-10-08, dated 2024-08-28, states 8 of the 8 things a reader expects. - To know. Says it sells personal data or shares it for advertising. "Depending on state laws that may be applicable to you, some of these disclosures may constitute a “sale” of your Personal Data." - Gives the date it was last updated. Last updated 2024-08-28. - Says how long data is kept. For as long as needed, with no period named. - Says whether personal data is sold or shared for advertising. Says it does not sell personal data. - Gives a privacy contact. support@fish.audio. ## Live (updated 2026-10-09 10:42 UTC) - Right now: up, HTTP 404, 150 ms, checked 2026-10-09 10:42 UTC (get on `https://api.fish.audio`) - Uptime 24h 100.0% (33 probes) · 30 days 100.0% (33 probes) · p50 158 ms · p95 224 ms - Vendor status page: unknown, no machine-readable status found - Always current: https://www.anchorterminal.com/api/v1/live/fish-audio-tts.json ## Probe metrics Not 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. ## Prices | Item | Price | Unit | Note | | --- | --- | --- | --- | | Text to speech, s2.1-pro | $15 | per 1M characters | per million UTF-8 bytes of input text, not characters | | Text to speech, s2.1-pro-free | free | per 1M characters | fair-use limits, free through 30 November 2026 per the changelog | Across all listings: https://www.anchorterminal.com/prices/index.md ## 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 ## Before you call it (notes for agents) 1. Send the `model` header on every request and check its spelling. A missing or unknown value is served and billed as `s2.1-pro`. 2. Budget by UTF-8 bytes, not characters. Chinese, Japanese and Korean text costs about three bytes a character. 3. Retry 429 and 5xx with exponential backoff. The native API sends no `Retry-After`, and concurrency starts at 5 for the whole account. 4. Use `[bracket]` cues on the S2 family. `(parenthesis)` tags from `s1` are read aloud as text. 5. Pass the model explicitly in the JavaScript SDK, because npm release 0.1.0 defaults to `s1`. ## Connect Install: ```bash pip install fish-audio-sdk ``` First request: ```bash curl --request POST https://api.fish.audio/v1/tts \ --header "Authorization: Bearer $FISH_API_KEY" \ --header "Content-Type: application/json" \ --header "model: s2.1-pro-free" \ --data '{ "text": "Hello from Fish Audio!", "format": "mp3" }' \ --output hello.mp3 ``` Claude Code: ```bash claude mcp add --transport http fish-audio https://api.fish.audio/mcp ``` MCP client configuration: ```json { "mcpServers": { "fish-audio": { "url": "https://api.fish.audio/mcp" } } } ``` ## Similar tools Ranked by shared capabilities, then score. Same-category tools with no shared capability key are listed last. | Tool | Grade | Score | Rank | Shared capabilities | x402 | Markdown | | --- | --- | --- | --- | --- | --- | --- | | Amazon Polly | BB | 75.6 | 42 | speech.tts, speech.streaming, speech.voices, speech.languages | no | https://www.anchorterminal.com/tools/amazon-polly.md | | ElevenLabs Text to Speech API + MCP | BB | 75.2 | 52 | speech.tts, speech.streaming, speech.voices, speech.languages | no | https://www.anchorterminal.com/tools/elevenlabs-tts.md | | Deepgram Text-to-Speech (Aura-2, Flux TTS) | BB | 72.7 | 97 | speech.tts, speech.streaming, speech.voices, speech.languages | no | https://www.anchorterminal.com/tools/deepgram-tts.md | | Azure AI Speech text-to-speech | BB | 71.4 | 121 | speech.tts, speech.streaming, speech.voices, speech.languages | no | https://www.anchorterminal.com/tools/azure-text-to-speech.md | | Murf TTS API + MCP | BB | 70.6 | 145 | speech.tts, speech.streaming, speech.voices, speech.languages | no | https://www.anchorterminal.com/tools/murf-tts.md | | Cartesia Sonic TTS API + MCP | B | 63.8 | 335 | speech.tts, speech.streaming, speech.voices, speech.languages | no | https://www.anchorterminal.com/tools/cartesia-tts.md | ## Panel reviews (0) Reviewed by the Anchor panel (https://www.anchorterminal.com/reviewers/index.md): . Desk 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 ## Notable - The `model` header defaults to `s2.1-pro`, and a missing or unrecognised value falls back to it without an error, so a misspelt `s2.1-pro-free` is billed at $15 per million bytes (source: ) - S1 was deprecated on 8 October 2026 and retires on 31 December 2026. After that, `s1` requests are served and billed as `s2.1-pro` (source: ) - OpenAI-compatible and ElevenLabs-compatible endpoints sit under `https://api.fish.audio/compat`, with unsupported options refused by a 4xx and a `Retry-After` header on every 429 (source: ) - The terms allow Usage Data and Content to be used to train models, grant a perpetual, irrevocable licence to User Submissions, and forbid crawling or scraping the Services (source: ) - llms.txt lists an AsyncAPI file at `/api-reference/asyncapi.yml` that returned 404 on 2026-10-09. The same schema is rendered on the WebSocket reference page (source: ) - Sibling listing `fish-audio-voice-cloning` covers voice model creation and voice design on the same API key, terms and status page ## Compare - [Amazon Polly vs Fish Audio TTS API](https://www.anchorterminal.com/compare/amazon-polly-vs-fish-audio-tts.md): BB 75.6 vs C 60.7 - [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): BB 71.4 vs C 60.7 - [Cartesia Sonic TTS API + MCP vs Fish Audio TTS API](https://www.anchorterminal.com/compare/cartesia-tts-vs-fish-audio-tts.md): B 63.8 vs C 60.7 - [Deepgram Text-to-Speech (Aura-2, Flux TTS) vs Fish Audio TTS API](https://www.anchorterminal.com/compare/deepgram-tts-vs-fish-audio-tts.md): BB 72.7 vs C 60.7 - [ElevenLabs Text to Speech API + MCP vs Fish Audio TTS API](https://www.anchorterminal.com/compare/elevenlabs-tts-vs-fish-audio-tts.md): BB 75.2 vs C 60.7 - [Fish Audio TTS API vs Murf TTS API + MCP](https://www.anchorterminal.com/compare/fish-audio-tts-vs-murf-tts.md): C 60.7 vs BB 70.6 - [Fish Audio TTS API vs PlayHT Text-to-Speech API](https://www.anchorterminal.com/compare/fish-audio-tts-vs-playht-tts.md): C 60.7 vs F 3.9 - [Fish Audio TTS API vs Resemble AI Text-to-Speech API](https://www.anchorterminal.com/compare/fish-audio-tts-vs-resemble-ai-tts.md): C 60.7 vs D 50.3 - [Fish Audio TTS API vs Rime TTS API + MCP](https://www.anchorterminal.com/compare/fish-audio-tts-vs-rime-tts.md): C 60.7 vs C 55.8 - [Fish Audio TTS API vs Soniox Text-to-Speech](https://www.anchorterminal.com/compare/fish-audio-tts-vs-soniox-tts.md): C 60.7 vs B 63.7 ## Verify this listing For the vendor. The badge or a plain link to this page verifies the listing, from a page on fish.audio or one of its subdomains, or the README of github.com/fishaudio/fish-audio-python. 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": "fish-audio-tts", "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 HTML badge: ```html Fish Audio TTS API on Anchor Terminal ``` Markdown badge, for a README: ```markdown [![Fish Audio TTS API on Anchor Terminal](https://www.anchorterminal.com/badges/fish-audio-tts.svg)](https://www.anchorterminal.com/tools/fish-audio-tts) ``` Plain link: ```html Fish Audio TTS API on Anchor Terminal ``` ## Share this listing For the vendor. Sharing assets for social media, two PNGs of 1200 × 630 that say Fish Audio TTS API is listed on Anchor Terminal, with the vendor's logo and this page's address and no grade or score. - Dark: https://www.anchorterminal.com/assets/share/fish-audio-tts-dark.png - Light: https://www.anchorterminal.com/assets/share/fish-audio-tts-light.png