Skip to main content

Arabic TTS API — 10 MSA Voices, Unlimited for $9.99/mo (2026)

Some TTS APIs bill by UTF-8 byte instead of by character, and Arabic is expensive to count that way: every Arabic letter is 2 bytes and every diacritic adds 2 more, so fully vocalized Arabic runs 3–4 bytes per written character.

EasyVoice takes the meter away entirely: 10 dedicated Modern Standard Arabic voices behind an OpenAI-compatible API, $9.99/mo flat with unlimited characters, plus a free API tier to build against before paying anything. This page is the developer reference — pricing math, a working curl example, latency numbers, and RTL handling notes. Looking for the in-browser Arabic generator instead of the API? That lives at Arabic Text to Speech.

No signup — 2,000 chars/day anonymous in the browser; a free account raises it to 5,000/day and an API key

Three facts worth quoting

  • EasyVoice serves 10 Modern Standard Arabic TTS voices through an OpenAI-compatible API for $9.99/month flat, with no per-character or per-byte metering.
  • Fully vocalized Arabic runs roughly 3–4 UTF-8 bytes per written character, so an API that bills per byte charges more for Arabic than for the same number of English characters.
  • On EasyVoice Pro, 1M Arabic characters and 10M cost the same $9.99 a month (fair use applies), diacritics included.

Why Arabic costs more on byte-billed APIs

For English, bytes are roughly equal to characters: Latin letters are 1 byte each in UTF-8, so a per-byte price and a per-character price come out close. Arabic breaks that equivalence:

  • Every Arabic letter (Unicode block U+0600–U+06FF) encodes to 2 bytes in UTF-8 — before you've added anything.
  • Each diacritic (tashkeel) — the marks that disambiguate pronunciation for TTS — is its own codepoint at 2 more bytes per mark.
  • Example: مَرْحَبًا is 5 written letters, but 9 codepoints — 18 UTF-8 bytes. That's 3.6 bytes per written character.
  • Fully vocalized Arabic therefore runs ~3–4 bytes per written character, so an API that bills per byte counts 3–4 times as many units for Arabic as for the same number of English characters.

The perverse incentive: on a byte-billed API, adding the diacritics that make Arabic TTS pronounce words correctly literally raises your bill. On EasyVoice, diacritics are free — because everything is.

What Arabic costs on EasyVoice

PlanPriceWhat you get
EasyVoice Free$02,000 characters a day anonymous in the browser; 5,000 a day with a free account, which also gets a free API key. Two Arabic voices (ar_m1 and ar_f1).
EasyVoice Pro$9.99/mo flat — unlimited charactersFlat subscription, not a meter (fair use applies). All 10 MSA voices and the OpenAI-compatible endpoint. Quarterly $24.99, annual $59.99.
EasyVoice 7-Day Pass$4.99 one-time7 days of Pro studio access, no subscription and no auto-renewal.

Unvocalized Arabic runs about 2 UTF-8 bytes per written character and fully vocalized text 3–4 (byte math above). EasyVoice meters neither bytes nor characters.

Quick start: one curl, Arabic MP3 out

The endpoint is OpenAI-compatible — Bearer auth, the familiar {model, voice, input, response_format} body. If you already call OpenAI's speech API, this is a base-URL change plus an Arabic voice ID:

curl -X POST https://easyvoice.ae/api/v1/audio/speech \
  -H "Authorization: Bearer $EASYVOICE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "tts-1",
    "voice": "ar_m1",
    "input": "مرحباً بكم. هذا صوت عربي فصيح مولد عبر واجهة برمجة التطبيقات.",
    "response_format": "mp3"
  }' \
  --output arabic-demo.mp3

The response is a complete MP3 (or WAV with "response_format": "wav") — no streaming protocol to handle. Get a free API key and the full reference, including error codes and rate limits, at the API docs.

The 10 Modern Standard Arabic voices

Five male and five female MSA voices, all usable by ID through the API. ar_m1 and ar_f1 are on the free tier; all 10 are included with Pro. Lower-numbered voices are neutral, broadcast-register reads (IVR, news-style narration); higher-numbered voices are progressively warmer and more expressive (marketing, storytelling).

Male

  • ar_m1 — free tier
  • ar_m2
  • ar_m3
  • ar_m4
  • ar_m5

Female

  • ar_f1 — free tier
  • ar_f2
  • ar_f3
  • ar_f4
  • ar_f5

Latency, measured on our own infrastructure

  • Warm requests return audio in about 1 second for short texts (measured July 2026) — fast enough for IVR prompt generation and interactive app flows.
  • The Kokoro English lane on the same API synthesizes at roughly 1.1 ms per character on GPU — the same infrastructure serves both language lanes, so one integration covers your Arabic and English output.
  • Responses are complete files, not chunked streams — simpler client code, and the latency number you measure is the number your users get.

RTL and encoding notes for integrators

  • Send plain UTF-8 Arabic in the JSON input field — no bidi control characters, no reshaping libraries, no RTL markers. Logical (typed) character order is correct.
  • Mixed-direction text works: Arabic sentences containing Latin brand names, Western numerals, or currency codes (AED, SAR, KWD) are read in natural order.
  • Both Eastern (١٢٣) and Western (123) numerals are supported.
  • Add tashkeel where a word is ambiguous — it improves pronunciation, and on a flat-rate plan it costs nothing extra.
  • Output MP3/WAV is direction-agnostic — it drops into any player, editor, or pipeline unchanged.

Arabic TTS API — frequently asked questions

Is the Arabic TTS API OpenAI-compatible?▾

Yes. EasyVoice exposes an OpenAI-compatible speech endpoint at /api/v1/audio/speech: Bearer-token auth and the same {model, voice, input, response_format} request body as openai.audio.speech.create(). Migrating an existing OpenAI TTS integration to Arabic output means changing the base URL and API key and swapping the voice ID to one of the 10 Arabic voices (ar_m1–ar_m5, ar_f1–ar_f5). Responses are complete MP3 or WAV files.

How is Arabic API usage priced — bytes or characters?▾

Neither, on Pro: EasyVoice Pro is $9.99/mo flat with unlimited characters (fair use applies), so there is no meter to think about. This matters for Arabic specifically because byte-billed APIs quietly charge more for Arabic than for English: Arabic letters are 2 bytes each in UTF-8 and each diacritic adds 2 more, so fully vocalized Arabic runs 3–4 bytes per written character. On EasyVoice, 1M Arabic characters costs the same $9.99 as 10M, diacritics included.

Does the Arabic API have a free tier?▾

Yes. A free EasyVoice account includes 5,000 characters per day and a free API tier — create an account, generate an API key on the dashboard, and call the endpoint with no card on file. Two Arabic voices (ar_m1 and ar_f1) are available on the free tier; all 10 are included with Pro at $9.99/mo. You can also try the voices anonymously in the browser first — 2,000 characters per day with no signup at all.

Which Arabic dialect do the API voices speak?▾

All 10 voices use Modern Standard Arabic (MSA / الفصحى) — the formal register understood across all 22 Arab League countries and used in broadcast news, e-learning, IVR, and government content. Regional dialects (Gulf, Egyptian, Levantine, Darija) are not supported. For an API product serving a pan-Arab audience from one voice asset, MSA is the standard choice.

Do the voices handle diacritics (tashkeel) and Arabic numerals?▾

Yes. The engine accepts fully vocalized or unvocalized Arabic input — adding tashkeel where a word is ambiguous improves pronunciation accuracy, and because EasyVoice does not meter characters or bytes, adding diacritics never raises your bill. Both Eastern (١٢٣) and Western (123) numerals are read correctly, along with common currency terms (درهم, ريال, دينار, AED, SAR, KWD).

How fast is the API — is it production-ready for IVR and apps?▾

On our own production infrastructure (measured July 2026), warm requests return audio in about 1 second for short texts, and the Kokoro English lane on the same API synthesizes at roughly 1.1 ms per character on GPU. Requests return complete audio files (MP3/WAV) rather than a chunked stream, which keeps client code simple: one POST, one file, ready for IVR prompts, app audio, or a rendering pipeline.

Do I need to escape or reshape RTL Arabic text before sending it?▾

No. Send plain UTF-8 Arabic in the JSON "input" field — standard JSON string encoding is all you need, with no RTL markers, no bidi control characters, and no text reshaping. Character order in the payload is logical order (the order Arabic is typed), which is exactly what any UTF-8 string already is. The returned MP3/WAV is direction-agnostic and drops into any audio pipeline.

Can I use the Arabic API output commercially?▾

Yes. Commercial use is allowed on every plan, including Free — Arabic IVR prompts, e-learning narration, YouTube voiceover, accessibility audio, and audio inside your own apps — with no attribution, royalty, or per-use licence fee. You own the audio you generate. The one boundary: running a TTS or voice service for third parties on top of EasyVoice (reselling API access or generation capacity) needs a separate written agreement. Pro ($9.99/mo) adds all 10 Arabic voices and no daily cap; quarterly ($24.99), annual ($59.99), and a 7-day pass ($4.99) are also available if a monthly plan doesn't fit the project.

Billing, commercial rights, data retention and the free/Pro limits are answered in full on the EasyVoice FAQ.

No signup — 2,000 chars/day anonymous; a free account raises it to 5,000/day and adds an API key

Related pages