Darbase
Book a demo
Back to all posts

August 1, 2026 · 6 min read

What Arabic-first actually costs to build

Most software sold into this region is an English product with an Arabic translation layer. It is usually possible to tell within about thirty seconds.

Here is what building the other way actually costs, in the order the costs arrive.

The cheap part: layout

Right-to-left is largely a discipline problem, and modern CSS made it a solved one. Use logical properties — margin-inline-start rather than margin-left, padding-inline-end rather than padding-right — and the layout mirrors for free.

The discipline is the whole cost. One ml-4 in a shared component and a panel sits against the wrong edge for half your users. We sweep for physical properties on every branch, because there is no runtime error to catch it: the page renders, it just renders wrong for people who are not reading the review.

The expensive part: content is not layout

A listing needs an Arabic title and an Arabic description as their own fields, not as translations of the English ones. A listing that sells in Arabic is written in Arabic. The phrasing that works, the details a buyer wants first, and the register are all different — and none of that survives a translation pass.

The same is true of AI. An Arabic persona prompt is written, not translated. We have a test asserting our Arabic agent personas are not the English ones and contain Arabic script, because key-parity checks pass happily on a copy-pasted English string, and "bilingual" that silently falls back to English is worse than monolingual: it is monolingual plus a claim.

The part nobody warns you about: calendars

ar-SA defaults to the Umm al-Qura calendar in CLDR. So an unpinned Intl.DateTimeFormat('ar-SA', { dateStyle: 'long' }) renders Hijri dates. No error, no warning. If you have not thought about it, your Arabic users see a different date system from your English users, and your English-reading team will never notice.

We have hit this three times in one codebase — in a report renderer, in a changelog, and in the blog you are reading. The rule now is that every date formatter pins its calendar explicitly, in both directions: ar-SA-u-ca-gregory and en-US-u-ca-gregory.

Where a Hijri date is genuinely wanted — and for Saudi tenants it often is — we show both, deliberately, rather than letting the locale decide silently.

The honest gap

Doing this properly means Arabic content is real work with a real cost, which means it lags. Our help centre is a live example: some articles exist in Arabic and some do not.

We chose to make the gap visible rather than fill it with machine translation. An article that has not been written in Arabic renders in English behind a notice saying so. A mistranslated setup step costs somebody an afternoon and their trust; an English article costs them a slightly worse reading experience.

That is not a good outcome. It is the least bad one, and saying which is which is part of the job.

What Arabic-first actually costs to build