Multilingual SEO is usually presented as a translation problem with some technical markup attached. Running this site in twelve languages, English, Arabic, German, French, Hungarian, Italian, Japanese, Korean, Romanian, Vietnamese and both written forms of Chinese, has made it clear that the translation is the easy half.
The hard half is that every rule you rely on in English has a script-dependent version you did not know about. Length limits differ. Structure drifts. Numbers get spelled out by a translator being helpful and stop matching the original. None of this is visible until something checks for it.
The thing that actually made it work was automation, not effort. Eleven separate checks run over the content before anything ships: language coverage, structural parity between an original and its translations, figure consistency, heading order, dead links, and per-script metadata length. Every one of them was written after the corresponding mistake reached production. That is the honest version of how a multilingual site stays correct.
Multilingual SEO Starts With Hreflang
The purpose of hreflang is narrower than most guides suggest. It does not decide which language ranks. It tells a search engine that several URLs are the same content in different languages, so the right one is shown to the right user instead of them competing.
Three rules matter and the rest is detail.
Annotations must be reciprocal. If the English page points to the German one, the German page must point back. A one-way declaration is generally ignored, and this is the most common implementation error by a wide margin. Google documents the requirement alongside the three ways of declaring it.
Every set must include itself. The page’s own URL belongs in its own list.
Use x-default for the page a user gets when nothing matches their language. Without it the fallback is a guess.
The structural decision underneath is where the languages live. Subdirectories under one domain, which is what this site uses, keep everything on one hostname so authority is not divided across twelve properties. Separate domains per country make sense when the businesses are genuinely separate, and rarely otherwise.
Translation Quality Is a Ranking Question
A machine translation that reads as a machine translation performs badly, and the reason is not that search engines detect the tool. It is that the output is generic, and generic content loses the tiebreak to anything more specific.
Two failures recur. Keyword translation. The literal translation of an English phrase is frequently not what people in that language actually search for, so a correctly translated page targets a phrase nobody types. Keyword research has to happen per language, not once in English and then translated.
Cultural and regulatory drift. Prices in the wrong currency, regulations that do not apply in that market, examples nobody recognises. A page about UK data protection obligations translated into Japanese without adaptation is accurate and useless.
The judgement call is what to translate at all. Translating everything is expensive and produces pages nobody in that market wants. Translating your strongest pages, adapted rather than converted, is generally better than translating all of them literally.
The Per-Script Rules Nobody Mentions
This is the part that surprised us most, and it is entirely mechanical.
Meta description length is not one number. A description sized correctly for English runs long in German and Romanian, where the same meaning takes more words, and runs absurdly long in Japanese or Chinese, where each character carries far more meaning. We settled on separate bands per script rather than one global limit, because a single limit is wrong for most of the set.
Body length floors differ the same way. A Japanese article conveying the same content as a 1,100 word English one is a fraction of the word count and a different number of characters entirely. Measuring CJK content in words is meaningless; we check character counts for Japanese and Chinese and word counts elsewhere.
Punctuation differs. Question marks are not universally ?. Arabic uses its own, Chinese and Japanese use a fullwidth form, and Japanese questions frequently end in a full stop instead. A check written to find questions by looking for an ASCII question mark silently reports that every non-English page is fine, which is exactly what ours did until we fixed it.
Figures drift in translation. A translator who spells a number out in words where the English used digits has not made an error, but the page no longer matches its source, and if one is updated the other will not be. We check that the numbers in every translation match the original.
Structure Has to Match
The most useful check we run compares each translation to its original for structural parity: same heading count, same list and table count, same number of FAQ entries.
It catches things nothing else does. A translator who merges two short sections into one has produced good prose and broken the correspondence between the page and its structured data. A missing FAQ entry means the visible page and the FAQPage markup disagree, which is a mismatch that reduces trust rather than raising it.
It also catches omission. A section quietly dropped because it was difficult to translate is invisible on review and obvious to a counter.
What This Costs and Whether It Is Worth It
Honestly: twelve languages is a lot, and the maintenance is real. Every post is twelve files, every correction is twelve corrections, and every check has to run across all of them.
Whether it repays depends entirely on whether you sell into those markets. Traffic in a language you cannot serve is a vanity metric, and the same effort spent on authority in one language usually does more for revenue. The reason to do it is market access, not impression count.
If you do commit, the thing that makes it sustainable is that the checks are automated and run before publication. Twelve languages maintained by discipline alone will drift within a quarter. Twelve languages with a gate that refuses to pass an inconsistent set will not.
Mecanik builds and maintains multilingual sites as part of our website development work, and the first deliverable is usually the checks rather than the content.
Frequently Asked Questions
What does hreflang actually do? It tells a search engine that several URLs are the same content in different languages, so the right one is served to the right user rather than them competing with each other. It does not decide which language ranks. Annotations must be reciprocal, each set must include the page itself, and an x-default should name the fallback.
Should each language have its own domain? Usually not. Subdirectories under one domain keep authority on a single hostname instead of dividing it across separate properties. Country-specific domains make sense when the businesses themselves are genuinely separate, and rarely otherwise.
Does machine translation hurt rankings? Indirectly. The problem is not detection of the tool but that the output is generic, and generic content loses the tiebreak to anything more specific. The bigger failure is keyword translation: the literal rendering of an English phrase is often not what people in that language search for, so keyword research has to be done per language.
Do meta description limits differ by language? Yes, and treating them as one number is wrong for most of a multilingual set. The same meaning takes more words in German or Romanian and far fewer characters in Japanese or Chinese, where each character carries more meaning. Separate bands per script work better than a single global limit.
How do you keep translations consistent at scale? Automated checks run before publication rather than discipline alone. Compare each translation to its original for structural parity, same heading, list, table and FAQ counts, and verify that numeric figures match. Both catch failures that read perfectly well as prose, such as merged sections or a figure spelled out in words.
Comments