How to translate a website: the complete guide (2026)
Adding a second (or fifth) language to your website opens your content to billions of additional readers. But “translate my website” can mean wildly different things depending on your tech stack, your team, and how fast you need it live. This guide breaks down every approach — honestly.
Why website translation matters
Only 25% of internet users speak English as their first language, yet over 60% of websites are English-only. The gap between where your potential audience is and where your content reaches is enormous — and largely fixable.
For e-commerce, the numbers are stark: studies consistently show that shoppers are 2–3× more likely to buy when they can read product information in their native language. For SaaS, multilingual support dramatically increases conversion rates in non-English markets.
The four approaches to website translation
There is no single right answer. Here are the four main approaches and when each makes sense.
1. Browser-side translation (Google Translate widget)
The classic Google Translate widget lets visitors translate your site in their browser. It's free and instant to add. The downsides: it's visually clunky, the translations are visible to you but not cached, and it shows Google branding prominently. It's a reasonable solution for low-traffic sites or intranets but not for a professional product.
2. CMS localization (WPML, Polylang, Contentful locales)
CMS-level localization creates separate content entries per language — e.g., a French version of every post in WordPress. This is the right approach when you need human-authored translations, locale-specific content, or per-language SEO URLs (/fr/). The cost: significant setup time, duplicate content management overhead, and a dependency on your CMS's localization architecture.
3. JavaScript translation widget (Lingvit, Weglot, GTranslate)
A JavaScript widget translates your existing site in place — one script tag discovers text nodes, sends them for translation, and swaps them when a visitor selects another language. This is the fastest path from zero to multilingual: no CMS rebuild, no new routes, no code changes. Trade-off: translated content isn't in your HTML source, so search engines index the original language only. Good for dashboards, web apps, and content sites where search ranking in each language isn't critical.
4. i18n framework integration (next-intl, react-i18next, Lingui)
The most thorough approach: every string in your app is extracted, a translation file is maintained per language, and the framework loads the right file at runtime or build time. This gives you full type safety, SSR-rendered translations, locale-specific routing, and the best possible multilingual SEO. The cost: significant upfront engineering (extracting all strings, setting up CI/CD for translation files, training your team on the workflow) and ongoing overhead for every new string added.
Which approach should you use?
| Your situation | Best approach |
|---|---|
| Side project, low traffic | Google Translate widget or a Lingvit plan from $9/month |
| Content site, multilingual SEO matters | CMS localization (WPML, Polylang) + translation widget as bridge |
| Product / dashboard, need languages fast | JavaScript widget (Lingvit, Weglot) |
| New React/Next.js app, SEO critical | i18n framework (next-intl, Lingui) from the start |
| Existing app, can't afford a rewrite | JavaScript widget as pragmatic solution |
| E-commerce, product descriptions in 5+ languages | Widget for speed, CMS localization for long-term |
Scroll horizontally to view every column.
How to translate your website with Lingvit
If you've decided a JavaScript widget is right for your project, here's how to get started with Lingvit using the guided widget setup.
- 1
Add the script tag
Paste this before the closing
</body>tag on every page:<script src="https://cdn.lingvit.com/widget.bundle.js?v=1" async></script> - 2
Create a project in the dashboard
Sign up at app.lingvit.com, create a project, and add your site's domain.
- 3
Select your languages
Choose from 30+ languages. Translations are generated automatically and cached for subsequent visitors.
- 4
Review and publish
Use the translation browser to review or override any machine translation. Publish without redeploying your site.
Frequently asked questions
- Does translated content affect my site's loading speed?
- The widget loads asynchronously, but total performance still depends on the page, network, browser, and translation request. Test Core Web Vitals and the visible language-switch behavior on representative production pages.
- Can I translate a website that I don't own or control?
- Lingvit requires you to add a script tag to the site. If you can't modify the site's HTML — for example, a third-party SaaS tool — Lingvit can't translate it. For public websites you don't own, browser extensions are the only option.
- What languages does Lingvit support?
- Lingvit supports 30+ languages including Spanish, French, German, Portuguese, Italian, Dutch, Polish, Russian, Japanese, Chinese (Simplified and Traditional), Korean, Arabic, Turkish, and more.
- Is there a free way to translate my website?
- Lingvit offers monthly and annual plans sized by a character allowance for new translations. Stored and cached translations are served repeatedly without using the allowance again.
Platform setup guides
Ready to go multilingual?
Simple monthly plans. One script tag. 30+ languages.
Get startedOr read the documentation →