A second language is not a button, it is a second website. That sentence saves or sinks most multilingual projects. Here is what it actually involves, from someone who has built one in four languages.
Start with the question nobody asks
Not "which languages?" but: who maintains them?
A language nobody can proofread goes stale. Add German with nobody in your company who reads German, and a year later there is a price that is no longer true, in a language you cannot check. Two well-kept languages beat four neglected ones.
Translate the URLs too
This is the most commonly forgotten part. If your Finnish page is /fi/services instead of /fi/palvelut, there is an English word in the address of a Finnish page. For visitors that is sloppy; for Google it is a missed signal.
On this site every language has its own addresses: /diensten, /en/services, /fi/palvelut. Blog posts too: /blog/wat-is-llms-txt becomes /fi/blogi/mika-on-llms-txt.
hreflang, in one paragraph
hreflang is the line in your page saying: this page also exists in English, and it is over there. Three things usually go wrong:
- The pair is not mutual. The Dutch page points at the English one but not the other way round. Then it does not count.
- There is no
x-default. That is the version for everyone searching in none of your languages. - The translated page does not really exist. Pointing at a page that redirects to the homepage is worse than nothing.
Machine translation: when, and when not
A machine translation of a blog post is a perfectly good starting point these days. For your homepage, your prices and your terms it is not: that is exactly the text where one wrong word costs you a customer or an argument.
The practical middle: let the machine write the first version and have someone who speaks the language read it once. That is an hour per page, and the difference between "understandable" and "from a company you would trust".
What it costs
Here an extra language is € 400 on top of the package, for the engineering and the structure. The translation itself is your text or a copywriter — I do not put a language live that nobody can confirm is correct.
The honest advice
Start with one language and do it well. Add a language when you have a customer in that country, not because it looks complete. An empty Swedish page convinces nobody in Sweden.
More on how I build: websites. An example of four languages in practice is in the work.
