Multilingual

A translation widget layered over an English page is invisible to search engines and unpleasant to read. Real multilingual support is a routing, authoring and typography decision taken at the start, and this site, shipped in eight languages, is built exactly the way we build yours.

Routes

A real route per language, written by people

01

Every page exists in every language

Each language gets its own URL for every page, so each version can be indexed, linked, bookmarked and shared on its own. There is no cookie deciding what you see, no redirect guessing where you are from, and no script swapping text after the page loads. A searcher in Madrid lands on the Spanish page directly, because it is a page, not a mode.

02

Authored copy, never machine translation

Machine output reads like machine output, and buyers notice in the first paragraph. Copy is written per language in your brand's voice: the argument is rebuilt in the way that language actually persuades, not transposed word by word. Idiom, register and even sentence rhythm differ between markets, and a page that respects that reads as native rather than translated.

03

A language switch with no machinery

The switch is a set of plain links between the same page in each language, in the language's own name. It works with scripts disabled, it never loses your place, and it never traps a visitor in a version they did not choose.

Signals

The signals search engines need

Multilingual SEO fails quietly: the pages look fine while search engines index the wrong version in the wrong market, or file the whole set as duplicates. The defence is a cluster of signals that must all agree.

  • An hreflang cluster on every page. Every language version lists every other, plus a default for searchers whose language the site does not carry. Engines then serve each market its own version.
  • A canonical that points at itself. Each language page declares itself the original rather than deferring to the English one, so it competes in its own market instead of donating its authority elsewhere.
  • Language and direction declared honestly. Every page states its language and text direction in the markup, which screen readers and search engines both rely on.
  • A sitemap that covers the whole matrix. Every page in every language is enumerated, so nothing depends on a crawler discovering the structure by luck.
  • These signals are test-enforced here. The parity of the whole cluster is asserted by the automated suite on every change; a page missing its alternates fails the build. The wider search discipline is on the website SEO page.

Scripts

Right to left, and every script set with care

RTL is a layout system, not a patch

Arabic does not just reverse the text; it mirrors the page. We build stylesheets with logical properties throughout, so the whole composition flips correctly: navigation, grids, forms, captions and figures. A site retrofitted for RTL shows its seams within one screen; a site built on logical properties has none to show.

Typography per script

A type system tuned for Latin quietly breaks other scripts: tracking that smears cursive joins, leading that clips tall characters, faces that cover none of the glyphs. We subset fonts per script so no market downloads weight it cannot use, fall back to system faces where that is the honest choice, and adjust size and leading per script so a Chinese or Devanagari heading is set as carefully as a Latin one.

Details that betray a lazy build

Dates, number formatting, quotation marks and punctuation conventions differ by language, and every interface label down to the form's error messages needs a native value. These details are small, and they are exactly where a visitor decides whether the site was built for them or merely exported at them.

The honest cost

What a language really costs, said up front

Every language you add multiplies content work: each new page, each rewrite, each fact correction must land in every language, every time, or the versions drift apart. We say that plainly at scoping so the language set is a deliberate business decision, sized to the markets you actually sell in, not an aspiration that quietly rots. The build keeps parity mechanical where it can: the structure is shared, the suite fails when a language falls out of step, and a change to shared elements reaches every language at once. The words remain human work, and we budget them honestly.

The proof is what you are reading. This site ships every page in eight languages, from the navigation to the drawing annotations, and the same automated checks that will guard your site guard this one.

Start a website project sales@wwi.dev

Tell us which markets you sell in and we will scope the language set honestly. Reach us via the contact form or at sales@wwi.dev.