WPML

Before You Start

  • Yoast SEO or Rank Math installed and active on the site. (Using All in One SEO? WPML SEO doesn’t integrate with it; WPML translates its fields as custom fields – see Translating All in One SEO with WPML.)
  • WPML and the WPML SEO add-on active.
  • Your SEO meta optimized in the default language first – titles, descriptions, slugs, schema. Translating bad SEO doesn’t fix it; it scales it.
  • An SEO-friendly URL format set in the Setup Wizard – subfolders (example.com/es/) or subdomains (es.example.com). Avoid ?lang= parameters; Google understands subfolders and subdomains well and treats the parameter format poorly.

SEO Fields Translate Alongside Posts – Pick Your Method in the Translation Dashboard

SEO meta belongs to your posts. Open WPML > Translations > Dashboard, select the posts you want to translate, and pick a translation method in Step 2. The SEO fields travel with the post in the same translation job – no separate workflow, no per-plugin screen.

The methods that translate SEO meta:

  • Translate Automatically. PTC handles the SEO fields with the same quality (and constraints) as the body content.
  • Translate myself. opens the Advanced Translation Editor with SEO fields labelled alongside the post body.
  • Assign a translator. same editor, assigned to a translator on your team.
  • Assign a translation service. sends the SEO fields alongside the post to the external service.

Translate Everything Automatically picks up SEO fields the same way it picks up posts.

Translating Manually – Each SEO Field Labelled in the Advanced Translation Editor

When a translator opens a job, the Advanced Translation Editor shows each SEO meta field as its own row alongside the post body rows. Each row is clearly labelled: SEO title, Meta description, Facebook description, and so on. Translators edit each field in place, just as they would the body content.

Two side effects worth knowing:

  • Character limits aren’t enforced in the manual editor. It’s on the translator to keep titles under ~60 characters and descriptions under ~160. Google truncates the overflow in search results.
  • SEO placeholders appear in the source field (%%title%%, %%sep%%, %%sitename%%). Leave them as-is in the translation; they expand to the same dynamic values in the target language.

Translating With PTC – Length-Aware, Glossary-Aware

PTC translates the SEO fields together with the post body. Two things happen behind that single click:

  • Length-aware translation. PTC knows which fields have character constraints and translates them to fit. Translated meta titles and descriptions stay within Google’s recommended limits per language, so the full message reaches the SERP.
  • Glossary-aware translation. Your glossary entries – product names, brand names, target keywords per market – are applied to every SEO field. Branding survives the translation, and the keywords you decided to rank for are the keywords that end up in the meta.

PTC preserves SEO placeholders automatically – it won’t translate or strip them.

Translate Yoast SEO Taxonomy Term Meta

Taxonomy terms (categories, tags, custom taxonomies) carry their own Yoast SEO meta. Each term has a title, a description, and a social-share image. The term meta doesn’t ride along with post translations; send it explicitly from WPML > Translations > Dashboard, expand the Yoast SEO section, and select the Term Meta item. Yoast SEO’s meta for each term flows through with the standard translation workflow.

Rank Math handles its taxonomy meta differently: the primary-category selection on each post syncs to translations automatically.

Hreflang and Sitemaps – Emitted by WPML

You don’t have to do anything to get hreflang right; WPML emits the tags in both places Google expects them:

  • <link rel="alternate" hreflang="…"> in the page <head>. one tag per language alternative, plus an x-default for visitors whose language doesn’t match any of your translations.
  • <xhtml:link rel="alternate" hreflang="…"> inside the XML sitemap. Yoast SEO and Rank Math both. Language-per-domain setups get their own filtered sitemap automatically.

URL structure, hreflang behavior, and slug-translation settings live at WPML > Settings > URLs, slugs, SEO. Defaults are sensible; most sites never need to touch them.

Translate Keywords Thoughtfully – Direct Translation Often Misses How People Search

The single biggest SEO mistake on multilingual sites is assuming a direct translation of an English keyword is what French, Japanese, or Arabic searchers actually type. It usually isn’t.

Before translating high-value pages, review your target keywords per market:

  • Use a per-market keyword tool. Google Keyword Planner with the country filter, Ahrefs, Semrush, or Google’s autocomplete in the target language and country.
  • Add the right keyword per market to your glossary. PTC will use it consistently across every page that touches that term.
  • Don’t fight the local idiom. If the natural German search term for sneakers is Turnschuhe, lock that in; don’t push Sneakers just because it matches the English page.

This is the lever that turns “my site is translated” into “my site ranks in every market”.

Review and Scale Up

Once your high-value pages are translated:

  • Spot-check completeness. Open the translated pages and verify nothing is left in the source language – menus, sidebars, footers, widget text. Search engines penalise mixed-language pages.
  • Send the rest of your content for translation. Either send remaining pages from the Dashboard, or turn on Translate Everything Automatically at WPML > Translations > Dashboard and WPML translates new content in the background as you publish it.

Verify the SEO Made It Into Your Translations

Don’t take WPML’s word for it – spot-check a handful of translated pages once everything is live.

  • Hreflang tags in the page <head>. Open a translated URL > view page source (Ctrl+U on Windows, Cmd+Option+U on Mac) > search for hreflang. You should see one <link rel="alternate" hreflang="…"> per language plus an x-default.
  • Hreflang tags in the XML sitemap. Open your sitemap URL (/sitemap.xml for Yoast SEO or /sitemap_index.xml for Rank Math). For each translated URL, look for the nested <xhtml:link rel="alternate" hreflang="…"> entries inside its <url> block.
  • Translated SEO meta in the WP editor. Edit the translated post > scroll to the Yoast SEO or Rank Math meta box. The title, meta description, and social fields should show translated text, not the source-language original.
  • Translated SEO meta in the rendered page. Visit the translated URL > view page source > search for <title>, <meta name="description">, <meta property="og:title">, <meta property="og:description">. Each should match the translated meta you saw in the editor.

One spot-check is enough. The wiring is the same for every page – if it’s right on one translated page, it’s right on all of them.

What to Expect in Google After You Ship

The work doesn’t show up in search results immediately. Here’s the timeline.

  • Start with the verification above. Without confirming the SEO actually translated, anything below is debugging in the dark.
  • Google discovers the new URLs in a few days. Googlebot reads your sitemap and starts scanning the translated URLs. The hreflang entries you verified help Google associate the translations with their default-language equivalents.
  • Ranking signals build over a couple of weeks. New URLs don’t appear in search results on day one. Impressions and rankings build as Google understands the relationship between your language versions.

Use Google Search Console to track it. Add your domain as a property (or your language subdomains, if you went that route) and watch:

  • Sitemaps report. confirm your sitemap is submitted and Google has discovered the new URLs.
  • Indexing > Pages. verify the translated URLs show Indexed. Anything stuck at Discovered – currently not indexed or Crawled – currently not indexed needs investigation.
  • Performance. filter by Country and by Page to see impressions and clicks landing on the translated URLs. This is where the work pays off visibly.

If a translated page isn’t being indexed after several weeks, check robots.txt, check the page isn’t noindex in the Yoast SEO or Rank Math meta box, and request indexing in GSC’s URL Inspection tool. WPML doesn’t gate indexing itself, so the cause is almost always upstream.

Written by Amir · Last updated July 2, 2026