Tipog:locale

og:locale is missing

Your page does not declare og:locale, so platforms assume your preview text is US English. Here is when that assumption causes problems and how to declare alternates.

What you are seeing: Non-English previews are occasionally mis-rendered or offered for translation, and localised variants of a page are not linked to one another.

What it declares

og:locale states the language and territory of the text in your Open Graph tags, in language_TERRITORY form — en_GB, fr_FR, pt_BR. When the tag is absent, platforms default to en_US.

For an English-language site that default is harmless, which is why this is a tip rather than a warning. For everything else it is a wrong assertion about your content, and it is the kind of thing that quietly triggers a translation prompt over text that was never in English.

Declaring alternates

If the same content exists in several languages, list the others with og:locale:alternate. Repeat the tag once per additional locale. This tells platforms the variants are the same page in different languages rather than unrelated pages.

og:locale itself should always be the locale of the page you are on, and each localised variant should declare its own. Do not put the same og:locale on every page of a multilingual site.

Format matters

Use an underscore, not the hyphen used by HTML lang and hreflang: en_GB, not en-GB. The territory is not optional in the Open Graph form. Getting the separator wrong means the value is ignored, which leaves you back at the en_US default.

A British English page with alternates

<meta property="og:locale" content="en_GB" />
<meta property="og:locale:alternate" content="fr_FR" />
<meta property="og:locale:alternate" content="de_DE" />

Frequently asked

Do I need og:locale if my site is only in English?

Not strictly — the en_US default will already be close. Declaring en_GB is still worth doing if that is your variety, and it costs one tag.

Is og:locale the same as the lang attribute on <html>?

They describe the same thing for different readers, and they use different formats. The lang attribute serves browsers and screen readers and uses a hyphen; og:locale serves social crawlers and uses an underscore with a required territory. Set both.

Check your page

Run your URL through the checker to confirm the fix is live and see how the card renders on every platform.

Test a URL

Related fixes

Built with ZippyStarter logo ZippyStarter