CastReader for developers

Text to speech API.
Make it sound like you.

Give your product a voice people remember. Start with a ready-to-use voice or clone one you have permission to use, then bring it to your app with a simple API.

$8/ 1M charactersAffordable multilingual voice cloningPay as you go · No monthly API subscription

Developer preview · 3,000 trial characters after activation.

A little text. A voice of its own.
TEXT TO SPEECHMP3 · Real API audio
Image

Checking supported languages…

No sign-up needed
3 free generations per day

Edit the text and make it yours. Homepage trials never charge your wallet.

$8 / 1M charactersNo monthly API subscription
1,332 voicesBrowse and listen free — no sign-up →
MP3 + WAVAudio files you can save and use
Queued REST APIcURL, Node.js and Python guides

VOICE API · CAPABILITIES

The voice. The language. The timing.

Three building blocks, ready for your next product.

01 / VOICE LIBRARY

1,332 voices. Find your sound.

Browse the complete shared library without signing up. Filter by sample language, gender and style; preview first, then use your choice in your app.

A FEW VOICES TO MEET
NarrationCharactersConversationAdvertising
  • Image
    RowanMale · Audiobooks & stories
  • Image
    NovaFemale · Animation & games
  • Image
    LilyFemale · Social media & podcasts
Node.js · usage excerpt
await client.generate({
  voice: 'rowan',
  text: 'Every story needs a voice.',
  language: 'en',
});
Explore the voice library
02 / MULTILINGUAL CLONING

Your voice. 10 languages.

Clone an authorized recording. Reuse its voice ID to speak text in a supported language.

YOUR AUTHORIZED RECORDING
Clone & preparevoiceId
Node.js · reuse a cloned voice
// voiceId: your prepared clone
await client.generate({
  voice: voiceId,
  text: '让每一句话,都有你的声音。',
  language: 'zh',
});
EnglishChineseGermanJapaneseFrenchSpanishKoreanPortugueseRussianItalian
Hear real language samples
03 / SPEECH TIMESTAMPS

Every word, in time.

Get English word or word-group intervals. Build reading highlights and synchronized captions.

ALIGNMENT EXAMPLE · NOT A LIVE PLAYER
Hello0.00–0.32sfrom0.32–0.56sCastReader0.56–1.20s
POST /v1/audio/speech · body excerpt
{
  "text": "Hello from CastReader.",
  "language": "en",
  "return_timestamps": true
}
start_time end_timeMeasured intervals · seconds
Try synchronized highlighting

FOR AI-ASSISTED DEVELOPMENT

Building a TTS app with AI?

Evaluate fit, hear actual outputs, check the cost and give your coding assistant a concrete integration contract.

Integration map · not a complete program
// Official context, examples and limits
GET /integration-manifest.json
GET /openapi.json
GET /reports/api-verification.json

A familiar voice. A clear contract.

Speech your application can work with.

Keep the voice consistent, understand the bill, and pick up where a request left off.

01

A voice that stays yours

Create a private voice from a recording you are authorized to use. Reuse its ID across prompts instead of uploading a reference for every request.

Voice cloning workflow →
02

Know the cost before the call

Count normalized characters, estimate the cost, and check actual usage in the console. Playground and your backend follow the same billing rules.

Pricing and character calculator →
03

Retries that respect your balance

A stable task ID and idempotency key let you check progress and recover saved audio. The same successful request is charged once.

Retries, errors and recovery →

From recording to request

One voice. Three ways to add it.

Record yourself, invite a speaker to record, or upload an existing audio file. Each path creates a private voice in your API workspace.

1

Get access and a key

Activate developer access, sign in with your CastReader account, and create a named API key.

2

Add an authorized voice

Use a clean, single-speaker reference. Keep the voice ID once processing completes.

3

Submit, check, download

Send your text, save the task ID, and download the finished audio. Inspect the usage record in your console.

Pay as you go

Multilingual voice cloning.
A friendlier price.

No monthly API subscription. Use your available trial first, then top up a separate API wallet.

Explore API pricing

$8 / million characters

100 paid characters
$0.0008
10,000 paid characters, across requests
$0.08
Waiting in the queue
Free
Download the same retained result
No new charge

Billable characters are Unicode code points after NFC normalization. Internal spaces and punctuation count. Trial allowances and current limits apply.

Available in this preview

Know the fit before you integrate.

We publish the current limits alongside the API contract. Check these before planning a production workflow.

Full capabilities and limits →
Language
English, zh, de, ja, fr, es, ko, pt, ru, it
Text per task
Up to 500 characters
Generation
1 at a time; queue supported
Task deadline
10 minutes; waiting is free
Output
MP3 or WAV file
Real-time / streaming
Not available in this preview
Processing region
China or United States

Developer resources

The details, ready to build with.

Straight answers

Before your first API call.

What is the CastReader Voice API?

CastReader Voice API is a REST text-to-speech service with a selectable voice library and private, authorized voice cloning. Generate speech in the configured languages for reading, learning, voiceovers and product guidance. It returns MP3 or WAV and provides queued tasks and usage records.

How is the API different from the CastReader reading apps?

The browser extension and mobile apps help people listen to content. Voice API lets developers generate audio inside their own products. You use your CastReader identity, but API access, credits, voices, and usage are managed separately. A Pro reading plan does not include API usage.

How much does text to speech cost?

Successful generation costs $8 per million billable characters, with no monthly API subscription. A paid 100-character request costs $0.0008. Available trial characters are used first. Characters are Unicode code points after NFC normalization, including internal spaces and punctuation; this is not UTF-8 byte billing.

Can I use my own voice or a voice someone shares with me?

You can create a private voice from an authorized recording. The console offers self-recording, a recording invitation, and audio upload. You need the speaker’s permission for cloning and your intended use. Personal voices from the reading apps are not automatically imported into API workspaces.

Is this a real-time or long-form speech API?

The current preview is for short speech and queued workflows. Longer content needs application-side splitting and playback assembly. It does not offer real-time conversations, streaming, or an uptime or latency SLA. Check the published capabilities for current input limits before integrating.

What happens if I retry or close the browser?

A queued task persists when you leave the page. Save its job ID and the original Idempotency-Key. Repeating the same input with that key returns the same task; downloading a retained successful result does not generate or charge again. Waiting and tasks cancelled before execution are free.

Where is API data processed?

One website, account, API key and prepaid wallet. Account, billing and resource metadata use the US control plane. The dispatch API selects China for mainland-China networks and the US elsewhere. Text, reference recordings, inference and private audio stay in the selected region, with no cross-region voice-data fallback. International voice data is separate from the China service, with no automatic cross-region fallback. See the data and voice permissions page for handling and retention rules.

Bring your own voice

Build something worth listening to.

Tell us what you are building, or explore the API before you commit.

Already have access? Open your console.