Skip to content
modernwebsite.

Development

Multilingual Sites: What Has to Change Structurally

Adding a language is not a translation task. If the structure is wrong, the two versions compete for the same search results.

Published
24 March 2026
read
7 min

The common approach is to add a language switcher, run the content through a translator, and store both versions on the same page. It works until you look at search results and find your English page ranking in Türkiye, your Turkish page nowhere, and both of them cannibalising each other.

Getting this right is structural, and almost all of it is decided before any translation is written.

Every language needs its own URL

A search engine indexes URLs, not toggles. If both languages live at the same address and the content swaps based on a cookie or a script, only one of them can be indexed — and you do not get to choose which.

Give each language its own path: the primary language at the root, the second under a prefix. Then go further and localise the path itself. A Turkish visitor should see a Turkish URL, not an English one with Turkish content behind it.

hreflang, and the reciprocity rule

hreflang tags tell search engines that two pages are the same content in different languages, so the right one is served to the right person. The rule people miss is that the relationship must be declared in both directions: if the English page points at the Turkish one, the Turkish one must point back.

Add an x-default pointing at whichever version a visitor with no matching language should get. Without it, search engines guess.

Metadata is content, not chrome

Titles, descriptions and structured data all need translating, and they need translating well — a title is the sentence deciding whether someone clicks. Copying the English description into the Turkish page is a common shortcut and a visible one.

This is also where a good admin panel earns its keep. If SEO fields are per language and editable, your team can improve them over time. If they are generated from the translated body, they cannot.

The details that only show up later

Dates, numbers and currencies format differently. Turkish uses a comma as the decimal separator; English does not. Form validation messages, error states, email notifications and the cookie banner all need translating too — these are the things that get missed, because nobody reviews them during design.

Text length changes as well. Turkish runs longer than English in most sentences, and German longer still. A layout tested only in the shortest language will break in the others.

Plan for the third language

Adding a second language to a structure built for one is expensive. Adding a third to a structure built for two should be almost free. If it is not, the structure was wrong — and the second language just hid it.

Have a project like this?