Description
LangRelay is a WordPress translation plugin that turns your site multilingual in minutes. AI translates every page, post, and product into 100+ languages. Translated URLs, hreflang tags, and a language switcher are handled automatically.
Most translation plugins stop at the words on the page. LangRelay also translates your URLs, your meta titles and descriptions, and the llms.txt file AI search engines read, so your site gets found in every market you sell in.
What you get
- AI translations that read like a human wrote them. Powered by frontier language models, not Google Translate.
- Translated URLs.
yoursite.com/about-usbecomesyoursite.com/nl/over-ons. - Automatic hreflang. Hreflang tags, canonical tags, and language-specific sitemaps are injected for you. No manual setup.
- Translated SEO metadata. Meta titles, descriptions, and OG tags translate alongside the page. Works with Yoast and Rank Math.
- Language switcher. Dropdown, flags, or list. Available as a Gutenberg block, Elementor widget, shortcode, or auto-injected.
- Translated llms.txt. ChatGPT, Perplexity, and Claude can cite your site in any language you publish in.
- WooCommerce multilingual. Product pages, shop pages, cart, and checkout translate out of the box.
- Plays nice with caching. Compatible with WP Rocket, Cache Enabler, WP Optimize, and most other plugins.
Why a multilingual WordPress site matters
- English is only 16% of the internet. The other 84% is your addressable market.
- Google ranks translated pages separately. A multilingual site can multiply your organic traffic without adding new content.
- AI search engines (ChatGPT, Perplexity, Gemini) increasingly answer questions in the user’s native language. Without translated pages, you don’t show up.
How it works
- Install the plugin and connect your free LangRelay account.
- Pick the languages you want.
- LangRelay captures each page on first visit, translates it through the API, and serves the translated version. Subsequent visits are served from cache instantly.
That’s it. No content duplication, no manual translation interface, no separate posts to manage.
Multilingual SEO done right
LangRelay handles the SEO work that usually takes hours per language:
hreflangandx-defaulttags on every page- Canonical tags pointing to the correct language version
- Translated slugs in the URL structure
- Language-specific XML sitemaps
- Translated meta titles, descriptions, and Open Graph tags
- Translated llms.txt for AI search engines
Search engines understand which language to serve to which visitor. AI models cite your site across markets.
What makes LangRelay different
You only pay for the words that actually get translated. If the same sentence appears on 500 pages, you pay for it once. Most translation plugins count every word on every page, which adds up fast on larger sites.
Pricing
- Free: 1 project, 1 language, 10K credits/mo
- Starter (EUR 19/mo): 3 projects, 3 languages, 150K credits/mo
- Growth (EUR 69/mo): 10 projects, 10 languages, 1.5M credits/mo
- Business (EUR 199/mo): Unlimited projects and languages, 15M credits/mo
Annual billing saves ~17%. Full pricing at langrelay.com/pricing.
How credits work
One credit is one translated word. A 500-word page into one language costs 500 credits. Into three languages, 1,500.
Credits only count the first time a piece of text is translated. If you update a paragraph on your homepage, only that paragraph uses credits again. The rest of the page stays as-is. Duplicate content (like your footer showing up on every page) is recognized and translated once.
Credits reset every month and pool across all your projects.
Meet Relay
Relay is your AI assistant inside the LangRelay dashboard. Ask it about translation coverage, quality scores, or which pages still need attention. It pulls live data from your project so you don’t have to dig through the user interface.
External services
LangRelay API
This plugin sends page HTML to the LangRelay API for translation. Data is sent over HTTPS. Your WordPress database is never modified.
What is sent: page HTML, your authentication token, target language code.
When: on untranslated or uncached page requests, during setup verification, and when syncing project settings.
By using this plugin you agree to LangRelay’s Terms of Service and Privacy Policy.
Screenshots
Blocks
This plugin provides 1 block.
- LangRelay Language Switcher Display a language switcher for your translated site.
Installation
- Upload the
langrelayfolder to/wp-content/plugins/. - Activate through Plugins in WordPress.
- Go to Settings > LangRelay and connect your account.
- Pick your languages. You’re live.
A free LangRelay account is required. Sign up at langrelay.com.
FAQ
-
What does this plugin do?
-
It translates your WordPress site into other languages automatically. AI handles the translations, URLs and slugs are translated, hreflang tags are injected, and a language switcher is added. You don’t manage translated posts manually.
-
How is this different from other translation plugins?
-
Two big things. First, you only pay for words that actually get translated. If the same sentence appears across your whole site, you pay for it once, not once per page. Second, LangRelay handles GEO (Generative Engine Optimization) with translated llms.txt and AI-readable pages, so your site gets cited by ChatGPT and Perplexity in every language.
-
Which languages are supported?
-
100+ languages, including Spanish, French, German, Dutch, Italian, Portuguese, Polish, Swedish, Norwegian, Danish, Finnish, Czech, Greek, Turkish, Arabic, Hebrew, Hindi, Japanese, Korean, Chinese (Simplified and Traditional), Vietnamese, Thai, Indonesian, and more.
-
Do I need a LangRelay account?
-
Yes. LangRelay is a cloud service. You can sign up for free at langrelay.com. No credit card required.
-
Will this slow down my site?
-
No. The first visit to a translated page takes a moment while the translation is generated. After that, everything is served from a WordPress transient cache. Repeat visitors see translated pages instantly.
-
Yes, automatically. LangRelay injects
hreflangtags for every translated language plus anx-defaulttag in the page head. Canonical tags are language-aware. No manual SEO work required. -
Does it work with WooCommerce?
-
Yes. Product pages, shop pages, cart, and checkout are all translated automatically. Yoast and Rank Math SEO metadata is translated too.
-
Does it work with Yoast SEO and Rank Math?
-
Yes. Meta titles, meta descriptions, Open Graph tags, and Twitter Card tags written in Yoast or Rank Math are translated alongside the page content.
-
What happens if the LangRelay API goes down?
-
Your site serves the original untranslated page. Nothing breaks.
-
What is llms.txt?
-
It’s a file AI models like ChatGPT and Perplexity read to understand your site’s content. LangRelay generates one for every page in every language so AI search engines can cite your site internationally. No configuration needed.
-
Can I try it for free?
-
Yes. The free plan gives you 1 project, 1 language, and 10,000 credits (words) per month. That covers roughly 20 pages, enough to test on a small site before committing.
-
Does the free plan show branding?
-
Yes. Sites on the free plan display a small “Powered by LangRelay” badge next to the language switcher. This is controlled by the LangRelay service based on your plan. Upgrading to a paid plan removes the badge.
-
What is GEO?
-
GEO stands for Generative Engine Optimization. It’s the practice of making your site visible and citable by AI-powered search engines like ChatGPT, Perplexity, and Google AI Overviews. LangRelay handles this automatically with translated AI-readable pages and llms.txt files.
Reviews
There are no reviews for this plugin.
Contributors & Developers
“LangRelay” is open source software. The following people have contributed to this plugin.
ContributorsTranslate “LangRelay” into your language.
Interested in development?
Browse the code, check out the SVN repository, or subscribe to the development log by RSS.
Changelog
1.9.5
- Fix: language switcher chevron now sits inline next to the flag/language name. The 1.9.4 button reset (
display: contents) inadvertently broke the default row layout of the customizable select; explicitly making the select an inline-flex row restores it.
1.9.4
- Fix: language switcher’s inner trigger button now correctly resets against page-builder themes. With
appearance: base-select, the browser renders a<button>inside the<select>that themes like Elementor were re-styling (red background, uppercase text). The 1.9.3 fix scoped the<select>styles but missed this inner button. Now explicitly resets it withall: unset; display: contentsat higher specificity.
1.9.3
- Fix: language switcher styles now beat aggressive page-builder themes (Elementor, Divi, etc.) by scoping selectors under
.langrelay-switcherfor higher specificity. Also explicitly resets text-transform, letter-spacing, font-weight, and text-align so themes that style barebuttonelements no longer leak through.
1.9.2
- Security: escape hreflang and canonical output with wp_kses().
- Security: use wp_add_inline_script() for translation preloading instead of raw script injection.
- Security: eliminate unescaped full-page echo by using ob_start() callback.
- Improvement: rename all transient prefixes from lr_ to langrelay_ for consistency.
- Fix: stale mock prefix in cache purge test after transient rename.
1.9.1
- Security: use wp_safe_redirect() for auto language redirects.
- Security: remove token preview from debug REST endpoint.
- Security: remove unused debug token authentication methods.
- Improvement: bundle country flag SVGs locally instead of loading from external CDN.
1.9.0
- WordPress.org plugin review compliance: removed “WordPress” trademark from display name, fixed Plugin URI, properly sanitize all settings fields in register_setting callback, and explicitly close output buffer via shutdown hook.
- New: setup wizard now lets you select an existing organization and project instead of requiring a new one.
- Removed debug panel from setup wizard.
1.8.1
- Fix: languages added in the LangRelay dashboard now auto-sync to WordPress via a project.updated webhook event.
- New: manual “Sync” button in the Project Status card to pull the latest project settings (languages, source language) from the dashboard on demand.
- Improvement: existing installs automatically reconcile their webhook subscription on the next admin page load to include the new project.updated event.
1.8.0
- Dynamic content translation: modals, AJAX panels, and client-rendered content (React, Vue, Svelte) now translate without flickering or invisible text.
- Performance: client-side translations are cached in localStorage with automatic version-based invalidation when you edit translations in the dashboard.
- Performance: first batch of dynamic text translates immediately (no 300ms debounce delay on initial render).
- New: server-side translation map is pre-loaded into the client SDK, so shared strings translate instantly from cache.
- New: debug logging via
?langrelay_debug=1query param ordata-debug="true"on the script tag for troubleshooting.
1.7.1
- Fix: script blocks containing HTML string literals (e.g. WooCommerce gallery scripts building
<a>and<img>tags in JavaScript) are no longer corrupted by the URL rewriter. DOMDocument now skips script and style blocks during URL rewriting. - Fix: translation matching is now case-insensitive. Menu items and other text styled with CSS text-transform (e.g. “wallcoverings” in HTML displayed as “Wallcoverings” via CSS) now match translations regardless of casing.
1.7.0
- Email translation: outgoing WordPress emails (wp_mail) can now be translated to the recipient’s language. Enable under Settings > LangRelay.
- WooCommerce email integration: order confirmations and other WooCommerce emails are automatically translated when email translation is enabled.
- Batch translation API: new translate_batch() method for translating plain text strings without HTML overhead.
- URL slug routing fix: translated URL slugs are now reverse-translated before WordPress routing, fixing 404s on translated permalink slugs.
- Bundled client JavaScript locally instead of loading from an external server.
- Various wp.org Plugin Check compliance fixes.
1.6.0
- Language switcher block, Elementor widget, and shortcode now support display override attributes (show flags, show names, use native names)
- Added [langrelay_switcher] shortcode for placing the switcher in classic themes and page builders
- Cleaned up admin settings: removed unused switcher fields, added dashboard link and status indicator
- Auto-inject toggle now properly controls whether the switcher script loads
- Org slug persisted during OAuth for dashboard deep links
1.5.1
- Added Settings link to plugin action row on the Plugins page.
- Redirect to settings page on first activation for easier onboarding.
1.4.7
- Updated admin UI to match LangRelay brand design.
- Added SVG logo to plugin settings header.
- Lowered PHP requirement to 8.0 with polyfills.
- Added 15 new translation locales (27 total).
- Language pills with flags on settings overview.
1.0.0
- Initial release.
- AI-powered page translation via LangRelay API.
- Language switcher (dropdown, list, flags) as Gutenberg block, Elementor widget, shortcode, or auto-injected.
- SEO support with hreflang tags and translated meta.
- WooCommerce, Yoast SEO, Rank Math, WP Rocket, and Cache Enabler compatibility.
- WordPress transient caching for translated pages.



