API Pricing
The Fish Audio API uses pay-as-you-go pricing based on actual usage. There are no subscription fees or monthly minimums for API access.
Text-to-Speech (TTS) Models
TTS pricing is based on the size of input text, measured in millions of UTF-8 bytes.
| Model Name | Price (USD) |
|---|
s2.1-pro | $15.00 / M UTF-8 bytes |
s2.1-pro-free | $0.00 / M UTF-8 bytes |
s2-pro | $15.00 / M UTF-8 bytes |
s1 | $15.00 / M UTF-8 bytes |
1M UTF-8 bytes is approximately 180,000 English words, or about 12 hours of
speech
Automatic Speech Recognition (ASR) Models
| Model Name | Price (USD) |
|---|
transcribe-1 | $0.36 / audio hour |
How ASR billing works:
- Charges are based on the duration of audio processed
- Duration is rounded up to the nearest second
Voice Design
| Model Name | Price (USD) |
|---|
voice-design-1 | $0.01 / successful API request |
How Voice Design billing works:
- Charges are based on successful
POST /v1/voice-design requests
- One successful request is charged once, even when it returns multiple candidates
- Authentication, validation, balance, concurrency, and service errors are not billed
Rate Limits
These limits help us ensure fair usage and maintain service quality for all users.
Concurrent Request Limits
| Tier | Spending Threshold | Concurrent Requests |
|---|
| Starter | < $100 paid | 5 requests |
| Elevated | ≥ $100 paid | 15 requests |
| High Volume | ≥ $1,000 paid | 50 requests |
| Enterprise | Custom | Custom limits |
Concurrency tiers unlock as soon as your total prepaid amount reaches the
threshold. You do not need to spend the full balance first. If your workload
needs a higher concurrency tier, you can top up in advance to unlock the next
tier immediately.
Convert Concurrency to QPS or QPM
Fish Audio rate limits are based on concurrent requests: the number of
requests that can be in progress at the same time. This is different from QPS
(queries per second) or QPM (queries per minute), which measure how many
requests complete over time.
The conversion depends on how long your Fish Audio request occupies a
concurrency slot. Short interactive requests can produce much higher QPM from
the same concurrency tier than long-form synthesis requests.
Use this planning formula:
QPS ~= concurrency / average_request_duration_seconds
QPM ~= concurrency * 60 / average_request_duration_seconds
required_concurrency ~= target_QPM * average_request_duration_seconds / 60
Before you estimate throughput, measure your own average request duration:
- For TTS workloads, send representative production-shaped requests with
latency="normal" to get a stable quality-first baseline. For other APIs,
use the same request shape you expect in production.
- Measure from request start until the full response completes. For WebSocket
streaming, measure until the final audio chunk is received or the stream is
closed.
- Calculate the average duration for each workload type. If one business
workflow makes multiple Fish Audio calls, estimate each call separately. Use
p95 duration when you need safer capacity planning for bursts, retries, or
uneven traffic.
There is no single fixed conversion from concurrency to QPM. A customer whose
average request occupies a slot for 2 seconds can complete about 30 times as
many requests per minute as a customer whose average request occupies a slot
for 60 seconds, even on the same concurrency tier.
Example planning estimates:
| Workload | Average occupied time | 5 concurrency | 15 concurrency | 50 concurrency |
|---|
| AI companion short reply | 2 seconds | ~150 QPM | ~450 QPM | ~1,500 QPM |
| Voice-agent support turn | 4 seconds | ~75 QPM | ~225 QPM | ~750 QPM |
| Narration paragraph | 12 seconds | ~25 QPM | ~75 QPM | ~250 QPM |
| Audiobook or long-form synthesis | 60 seconds | ~5 QPM | ~15 QPM | ~50 QPM |
Treat these numbers as examples, not guarantees. Your actual QPS and QPM depend
on text length, model, reference audio, output format, network path, streaming
behavior, and the latency distribution of your own application.
Please reach out to our team to enable enterprise volume pricing, rate limits,
and billing.
Support
Need help? Check out these resources: