How to Set Up Multilingual SEO with WPML
and AI Translation (Hreflang, Sitemaps & Meta Tags)
Translating your content is half the job. The other half is making sure Google serves the right version to the right audience. This guide covers the technical SEO side of running a multilingual WPML site.
Updated April 2026
Technical SEO Guide

A multilingual WordPress site without proper SEO configuration is like translating a book and then hiding it in the wrong section of the library. The content exists, the translation is good, but the people who need it cannot find it. Search engines need explicit signals to understand that your site has multiple language versions, which version serves which audience, and how those versions relate to each other.
WPML handles most of this automatically when configured correctly. But “when configured correctly” is doing a lot of heavy lifting in that sentence. There are specific settings in WPML, in your SEO plugin, and in your translation workflow that need to be right for multilingual SEO to work. Getting any one of them wrong can result in duplicate content penalties, incorrect language targeting, or your translated pages never appearing in search results at all.
This guide covers the complete technical SEO setup for a multilingual WPML site: hreflang tags, sitemaps, URL structure, meta tag translation, and the specific integration points between WPML, your SEO plugin, and your AI translation workflow.
Hreflang tags: the foundation of multilingual SEO
Hreflang tags are HTML attributes that tell search engines which language and regional variant a page is written in, and which other pages are translations of the same content. They are the single most important technical SEO element for a multilingual site. Without them, Google has to guess which version of your page to show to which user, and it frequently guesses wrong.
A properly configured hreflang setup for a page that exists in English, French, and Spanish looks like this in the HTML head:
<link rel="alternate" hreflang="en" href="https://example.com/product-name/" />
<link rel="alternate" hreflang="fr" href="https://example.com/fr/nom-du-produit/" />
<link rel="alternate" hreflang="es" href="https://example.com/es/nombre-del-producto/" />
<link rel="alternate" hreflang="x-default" href="https://example.com/product-name/" />
Each tag points to a specific language version of the page. The x-default tag tells search engines which version to show when none of the specified languages match the user’s preferences. These tags must be present on every language version of the page and must reference all other versions reciprocally. If your English page points to the French version, the French version must also point back to the English one.
The good news is that WPML generates hreflang tags automatically for every translated page. You do not need to write them manually. WPML detects which translations exist for each page and outputs the correct hreflang markup in the HTML head. This works out of the box as long as your translations are properly connected in WPML’s translation system.
Open a translated page on your site. View the page source (right-click, then View Page Source) and search for “hreflang.” You should see a set of link tags referencing every language version of that page. If hreflang tags are missing, check that WPML’s SEO options are enabled under WPML Settings. You can also use Google Search Console’s International Targeting report to see how Google is reading your hreflang tags.
There is one important caveat. Hreflang tags only appear for pages that actually have a published translation. If you have translated your English page into French but the French version is still in draft status, WPML will not include it in the hreflang output. This means that incomplete translation projects can leave gaps in your hreflang coverage. The solution is to ensure that translations are published, not just completed in the translation editor. AI translation addons that deliver completed translations back to WPML typically mark them as ready for publishing, but you should verify this in your workflow.
Multilingual sitemaps: helping Google discover all your content
Your XML sitemap tells search engines what content exists on your site and helps them prioritize crawling. For a multilingual site, the sitemap needs to include all language versions of every page, with hreflang annotations that mirror the ones in your HTML head.
If you are using Yoast SEO, WPML integrates with Yoast’s sitemap generator to produce a properly structured multilingual sitemap. Each URL in the sitemap includes xhtml:link elements that reference the alternate language versions. This is the format Google recommends for multilingual sitemaps and it provides a redundant signal alongside the in-page hreflang tags.
To verify this is working, go to yoursite.com/sitemap_index.xml and examine the output. You should see separate sitemap files for each language (post-sitemap.xml for English, fr/post-sitemap.xml for French, etc.), and within each sitemap, the URL entries should include alternate language links.
Go to WPML, then Plugins, and check that the WPML SEO module is active. This module integrates with Yoast SEO to add multilingual annotations to sitemaps. If you use Rank Math instead of Yoast, WPML has a separate integration for that. In either case, the WPML SEO module must be active for sitemap integration to work.
Add your sitemap URL to Google Search Console if you have not already. After adding translations, Google will discover the new language versions through the sitemap and begin indexing them. This typically takes a few days to a few weeks depending on how frequently Google crawls your site.
URL structure: directories, subdomains, or domains
WPML offers three URL structures for multilingual content. Each has different SEO implications.
URLs look like example.com/fr/page-name/. This is the option WPML sets by default and the one Google explicitly recommends in their internationalization documentation. All language versions share the same domain authority. Setting this up requires no additional DNS configuration. This is the right choice for the vast majority of multilingual WordPress sites.
URLs look like fr.example.com/page-name/. Subdomains are treated as separate entities by search engines, which means each language version builds its own domain authority independently. This can work for large enterprises with dedicated regional marketing teams, but for most sites it dilutes your SEO strength across multiple subdomains. Not recommended unless you have a specific reason.
URLs like example.fr/page-name/. Each language gets its own domain. This offers the strongest geo-targeting signal but requires managing multiple domains, separate hosting configurations, and building domain authority from scratch for each one. Only practical for large international businesses with substantial SEO budgets per market.
If you are reading this guide, the directory structure is almost certainly the right choice for your site. It consolidates all your SEO authority onto a single domain, requires zero DNS changes, and works seamlessly with WPML’s default configuration.
Translating SEO meta tags: the most overlooked step
This is where most multilingual WordPress sites fail at SEO. They translate the visible page content but leave the SEO metadata in the original language. The result is a French page that appears in Google France with an English meta title and description. French users see this mixed-language result, assume the page is not for them, and skip it. Your translation effort produces a page that technically exists but practically does not rank.
The SEO meta fields that need translation are the meta title (the clickable headline in search results), the meta description (the snippet text below the headline), and the SEO slug if your SEO plugin manages URL slugs separately from WordPress. For Yoast SEO, these are the _yoast_wpseo_title and _yoast_wpseo_metadesc custom fields.
For these fields to be included in AI translation, they need to be set to “Translate” in WPML’s Custom Fields Translation settings. Go to WPML, then Settings, then Custom Fields Translation. Find the Yoast fields and make sure they are set to “Translate” rather than “Copy” or “Do not translate.” If they are set correctly, your AI translation addon will include them in every translation job automatically.
This is one area where AI translation addons differ significantly. Some only translate the post title and body content, leaving custom fields untranslated. The NEXU AI Auto Translator for WPML translates all fields that WPML marks as translatable, including Yoast SEO metadata, in a single pass. This means your translated pages go live with properly translated search engine listings from the moment they are published.

Translated URL slugs: do they matter?
When you translate a page called “blue-running-shoes” into French, should the URL slug become “chaussures-de-course-bleues” or stay as “blue-running-shoes” under the French directory?
WPML gives you the option to translate URL slugs. For SEO, translated slugs are marginally better because they include target-language keywords in the URL, which is a minor ranking factor. More importantly, translated slugs look more trustworthy to users in search results. A French user seeing /fr/chaussures-de-course-bleues/ has more confidence it is a French page than one seeing /fr/blue-running-shoes/.
In practice, WPML generates translated slugs automatically when a translation is created. The slug is derived from the translated title, same as WordPress generates slugs from English titles. You can manually edit translated slugs in the WPML translation editor if the auto-generated version is not optimal. For most sites, the auto-generated slugs work well without manual intervention.
One important warning: if you change a slug on an already-indexed page, you create a URL change that requires a redirect. WPML handles this internally for translated pages, but changing slugs on content that has already been indexed and possibly linked to externally can temporarily affect rankings. Translate slugs when you first create the translation, not after the translated page has been live and indexed.
Avoiding duplicate content across languages
Duplicate content is a common concern for multilingual sites, and it is largely a misunderstood one. Google does not penalize sites for having the same content in multiple languages. The issue arises when Google cannot determine which language version to show in which market, or when untranslated pages exist as exact copies of the default language content.
Hreflang tags solve the language-targeting problem. They explicitly tell Google which version is for which audience. As long as hreflang is configured correctly (which WPML handles automatically), Google will serve the French version to French users and the English version to English users without treating them as duplicates.
The problem scenario is when you have language versions that are not actually translated. If your French page contains English text because the translation was never completed, Google sees two pages with identical English content on different URLs, which can cause confusion. WPML mitigates this by not publishing translated pages until the translation is marked as complete, but you should verify that incomplete or failed translations are not accidentally published.
Verify hreflang tags are present on all translated pages (WPML handles this). Make sure incomplete translations are not published. Set canonical URLs correctly (WPML does this by default). Do not publish auto-drafted translations that have not been processed through your translation pipeline. Use Google Search Console’s International Targeting report to monitor for hreflang errors.
Google Search Console for multilingual sites
Google Search Console provides specific tools for monitoring multilingual SEO performance. Here is how to use them effectively.
Filter the Performance report by country to see how your translated content is performing in specific markets. Compare click-through rates between languages for the same content. If your French translations get significantly lower CTR than English for the same queries, the meta descriptions may need refinement.
Google reports hreflang implementation errors in Search Console. Common errors include missing return tags (page A references page B but page B does not reference page A), unknown language codes, and URLs that return 404 errors. WPML’s automatic hreflang generation prevents most of these, but deleted translations or changed URLs can sometimes create orphaned references.
Use the URL Inspection tool to check whether specific translated pages have been indexed. If a translated page shows “Discovered – currently not indexed” or “Crawled – currently not indexed,” it may indicate thin content or quality issues with that specific translation. This is where having high-quality AI translations rather than basic machine translation makes a measurable SEO difference.
How AI translation quality affects SEO rankings
Google’s helpful content guidelines apply to translated content just as they apply to original content. Translated pages that read naturally, provide genuine value, and satisfy user intent will rank. Translated pages that read like awkward machine output, contain translation errors, or provide a poor user experience will not.
This is one of the practical arguments for using modern AI language models for translation rather than traditional machine translation engines. Models like Claude Sonnet 4.6, GPT-4o, and Mistral Large produce translations that read naturally to native speakers. This translates directly into better user engagement signals: longer time on page, lower bounce rates, and higher click-through rates from search results. These signals feed back into rankings over time.
The quality of your SEO meta descriptions is particularly important for multilingual SEO. The meta description is often the first interaction a user has with your translated content. A well-translated meta description in natural-sounding French will get more clicks than a stilted, obviously machine-translated one. More clicks from French search results signals to Google that your French page is relevant, which improves its ranking, which generates more clicks. It is a virtuous cycle that starts with translation quality.

The complete multilingual SEO checklist
Here is everything in one place. Walk through this checklist after setting up your multilingual WPML site to ensure your SEO foundation is solid.
If every item on this checklist passes, your multilingual SEO foundation is solid. The ongoing work is creating new content, translating it promptly, and monitoring Search Console for any issues that arise as Google indexes your translated pages.
The combination of WPML’s automatic hreflang and sitemap generation, an SEO plugin like Yoast handling meta tags and canonicals, and an AI translation addon like NEXU AI Auto Translator for WPML handling the actual translation including SEO metadata gives you a complete, automated multilingual SEO pipeline. Content goes in one language, comes out in all your target languages with proper SEO markup, and gets indexed by Google with the right language targeting. That is the goal, and with the right configuration, it works exactly as described.
Translate your content and your SEO in one pass
NEXU AI Auto Translator translates page content, Yoast SEO meta titles, and meta descriptions together. WPML handles hreflang and sitemaps. Your multilingual SEO works from day one.

Mahdi Jabinpour
As a sales-driven developer and the founder of NexuWP, Mahdi focuses on building WordPress solutions that don't just work—they convert. From AI-powered bulk translation engines to high-efficiency media offloading, he helps business owners automate the "grind" so they can focus on global growth. He is a pioneer in integrating advanced LLMs into the WordPress workflow.
the guide says WPML takes care of hreflang on its own, but I wasted hours figuring out why my tags were missing turns out translations need to be published, not just marked complete
The x default tag was a lifesaver.
Hey! finally got my multilingual sitemap working with WPML and Yoast this guide saved me hours of guessing