Audra FAQ
What's under audra-essential? Essential — hosted inference plus our production stack: chunking, −16 LUFS mastering, QA gate, and billing. See /docs/engine.
Why pay if the weights are open source? You pay for uptime, a production API, long-form chunking, loudness mastering, automated QA, and zero GPU ops — not the model weights.
Is it OpenAI compatible? Yes. Change your client to POST /v2/speech with model audra-essential. See the quickstart in /docs.
Do you support voice cloning? No. Audra provides preset voices only. For cloning or custom brand voices, use ElevenLabs.
What languages are supported? Essential ships 72 voices across 10 languages: English (US & UK), Japanese, Mandarin Chinese, Spanish, Portuguese (Brazil), Hindi, French, Italian, German, and Dutch. English remains the primary language; quality varies by voice and locale.
What's the max text length? 50,000 characters per synchronous request (413 if exceeded). For longer batch narration, use POST /v2/speech/jobs (up to 500,000 characters) and poll until completed. Optional webhook_url notifies your server when the job finishes. Text above ~8,000 characters on /v2/speech is auto-queued as a background job unless you pass X-Audra-Sync: true.
How does billing work? Prepaid credits, billed per Unicode character of trimmed input. Credits reserve when a render starts; if the job fails QA (audio shorter than expected or long silence gaps) or errors, credits auto-refund.
Is there a free tier? Yes — 25,000 characters once on signup, for evaluation.
Can I use the free tier commercially? No. Commercial use requires a paid credit purchase, which unlocks commercial flag and higher rate limits. Send X-Audra-Commercial-Use: true on production renders after purchasing.
I lost my API key — can you resend it? We cannot resend the same key. Sign in at /dashboard (Google or email), open /dashboard/keys to create or rotate keys, or use /dashboard/recover for account recovery (revokes all keys and issues one new key via email).
What's your refund policy? Failed renders (QA gate or server error) auto-refund credits to your balance. Unused prepaid packs: email hello@audratalks.com within 7 days for manual refund review — not automated in Stripe yet. See /refund.
Do you offer an SLA? Best-effort in v1 — no uptime guarantee. Check /status for current health.
What is your data retention policy? Background speech jobs store the submitted text and generated audio so you can poll and download results. Completed or failed jobs are eligible for cleanup after a configurable retention period (24 hours by default); pending jobs and delayed cleanup can remain longer. Successful renders may also be held in an in-memory audio cache until eviction or a service restart. Account, usage and billing records are retained separately. See /privacy.
What are the rate limits? 60 requests/minute on free tier, 120 requests/minute on commercial (paid) accounts. On 429, respect the Retry-After header (seconds). Long-form jobs should use fewer, larger requests (up to 50k chars) instead of many tiny ones.
How fast is rendering? Is it real-time? Audra is optimized for batch narration, not sub-200ms live agents. On GPU (Modal), ~500 chars often completes in under 15 seconds; ~10k chars in under 2 minutes sync. Long jobs (50k+ chars) should use POST /v2/speech/jobs. Sync HTTP is capped at 50k characters; use background jobs for chapters or when you need webhook delivery.
How does quality compare to ElevenLabs? Different tradeoff, not a clone. Essential presets with −16 LUFS mastering and QA-gated billing — strong for podcasts, YouTube, courses, and audiobook-style narration at $25/1M. ElevenLabs wins on voice cloning, a larger library, and sub-200ms realtime. Try 25k free chars on your scripts. See /vs/elevenlabs.
What support do you offer? v1 is best-effort — no SLA or phone support. Start at /support and /faq. Email hello@audratalks.com from your account email with request IDs or timestamps. Check /status before escalating. Enterprise teams above 50M chars/month can email for custom pricing and priority handling.
How long does ElevenLabs migration take? Under 5 minutes if you're already on the OpenAI SDK. See the migration guide at /migrate.
What audio formats are supported? MP3 (128 kbps, default) and WAV. Set response_format in your request.
What are delivery_profile, script_enhance, and audio_post? Optional quality fields on POST /v2/speech. delivery_profile tunes long-form prosody (legacy, podcast_v2, podcast_v3, podcast_v4). script_enhance adds paragraph breaks and host-style intros (off, auto, podcast). audio_post applies a mastering chain (off, auto, broadcast, warm, podcast). Try presets in /dashboard/playground — see /docs.
How do I fix pronunciation or add custom words? A server finance lexicon applies common terms (401(k), Roth IRA, etc.) before synthesis. For brand names and tickers, use GET/PUT/DELETE /v2/lexicon (up to 100 entries per account; SDK getLexicon/setLexicon). POST /v2/phonemize previews phonemes and flags unknown tokens (has_unknown_phonemes). Use speakable spellings in lexicon entries; avoid raw IPA unless you use Audra markup [word](/ipa/). See /docs.
Do you support background batch rendering or webhooks? Yes. POST /v2/speech/jobs queues batch renders up to 500k characters. Poll GET /v2/speech/jobs/{id} until status is completed, then download GET /v2/speech/jobs/{id}/audio. Pass webhook_url for a completion callback.
Are volume discounts automatic? Not at checkout. Prepaid credit packs are always $25 per million characters. Your /v2/usage response shows an effective rate by monthly volume for planning — tier pricing is not applied to pack purchases yet.
Can I self-host instead? Yes — audra-essential builds on Apache 2.0 licensed components. See /docs/legal/open-source. We win on convenience, QA, and API.
Do you offer enterprise plans? Email hello@audratalks.com when you exceed 50M characters/month for custom pricing and support.
Why am I getting HTTP 402? 402 means insufficient credits or commercial use is blocked. Top up at /dashboard/billing. After any paid pack, send header X-Audra-Commercial-Use: true on production renders. Free-trial evaluation renders do not need the header.
Why am I getting HTTP 502, 503, or 504? Usually a cold-start while the GPU TTS worker wakes (often 5–30 seconds after idle). Wait a few seconds and retry — the dashboard and playground retry automatically once. In your own client, retry 502/503/504 with backoff before escalating to support.
My HTTP client times out on long scripts — what should I do? Set client timeouts to at least 3600 seconds for sync. Text above ~8k characters auto-queues as a background job unless you pass X-Audra-Sync: true. For chapters or batch pipelines, use POST /v2/speech/jobs (up to 500k chars) and poll or pass webhook_url.
Does SSML work the same as ElevenLabs? Audra supports common SSML on POST /v2/speech — e.g. <break time="600ms"/>. Try the playground at /dashboard/playground. Not every ElevenLabs tag maps 1:1; test your script before shipping.
Why am I getting HTTP 401 or 403? Missing or invalid API key. Send Authorization: Bearer sk-live-… on every request. Create or rotate keys at /dashboard/keys. Test keys and live keys are not interchangeable in production.
How do I install the Audra SDK? npm install @nickaisbitt/audra or pip install audra. The OpenAI SDK also works — point base URL at https://audratalks.com/v1 and use model audra-essential. See /docs.
How do I retry without double billing? Send header Idempotency-Key with a stable UUID on POST /v2/speech. A key already processed or in progress returns HTTP 409; it does not replay audio. Retain the original audio or job ID. See /docs#idempotency.