A second language on a website isn’t just a matter of “turning on a translator.” It’s a decision that determines how many pages you’ll need to maintain, how search engines will view them, and how much each edit will cost. Let’s break down the five main plugins and the pitfalls that almost everyone runs into.
Comparison
| Plugin | How It Works | Estimated price | Pros | Cons |
|---|---|---|---|---|
| Polylang | Separate entries for each language | Free / Pro ~€99 per year | The most popular free option, with full control over every version | You manage each page manually; WooCommerce is a separate plan |
| WPML | Individual entries, deep integration | from ~€39 to ~€199 per year | It works best with complex websites and online stores, and includes workflows for translators | It significantly slows down the website and requires payment from day one |
| TranslatePress | "On-the-fly" translation, editing right on the page | Free / starting at ~$89 per year | The most convenient editing: you see the text exactly where it appears; it even translates text embedded in the subject line | Key features are spread across paid add-ons |
| Weglot | An external service—translation handled by them | Subscription starting at ~€15 per month | It starts up in an hour; no configuration is needed | Pay every month without fail; if you stop paying, the transfer will be canceled |
| GTranslate | Automatic translation—there's a free widget | Free / Subscription with paid plans | The Fastest Start | The free version of the translation isn't indexed—so it's completely useless for search purposes |
Prices and rates are subject to change; please check the developers' websites. Detailed comparisons: IntlPull, WPAnything.
Two Different Approaches
Individual entries (Polylang, WPML). A separate page is created in the database for each language. Full control: the English version may differ from the Ukrainian version not only in text but also in structure. The cost: double the work for every edit.
Real-time translation (TranslatePress). There is only one page; translations are stored separately and are inserted when the page is opened. It’s easy to edit because you see the results immediately. However, you won’t be able to make the English version fundamentally different.
External Service (Weglot). The least hassle and the greatest dependence: it all hinges on subscriptions.
What are their stumbling blocks?
Machine translation without proofreading
Machine translation delivers 80% in results for 5% of effort—and that’s exactly why it’s so tempting. But it regularly messes up service names, prices, legal wording, and calls to action. At the very least, proofread the homepage, service pages, and forms. The rest can be left to the machine.
Meta tags remain untranslated
The most common and least noticeable problem. The text on the page has been translated, but title and description — No. When searching, the English version looks like a copy of the Ukrainian one.
In most plugins, meta tag translation is a separate paid add-on. It’s easy to check: open an English page and look at the browser tab title. If it’s in Ukrainian, you have a problem.
hreflang and sitemap
You need to tell the search engine that these are different language versions of the same page. This is done using tags hreflang. Without them, pages compete with each other as duplicates. Also, check to make sure that the language versions are included in the sitemap.
Silent Failures in Machine Translation
Here’s a recent example from our experience. A website built with TranslatePress and DeepL integrated. The translations suddenly stopped appearing on new pages—with no errors shown in the admin panel.
It turns out that DeepL has changed its authentication method: previously, the key could be passed as a parameter in the request body, but now a separate header is required. The old version of the plugin sent the key the old way and received an error, after which it considered the key invalid and quietly disabled automatic translation.
The point isn't about a specific plugin: The machine translation breaks down without warning. Once a month, open a few pages in the second language and scan them with your eyes.
A language selector that isn't visible
A flag in the basement doesn't count. If a second language is needed, the switch must be in the header.
How to Choose
- Two languages, a simple website, zero budget — Polylang or the free TranslatePress.
- Store — WPML: It has the best product management, shopping cart, and design.
- Would you like to edit the translation yourself, without a developer? — TranslatePress: Edit directly on the page.
- I need it yesterday, and I don't mind paying for a subscription — Weglot.
- The language is required "just to check a box" — It’s better not to do it at all. A partially translated website does more harm than a monolingual one.
How much does it actually cost?
The plugin is the least expensive part. The main costs are: text translation, proofreading, and maintaining both versions with every change. When planning to add a second language, budget for—not the license, but Put an end to duplicate work on content once and for all.
In Brief
Polylang — free and easy to manage. WPML — for complex websites and online stores. TranslatePress — when you want to edit the translations yourself. Weglot — when you need it fast. And in any case, make sure to check the meta tags, hreflang attributes, and that the automatic translation is actually working.
Do you need a multilingual website that's done right the first time? We offer turnkey solutions, We're showing our support available — calculate the project.
