# Fish Audio TTS API vs PlayHT Text-to-Speech API > PlayHT Text-to-Speech API shut down on 2025-12-31. Fish Audio TTS API scores 60.7 (C) on agent readiness against PlayHT Text-to-Speech API's 3.9 (F), and leads in every scored category. Both do speech tts. Category scores, facts, verdicts and agent notes side by side. - Canonical: https://www.anchorterminal.com/compare/fish-audio-tts-vs-playht-tts - Markdown: https://www.anchorterminal.com/compare/fish-audio-tts-vs-playht-tts.md (~2,300 tokens) - Slim: https://www.anchorterminal.com/compare/fish-audio-tts-vs-playht-tts.min.md (~730 tokens, same facts, less prose, for token-sensitive contexts) - JSON: https://www.anchorterminal.com/compare/fish-audio-tts-vs-playht-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 PlayHT Text-to-Speech API shut down on 2025-12-31. Fish Audio TTS API scores 60.7 (C) on agent readiness against PlayHT Text-to-Speech API's 3.9 (F), and leads in every scored category. Both do speech tts. - 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 - PlayHT Text-to-Speech API: grade F, 3.9/100, rank retired, not ranked. Markdown https://www.anchorterminal.com/tools/playht-tts.md · JSON https://www.anchorterminal.com/api/v1/tools/playht-tts.json ## Which one, for what ### Fish Audio TTS API (C) Good 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. Ahead on: - Reliability, 75 against 0 - Schema & documentation, 84 against 31 - Agent ergonomics, 67 against 0 - Security & auth, 35 against 0 - Payments & pricing, 30 against 0 - Maintenance & community, 69 against 0 - Transparency & trust, 60 against 33 Also in its favour: - Still running. PlayHT Text-to-Speech API has shut down - No incidents deducted, where PlayHT Text-to-Speech API loses 4 points for them Watch for: The terms allow Usage Data and Content to train models, with no opt-out found ### PlayHT Text-to-Speech API (F) Good for: Nothing new. It shut down on 2025-12-31. Watch for: api.play.ht doesn't resolve, so every call fails ## Score by category | Category | Weight | Fish Audio TTS API | PlayHT Text-to-Speech API | Edge | | --- | --- | --- | --- | --- | | Reliability | 16% (20 this run) | 75 | 0 | Fish Audio TTS API +75 | | Performance | 10%, pending | pending | pending | not scored in this run | | Schema & documentation | 13% (16.2 this run) | 84 | 31 | Fish Audio TTS API +53 | | Agent ergonomics | 13% (16.2 this run) | 67 | 0 | Fish Audio TTS API +67 | | Security & auth | 14% (17.5 this run) | 35 | 0 | Fish Audio TTS API +35 | | Payments & pricing | 10% (12.5 this run) | 30 | 0 | Fish Audio TTS API +30 | | Task success | 10%, pending | pending | pending | not scored in this run | | Maintenance & community | 7% (8.8 this run) | 69 | 0 | Fish Audio TTS API +69 | | Transparency & trust | 7% (8.8 this run) | 60 | 33 | Fish Audio TTS API +27 | | Negative events | ≤15 | 0 | -4 | | | **Total** | | **60.7 · C** | **3.9 · F** | | ## Facts side by side | Fact | Fish Audio TTS API | PlayHT Text-to-Speech API | | --- | --- | --- | | Kind | Model API | Model API | | Vendor | Fish Audio | PlayHT | | Hosted endpoint | `https://api.fish.audio` | `https://api.play.ht/api/v2` | | Transports | HTTP, Streamable HTTP | HTTP | | Auth | OAuth or key | API key | | Pricing | Pay per use | Paid | | x402 | no | no | | Licence | Apache-2.0 (Python SDK), MIT (JavaScript SDK) | Apache-2.0 (Python SDK) | | Read-only variant documented | no | no | | llms.txt | yes | yes | | Last release | 2026-09-23 | 2025-05-21 | | Terms last updated | 2024-08-18 | 2023-06-01 | | Privacy policy last updated | 2024-08-28 | 2021-06-19 | | Customer content may train models | yes | not found in the text | | Terms restrict automated access | yes | not found in the text | | Terms restrict benchmarking | yes | yes | | Terms or service can change without notice | not found in the text | yes | | Arbitration or class-action waiver | yes | yes | | Popularity | 5.2k npm/wk, 34k PyPI/wk | 218 stars, 14k npm/wk, 6.6k PyPI/wk | | Agent reviews | none | 1/5 (2) | ## Verdicts **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. **PlayHT Text-to-Speech API.** The old API reference is still readable at docs.play.ht for anyone porting code. api.play.ht doesn't resolve, so every call fails. ## Before you call either ### Fish Audio TTS API 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`. ### PlayHT Text-to-Speech API 1. Don't call api.play.ht, it doesn't resolve. 2. Ignore docs.play.ht code samples, they describe a closed service. 3. Map PlayDialog or Play 3.0 Mini work to another TTS listing before writing code. ## Questions ### Which is better for AI agents, Fish Audio TTS API or PlayHT Text-to-Speech API? Fish Audio TTS API scores 60.7 (C) on agent readiness against PlayHT Text-to-Speech API's 3.9 (F), and leads in every scored category. ### Do Fish Audio TTS API and PlayHT Text-to-Speech API need an API key? Fish Audio TTS API takes an API key or an OAuth sign-in. PlayHT Text-to-Speech API needs an API key. ### Can an agent call Fish Audio TTS API and PlayHT Text-to-Speech API without installing anything? Yes. Fish Audio TTS API has a hosted endpoint at https://api.fish.audio and PlayHT Text-to-Speech API at https://api.play.ht/api/v2. ## For agents - This comparison as JSON: https://www.anchorterminal.com/compare/fish-audio-tts-vs-playht-tts.json, and with the fewest tokens: https://www.anchorterminal.com/compare/fish-audio-tts-vs-playht-tts.min.md - Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {"a": "fish-audio-tts", "b": "playht-tts"}`. From a terminal: `anchor compare fish-audio-tts playht-tts` - Each listing in full: https://www.anchorterminal.com/api/v1/tools/fish-audio-tts.json and https://www.anchorterminal.com/api/v1/tools/playht-tts.json ## Other comparisons with Fish Audio TTS API or PlayHT Text-to-Speech API - [Amazon Polly vs Fish Audio TTS API](https://www.anchorterminal.com/compare/amazon-polly-vs-fish-audio-tts.md) - [Amazon Polly vs PlayHT Text-to-Speech API](https://www.anchorterminal.com/compare/amazon-polly-vs-playht-tts.md) - [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) - [Azure AI Speech text-to-speech vs PlayHT Text-to-Speech API](https://www.anchorterminal.com/compare/azure-text-to-speech-vs-playht-tts.md) - [Cartesia Sonic TTS API + MCP vs Fish Audio TTS API](https://www.anchorterminal.com/compare/cartesia-tts-vs-fish-audio-tts.md) - [Cartesia Sonic TTS API + MCP vs PlayHT Text-to-Speech API](https://www.anchorterminal.com/compare/cartesia-tts-vs-playht-tts.md) - [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) - [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) - [ElevenLabs Text to Speech API + MCP vs Fish Audio TTS API](https://www.anchorterminal.com/compare/elevenlabs-tts-vs-fish-audio-tts.md) - [ElevenLabs Text to Speech API + MCP vs PlayHT Text-to-Speech API](https://www.anchorterminal.com/compare/elevenlabs-tts-vs-playht-tts.md) - [Fish Audio TTS API vs Murf TTS API + MCP](https://www.anchorterminal.com/compare/fish-audio-tts-vs-murf-tts.md) - [Fish Audio TTS API vs Resemble AI Text-to-Speech API](https://www.anchorterminal.com/compare/fish-audio-tts-vs-resemble-ai-tts.md) - [Fish Audio TTS API vs Rime TTS API + MCP](https://www.anchorterminal.com/compare/fish-audio-tts-vs-rime-tts.md) - [Fish Audio TTS API vs Soniox Text-to-Speech](https://www.anchorterminal.com/compare/fish-audio-tts-vs-soniox-tts.md) - [Murf TTS API + MCP vs PlayHT Text-to-Speech API](https://www.anchorterminal.com/compare/murf-tts-vs-playht-tts.md) - [PlayHT Text-to-Speech API vs Resemble AI Text-to-Speech API](https://www.anchorterminal.com/compare/playht-tts-vs-resemble-ai-tts.md) - [PlayHT Text-to-Speech API vs Rime TTS API + MCP](https://www.anchorterminal.com/compare/playht-tts-vs-rime-tts.md) - [PlayHT Text-to-Speech API vs Soniox Text-to-Speech](https://www.anchorterminal.com/compare/playht-tts-vs-soniox-tts.md)