Arabic token cost: why Arabic uses more tokens and the fix
Why the same text costs more tokens in Arabic than in English, measured on a real tokenizer, with a cost example and ways to cut Arabic token use.
Arabic usually costs more per message than English: the price per token is the same in every language, but the same meaning splits into more tokens. On o200k_base, OpenAI's tokenizer for its recent GPT models, our Arabic test texts used 1.2 to 1.5 times the tokens of their English originals. Diacritics and Arabic-Indic digits widen the gap.
Why Arabic uses more tokens#
A model doesn't read words. A tokenizer first cuts the text into pieces from a fixed vocabulary, and the provider bills every piece the model reads and writes. Common English words are often one piece each. Many Arabic words split into two to four.
Attached letters are not the main cause. «وسيكتبونها» is 4 tokens, while "and they will write it" is 5. «وبكتبهم» is 3, while "and with their books" is 4. The gap comes from ordinary words that split:
| Text | Tokens | How it splits |
|---|---|---|
| Your subscription renews automatically every month. | 8 | Your · subscription · renew · s · automatically · every · month · . |
| يتجدد اشتراكك تلقائيًا كل شهر. | 12 | يت · ج · دد · اشت · راك · ك · تلق · ائي · ًا · كل · شهر · . |
Across our four test texts, English used 1.13 tokens per word and Arabic used 1.91. The Arabic versions had fewer words (204 against 269), but not enough to close the gap.
What we measured#
We wrote four English texts, translated each into Modern Standard Arabic and counted both with OpenAI's tiktoken library (version 0.14.0) on o200k_base, on 2026-11-01:
| Text | English | Arabic | Arabic ÷ English |
|---|---|---|---|
| Support reply | 81 | 101 | 1.25 |
| Product description | 70 | 104 | 1.49 |
| Model instruction | 73 | 85 | 1.16 |
| Short explainer | 80 | 100 | 1.25 |
| All four | 304 | 390 | 1.28 |
Three more results from the same test:
- Older tokenizers are much worse. On cl100k_base, which OpenAI's library maps to its older GPT models, the English counts stayed the same and the four Arabic texts took 858 tokens: 2.82 times the English.
- Diacritics multiply the count. The support reply with full diacritics took 345 tokens, against 101 without them: 3.4 times.
- Digits matter too. A short order notice with dates and amounts took 39 tokens in English, 43 in Arabic with Western digits (0–9) and 53 with Arabic-Indic digits (٠–٩).
We also counted the prose of 48 pages of our own documentation, which we publish in both languages. There, Arabic took 1.18 times the English tokens (median 1.20, range 1.06 to 1.34). Technical pages keep model names, commands and paths in Latin script, and those count the same in both languages, so the gap narrows. The ratio depends on the text, so count your own.
Do Claude and Gemini count Arabic the same way?#
No. Each provider uses its own tokenizer, so the same Arabic text gives a different count on each one, and the ratios above hold for o200k_base only.
| Models | Tokenizer | How to count |
|---|---|---|
| GPT | o200k_base | Offline, with the tiktoken library |
| Claude | Anthropic's own | The count_tokens endpoint |
| Gemini | Google's own | The countTokens method |
Anthropic describes its token count as an estimate, and notes that its newer Claude models use a newer tokenizer that produces more tokens for the same text, so recount your prompts after you switch models. Google's rule of thumb, about 4 characters per token or 60 to 80 English words per 100 tokens, is a general estimate; count Arabic text directly. Either way, the bill follows the usage field in each response.
A cost example#
Say a support bot handles 3,000 chats a month. In English, each chat averages 1,500 input tokens (instructions, history and the customer's message) and 300 output tokens. That is 4.5 million input and 0.9 million output tokens a month on gpt-5.6-sol:
Official price from the provider's page, checked October 19, 2026.
4.5M input tokens and 900K output tokens
Official price from the provider's page, checked October 19, 2026.
The same bot in Arabic, at about 1.3 times the tokens (the ratio across our four texts), uses 5.85 million input and 1.17 million output tokens:
5.9M input tokens and 1.2M output tokens
Official price from the provider's page, checked October 19, 2026.
The price per token is identical in both runs. Only the count changes, and the difference grows with your volume.
Six ways to cut Arabic tokens#
- Keep fixed instructions in English. The system prompt is sent with every request. Our model instruction took 73 tokens in English and 85 in Arabic, and the model can still reply in Arabic.
- Skip diacritics unless the meaning depends on them. Full diacritics took 345 tokens against 101 for the same reply.
- Use Western digits in data. Keep 0–9 in prompts and stored data, and convert to Arabic-Indic digits for display if you need them.
- Cap and shorten replies. Output costs more than input on every chat model in our list. Ask for short answers and set a limit:
max_completion_tokensin Chat Completions,max_output_tokensin Responses ormax_tokensin Messages. - Cache long fixed parts. Long instructions or reference text that repeat on every request can be cached, and cache reads are billed below normal input. Claude needs
cache_control, and GPT caches long repeated prefixes automatically. The details are in Prompt caching. - Use a smaller model for simple tasks. GPT models on the same tokenizer count the same text the same way, so a smaller model cuts the price per token, not the count. Compare prices on the models page.
Count tokens before you send#
For GPT models you can count offline. This script counts the two sentences from the table above:
import tiktoken
enc = tiktoken.get_encoding("o200k_base")
for text in ["Your subscription renews automatically every month.", "يتجدد اشتراكك تلقائيًا كل شهر."]:
print(len(enc.encode(text)), text)It prints 8 and 12. For Claude models, send the request body without max_tokens to POST /v1/messages/count_tokens. It returns input_tokens without running the model. If it returns 404, send one short real request and read its usage. For Gemini models, use countTokens. In production, log usage from every response: it holds the tokens you are billed for.
How it works on 5abeer#
Each model on 5abeer has one price per million tokens for input and one for output, the same for Arabic and English text. A request costs the tokens in its usage times that model's price, and every API price is below the model's official price.
Create a key#
Create an API key in your dashboard. The steps are in Create a key.
Add balance#
Top up your balance with one of the payment methods. Requests draw from it, as described in Balance.
Measure your own text#
Send a few typical Arabic prompts and read
usagein each response. That gives your real ratio and cost per request.
Prices for every model are on the models page and the API page.
Questions#
Is Arabic priced higher per token?#
No. A token costs the same in every language. An Arabic message costs more only because the same meaning takes more tokens.
How many tokens is one Arabic word?#
On o200k_base, our four Arabic texts averaged about 1.9 tokens per word, counting words by spaces, against about 1.1 for the English texts. Arabic attaches small words such as "and" and "the" to the next word, so the same meaning takes fewer words, but each word splits into more tokens.
Should I translate Arabic to English before sending?#
Usually not. The translation costs tokens of its own and can shift the meaning. Keep the fixed instructions in English and send the customer's text as it is.
Do these ratios hold for Claude and Gemini?#
No. We measured o200k_base, the tokenizer of recent GPT models. Claude and Gemini use their own tokenizers, so count with count_tokens or countTokens.
Are cached tokens billed at the full price?#
No. Cached tokens are billed at the lower cache read price shown on each model's page.
Sources#
Checked on 2026-11-01:
- OpenAI: tiktoken and its model-to-encoding table
- Anthropic: Token counting
- Google AI for Developers: Understand and count tokens
- 5abeer test: four English texts and their Arabic translations, plus the prose of 48 documentation pages, counted with tiktoken 0.14.0 on 2026-11-01
Get started#
Compare prices on the API page, or create a key and measure your own Arabic text in usage.
Related guides
- How to get an API key for Claude, GPT and GeminiWhat an AI API key does, where to create one at Anthropic, OpenAI and Google, what it costs to use, and how to keep it safe.
- An OpenRouter alternative below official pricesHow OpenRouter charges for models, the fees it publishes, and when an API that sells Claude, GPT and Gemini below official prices costs less.
- AI subscription vs API: the difference and which you needAn AI subscription runs the provider's own apps for a fixed price. An API bills your own code by usage. How they differ and how to choose.
Ready to start?
Pick a plan that runs the official apps, or create an API key to use from your own code.