A Croatian business selling abroad sooner or later comes to the question of a second language. The answer most often offered is a plugin with automatic translation, because it's cheap and done in an hour. It works as a help for the visitor, but it doesn't do the job the site is being translated for: it doesn't bring visitors from foreign markets.
This post is about how to set up a multilingual site so it does both jobs.
Why automatic translation doesn't solve the problem
A plugin that translates in the browser changes the text after the page has loaded. Google generally indexes what came from the server, so the Croatian version. The translated versions often don't have their own address, so there's nothing to index.
The other part is quality. Machine translation is good for understanding these days, but it shows in sales copy. A German customer notices a bad German sentence as quickly as you'd notice a bad Croatian one, and on the very page where they decide whether to send you an enquiry.
URL structure
The first thing to decide, and hard to change later.
Subdirectory: yourdomain.hr/en/. The most common choice and the best for most businesses: all the domain's authority stays in one place, and maintenance is simple.
Subdomain: en.yourdomain.hr. Makes sense when the markets really are separate, with their own content and team.
A separate domain per country: yourdomain.de. The strongest local signal and the highest cost, because each domain builds its authority from scratch. Makes sense when you really do business in that market.
A parameter in the address: ?lang=en. Avoid this. Search engines handle such addresses poorly.
For a Croatian business that exports, a subdirectory is almost always the right answer.
hreflang tags
This is the part that tells Google which version belongs to which language. Without it the versions compete with each other and Google picks on its own, often wrongly.
Three rules that aren't broken:
Reciprocity. If the Croatian page claims the English version is its counterpart, the English one has to return the favour. Google ignores a one-way tag entirely.
Every version lists itself too. The list has to include every language, including the one the page is in.
x-default for visitors outside the list. It marks the version offered when no language matches.
A common and costly mistake: a tag pointing to a page that doesn't exist. If the English version of a post hasn't been translated, you mustn't claim it exists. Better no tag than a wrong one.
What gets translated, not just the text
Translating the body text is the smaller part of the job. The rest:
- The page title and meta description. If they stay in Croatian, Croatian text shows in foreign search results.
- Page addresses.
/usluge/izrada-web-stranicain English should be/services/custom-websites. - Images with text. A graphic with a Croatian caption stays Croatian.
- Forms and error messages. The place translation is most often forgotten.
- Structured data, including currency and opening hours.
- Legal texts. Terms and privacy policy in the customer's language.
- Dates, numbers and currencies. The notation differs by market.
Which languages to pick
Not all at once. Every language is content that gets written and maintained forever.
For Croatian businesses the usual order:
- English: covers the most markets for the effort.
- German: big for tourism, manufacturing and exports.
- Italian: the Adriatic, hospitality, wholesale.
- Slovenian and Polish: depending on the industry.
Better two languages done properly than five translated automatically.
The language switcher
A small thing that often breaks.
The switcher has to lead to the same content in the other language, not to the home page. A visitor reading a service description who switches language expects the same description, not the start.
When a translation of that page doesn't exist, it has to be handled deliberately: hide the option, or lead to the closest content with a clear message. Dumping them on the home page automatically is the worst of the choices.
Automatic switching by location
Don't. A visitor from Germany doesn't have to speak German, and someone travelling gets the language of whatever country they happen to be in.
Offer the language, don't impose it. Search engines also often fetch pages from addresses unrelated to the market, so automatic redirects can lock indexing onto one version.
Frequently asked questions
How much does a second language add to the cost?
The technical part is the smaller share of the cost and is set up once. The larger part is translating the content, which depends on how much text there is.
Can a language be added later?
It can, but it's cheaper to plan the structure straight away. Changing addresses later means redirects.
Is duplicate content a problem if the same text is in two languages?
No, with correct hreflang tags. The problem arises when they're missing or one-way.
Who maintains the translations?
The admin panel is set up so each version can be edited separately.
Where to start
Tell me which markets you're targeting and how much content there is. That shows which structure makes sense and how much work it really is.
Get in touch or see my work.