Software, AI and digital products for start-ups, enterprises and governmentsBook a free call
Services
Web & Digital PlatformsCustom SoftwareMobile ApplicationsAI & AutomationAR / VR SolutionsTechnology AdvisoryAll services
Industries
Government & Public SectorFinance & FinTechHealthcare & MedTechRetail & E-CommerceEducation & EdTechReal Estate & PropTechAll industries
Company
About UsOur TeamPortfolioInsightsGlobal Offices
More
Our ApproachContactFAQBook a Free Consultation
Engineering

Arabic is not a translation layer: what bilingual delivery actually costs

The real cost of bilingual products lives in layout and direction, not translation.

8 min read

A pattern repeats across the region. A platform is built in English, launches, works. Arabic is scheduled for a later phase, budgeted as a translation exercise, and estimated by counting words. The phase then takes three times as long as planned, produces an interface that native readers find subtly wrong, and leaves a codebase where every future feature has to be built twice.

The estimate was not wrong about translation. Translation is the straightforward part, and the market for it is mature. The estimate was wrong because it treated language as content, when the expensive variable is direction — and direction is structural.

What actually changes when direction flips

Right-to-left is not mirroring. Some things flip, some things do not, and knowing which is which is domain knowledge that a mirroring transform does not have.

  • Layout and reading order flip: the primary axis reverses, so navigation, columns, tables and lists all reorder.
  • Directional icons flip: a back arrow, a next chevron, a progress indicator, an undo symbol.
  • Non-directional icons do not: a clock, a logo, a play button, a graph with a real x-axis, a photograph.
  • Numbers stay left-to-right even inside right-to-left text, which means mixed-direction strings — a phone number, a price, a reference code inside a sentence — need explicit handling or they render scrambled.
  • Punctuation attaches differently, and a naively concatenated string will place a colon or a bracket on the wrong side.
  • Typography changes entirely: Arabic script is connected and cursive, glyphs change shape by position, and a face designed for Latin has no useful relationship to it.

That last point is where most bilingual interfaces betray themselves to a native reader. Arabic needs more vertical space than Latin at the same nominal size, so line height tuned for English produces cramped Arabic. Arabic has no case, so a design leaning on uppercase labels for hierarchy loses that signal entirely and must find another. And a font pairing chosen for its Latin character usually has an Arabic companion that was drawn to fit rather than to lead — which reads as an afterthought, because it is one.

Translation is a content problem with a mature market. Direction is a layout problem, and layout is where the cost lives.

Why retrofitting costs more than building for both

The difference is not the work itself. It is that a codebase written without direction in mind encodes assumptions in thousands of small places, and each one has to be found.

Every hard-coded left or right in a stylesheet is a defect in the mirrored layout. Every margin applied to one side, every absolute position, every transform, every border on a single edge. Modern CSS has logical properties that express the same intent direction-independently — start and end rather than left and right — and using them from the beginning costs nothing. Converting later means auditing every rule in the codebase and deciding, one at a time, whether that particular left meant the reading-start side or literally the left.

The same applies to strings. An interface assembled by concatenating fragments works in one language and breaks in another, because word order is not universal. Building against a message format with named placeholders from the start makes the second language a data exercise; retrofitting it means finding every assembled string in the application.

And it applies to the content model. If content was modelled as fields on a page rather than as entities with translations, adding a language means either duplicating the whole structure or migrating it. The first choice guarantees the two versions drift apart, which is how sites end up with an Arabic section quietly a year out of date.

The decisions that make it cheap

Logical properties, from the first stylesheet

Write margin-inline-start rather than margin-left, padding-block rather than padding-top, inset-inline-end rather than right. The layout then flips correctly when the document direction changes, without a second stylesheet and without a mirroring build step. This costs nothing on day one and is the single highest-return decision in the list.

Locale in the URL, direction on the document

Language belongs in the path so that each version is a distinct, linkable, indexable address with its own metadata, and so the two versions can declare each other as alternates. Direction is set once on the root element and inherited. Detecting language from a browser header and swapping content at the same URL produces one address serving two languages, which is unindexable and unshareable.

Type chosen for both scripts together

Pick the Arabic face as a first choice rather than a fallback, and set its size and line height independently — matching the nominal size across scripts is what produces the cramped result. Test with real content, including the long compound terms that appear in official and financial language and that placeholder text never contains.

Both languages in the same review

The cheapest process change available: no feature is done until it has been seen in both directions. A team that reviews English on Tuesday and Arabic in a batch next quarter will accumulate direction defects faster than it can clear them, and will ship the second language as a permanent second-class surface.

The part that is not engineering

An interface can be technically perfect and still read as translated. Register differs — the formality expected in Gulf official and financial communication is not the register of a Silicon Valley product voice, and a literal translation of breezy English copy lands as unserious. Forms carry assumptions: name structure, address format, the calendar shown alongside the Gregorian one. Numerals themselves are a choice, and the right answer depends on the audience rather than on a preference.

None of that is discoverable by an engineer reading a specification, which is the real argument for bilingual teams rather than a translation vendor at the end of a pipeline. The engineering decisions above make the second language cheap to add. They do not make it good — that takes someone who reads it.

Facing a similar challenge?

Tell us where you are today. We will explain what the work involves and whether you need us at all.