Fish Audio sells Free, Plus and Pro plans and a separate pay-as-you-go API, which suits teams who wire voice generation into their own pipelines through tools like Activepieces.
Fish Audio pricing is the set of charges for its text-to-speech and voice-cloning service, split between monthly app subscriptions (Free, Plus and Pro) that cap usage by plan limits and a separate pay-as-you-go API billed by how much audio you generate.
It's a text-to-speech and voice-cloning platform: you give it text, it speaks it, and it can copy a voice from a sample. Pick the wrong meter and you pay for capacity you never touch, or hit a wall mid-project.
Fish Audio pricing today, plan by plan
Plan table, checked on the date shown
To see what each plan includes each month and how it's billed, read the table. Checked 11 Nov 2026.
| Plan | How it is billed | Monthly credits |
|---|---|---|
| Free | No charge | 8,000 |
| Plus | Subscription | 250,000 |
| Pro | Subscription | 2,000,000 |
| Pay-as-you-go API (s2.1-pro) | Usage | No monthly bundle |
On Free, 8,000 credits are enough to hear the voices and test an idea, not to run anything people depend on.
Plus has about 31 times that, which is where regular work starts. Pro is 8 times Plus, so it only pays off if you really use that volume.
Before you commit, check the pricing page for the current dollar amounts, concurrency and commercial-use terms, because those limits are what force an upgrade.
Subscription versus API billing: two different meters
A subscription is a monthly allowance you draw down. Use less and you still pay the full amount; use more and you hit the ceiling or move up a plan.
The API is the opposite arrangement: nothing's reserved, and you pay for what your code actually requests.
If you call it from Activepieces, the flow adds its own meter beside Fish Audio's, and that meter counts runs, not steps: 1 credit per run, so a ten-step flow costs what its two-step workaround did, where Zapier bills per task and Make per module.

Splitting the work into smaller steps never raises that bill. The audio itself is still billed on the usage meter, whatever plan your own account sits on. Settle which meter you're on first, then compare rates.
If you are running this arithmetic for your own team, see what the same workload costs on Activepieces.
What 1,000, 10,000 and 100,000 minutes cost
On the API meter at $0.0208 a minute, 1,000 minutes costs about $21 a month, putting basic API access within reach. 10,000 minutes costs about $208, and 100,000 about $2,080.
| Monthly minutes | Pay-as-you-go at $0.0208/min | Credits at 600–625/min | Plan that covers it | Verdict |
|---|---|---|---|---|
| 1,000 | $20.80 | 600,000–625,000 | Any plan including that many credits | Pay-as-you-go unless a plan costs less |
| 10,000 | $208 | 6–6.25 million | Any plan including that many credits | Compare the plan price against $208 |
| 100,000 | $2,080 | 60–62.5 million | Likely none off the shelf | Ask for a quote |
How Fish Audio cost estimates are calculated
Check both against your own text, because they're estimates: the $0.0208 rate is $15 ÷ 720 minutes, and the credit range is the 600–625 per minute conversion.
API against the web app at each volume
Take 1,000 minutes a month, the prototype and small bot case: that's about 17 hours of audio. At Eesel AI's $1.25 an hour for the S2.1 Pro API, you pay roughly $21, which equals the starting price point.
Its $3.70 an hour for the Pro web app would run about $62, which costs substantially more than the API option. A bot that calls the API therefore costs about a third as much as the same audio made in the app.

At 10,000 minutes a month, a live product, you are looking at about 167 hours; this is typical monthly usage for production systems.
The API holds at $208, while the web app Pro rate climbs to roughly $617, which means your choice of interface becomes a significant cost factor at scale.
Eesel AI also lists Drama 3 at $0.83 an hour on promo, about $138 here, the cheapest rate for this monthly volume. Its regular rate is $4.17, about $695. Don't budget on the promo, because when it ends the bill is five times higher.
At 100,000 minutes a month, about 1,667 hours, the API meter reaches roughly $2,080. The $3.70 web app rate would reach about $6,170.
Expect a flat monthly plan to fall short of 60 million credits; a quote may beat the public rate.
Free tier allowances and limits
Test a build, yes; ship one, no. The free tier gives you a monthly pool of credits and API access, and the limits show up the moment real users arrive.
Free-tier allowance
Credits reset each month and are spent as you generate speech. Unused credits don't carry forward, so a light month doesn't build you a reserve for a heavy one.
Because API access is included, you can wire Fish Audio into an app or automation and find out whether the voice quality and response time suit you before paying anything.
Fish Audio commercial use and attribution terms
Restrictions on commercial use and on crediting Fish Audio tend to sit with free usage, and those terms belong to the plan, not to the voice you picked. Read them on the plan page before anything customer-facing goes live.

If you ship on terms that don't cover commercial use, you've built a product on something you may not be allowed to sell. That's far more expensive to unwind than a plan upgrade.
The same goes for attribution: if credit is required, it has to appear in your product, and that's a design task better planned early than bolted on after launch.
If you ship on terms that don't cover commercial use, you've built a product on something you may not be allowed to sell. That's far more expensive to unwind than a plan upgrade.
The first wall developers hit
The licensing line, not the credit pool, is the first wall for most builders. Credits you can top up, but commercial permission requires a paid plan.
Prototype on the free tier, confirm the terms for your use, and move to a paid plan before launch, not after the first complaint. The next section prices that move.
Limits that force a higher Fish Audio plan
Once a build grows, five limits push it onto a bigger plan: concurrency, cloned voice count, languages, latency, and commercial licensing. Concurrency, the number of requests running at once, is the one most builds hit first.
Read the trigger column against your own traffic, because the plan you need is set by whichever limit you reach first. The table shows where each limit bites and what lifts it.
| Limit | Trigger point | Plan that lifts it | Source |
|---|---|---|---|
| Concurrency | A sixth request arriving while five are running | Prepaid $100 tier, then $1,000 tier | Fish Audio API pricing |
| Cloned voice count | Needing more saved voices than your plan stores | A higher subscription plan | Fish Audio plan terms |
| Languages | Needing a language outside your plan's coverage | Plan-dependent | Fish Audio plan terms |
| Latency and streaming | Live conversation where waiting for a full file is too slow | Streaming through the API | Fish Audio API docs |
| Commercial licensing | Selling or publishing the audio | A paid plan | Fish Audio plan terms |
Five simultaneous requests is fine for one tester and not for a product. The sixth caller waits or fails, so a launch day looks like an outage.
Prepaid tiers at $100 and then $1,000 raise the ceiling, so budget for the tier your busiest hour needs, not your average one.
If every customer or character gets their own voice, the count runs out long before the audio minutes do, because each cloned voice you keep counts against your plan.
Check that every language you ship is covered before you build. For latency, streaming starts playback before the full clip exists, and a voice agent without it feels like a bad phone line.
Skip the licensing check and it costs you the most: audio you sell, publish, or put inside a paid product needs a plan that permits it, and the fix is a rebuild or a legal bill, not a plan upgrade.

Worth checking against a plan that does not meter every step: one credit covers a whole run on Activepieces.
Hidden costs in Fish Audio usage
You can see the headline rate. The costs that move your bill are language, retries, expiring credits and price changes, and each is cheaper to plan for than to discover.
Per-byte billing and language cost
Fish Audio bills by UTF-8 byte, not by visible character. By the dev.to byte comparison, 1,000 characters of English is about 1,000 bytes, Arabic is about 2,000, and Chinese or Japanese is about 3,000.
So the same script read aloud costs roughly double in Arabic and triple in Chinese or Japanese. Price a multilingual app per language, not from one English estimate.
Throw away a take and you've still paid for it. If a voice mispronounces a product name and you regenerate three times, you bought that sentence four times.
The maker doesn't track this for you. Count your retry rate in testing and multiply your expected volume by it.
When the period ends, unused credits expire instead of carrying forward. A quiet month therefore doesn't bank savings; it wastes what you prepaid. If your traffic swings, a smaller plan with pay-as-you-go top-ups beats a large one you only fill in your busiest month.

Fish Audio pricing changes in the changelog
When prices and limits change, the changelog is where Fish Audio records it.
The Drama 3 promotional rate of $10 per million UTF-8 bytes rises to $50, a fivefold jump. Budget at $50, not at the promo, or the first invoice after it ends will be a shock.
Fish Audio against ElevenLabs, Cartesia and OpenAI TTS
On rate alone, Fish Audio ties OpenAI for the lowest entry API rate of the four, at 15 USD per 1M characters, and undercuts ElevenLabs and Cartesia.
TTS API price comparison table with dates
Split by headline rate, the field falls into a cheap pair and an expensive pair, using the entry rates from AssemblyAI's TTS pricing comparison below. Prices move, so confirm each on the vendor's own pricing page before you commit.
| Vendor | Per 1M characters | Per 1,000 characters |
|---|---|---|
| Fish Audio | 15 USD | 0.015 USD |
| OpenAI TTS | 15 USD | 0.015 USD |
| ElevenLabs | 40 USD | 0.04 USD |
| Cartesia | 50 USD | 0.05 USD |
Free tiers, concurrency, cloning and commercial-use terms vary by plan at each vendor.
Set 15 USD against ElevenLabs at 40 USD and Cartesia at 50 USD and it comes in well under both.
At 10M characters a month, that's 150 USD against 400 and 500. You keep 250 to 350 USD every month, and the gap grows with volume. If your workload is long-form narration or bulk generation, this is the number that matters most.
When a rival TTS API is cheaper
On price, OpenAI TTS is a tie: it matches Fish Audio's 15 USD. If your app already bills through OpenAI, one account and one invoice can be worth more than a rate difference that doesn't exist.
viz type=distribution title="Entry API price per million characters across TTS vendors" unit="USD per 1M characters" source="AssemblyAI - https://www.assemblyai.com/blog/tts-api-pricing" target="15" benchmark="Fish Audio $15"5 entry rate matches OpenAI's and sits well below ElevenLabs at $40 and Cartesia at $50." Fish Audio: 15 OpenAI: 15 ElevenLabs: 40 Cartesia: 50
Because the rates are equal, the tiebreaker is limits: how many requests you can run at once, and whether cloning and commercial use are included on your plan.
At 2.7 and 3.3 times the cost per character, ElevenLabs and Cartesia are worth it only when a specific feature you need is missing elsewhere.
Calling Fish Audio from a workflow with Activepieces
The cheapest way to use only what you're paying for is a short Activepieces flow: a trigger, then steps that send text to Fish Audio.
Activepieces is the open-source AI automation platform, with an MIT-licensed core and 747 integrations, so a flow can reach Fish Audio through its catalogue; if no integration exists, you can generate one with AI and add it privately to your own instance.
The six steps below are the whole build, so anything beyond them is probably a cost you didn't plan for.
- Store the Fish Audio API key as a connection.
- Trigger the flow with the text to be spoken.
- Send an HTTP request to the Fish Audio text-to-speech endpoint.
- Cap retries at 2-3.
- Save the returned audio to storage.
- Pass the file URL to whatever step comes next.
Each step has a reason, and the next three subsections cover the ones where mistakes cost money.
Request shape from the API docs
Take the endpoint, header names and body fields from Fish Audio's own API documentation rather than from memory or a forum post.
The key goes in the authorization header, pulled from the connection, and the text goes in the body alongside any voice setting you've chosen.
If you paste the key straight into the step, it sits in plain view of everyone who can open the flow.
When a failed request retries forever, you get billed every time it succeeds on the tenth attempt. Stop at 2-3 retries, then let the flow fail visibly so a person looks at it.
Three tries covers a brief network hiccup, and a bad voice ID or empty text will fail identically every time, so more attempts only burn usage.
Save the audio file the moment it comes back, then pass along its URL instead of the audio itself. Later steps can reuse the stored file without calling Fish Audio again, so you never pay to generate the same sentence twice.
Frequently asked questions
Is Fish Audio free to use? Yes, there's a free tier, but it's for testing, not for running a product on.
Treat it as a way to hear the voices and prove your workflow works. Once real traffic arrives, the limits on usage and features are what push you onto a paid plan, so check them before you build around the free tier.
Can I use Fish Audio output commercially?
It depends on the plan you're on. Free usage is generally the most restricted, and paid plans are where commercial rights are normally granted.
Read the license terms for your specific plan before shipping audio to customers. If you skip that, the cost of getting it wrong is a takedown or a rebuild, which is worse than any monthly fee.
Does Fish Audio charge per character or per minute?
It depends on which meter you're on. The app is a subscription, and the API is billed by usage, measured by how much you generate.
Because the unit can differ between the two, compare them on your own text volume rather than on the headline rate. Confirm the current unit on the pricing page before you do the math.
How do I stop a runaway workflow from burning credits?
Start with the cheapest fix: store every generated file and reuse it, so a retry never pays twice. Then cap how many times a step can retry, and put a ceiling on how much text any single run may send.
If your account offers spending limits or usage alerts, switch them on.
When a loop misfires overnight, a small bill becomes a large one, and these limits take minutes to set up.
How often does Fish Audio change its prices? There's no schedule you can plan around, so assume prices can change.
Keep the rate and plan details in one configuration spot in your workflow rather than scattered through it. When the pricing page changes, you update one place and re-run your estimate instead of hunting through every step.
Related reading
References
Running the numbers
See what the same workload costs here.
Free forever plan, and every paid plan self-hosts at no extra cost.
See pricing Talk to sales


