Skip to content
Barrierefrei²

Success criterion 3.1.2

3.1.2 Language of Parts

Level AAUnderstandable

When websites become multilingual.

1. What is the goal of this criterion?

The web is as international as a coworking space in Berlin – everyone’s talking in different languages. But what happens when your website suddenly switches from English to French without assistive technologies noticing? A screen reader will read “Liberté, égalité, fraternité” with English pronunciation – about as charming as a crackly station announcement.

The goal of WCAG Success Criterion 3.1.2 is clear: every change of language in your content must be detectable by technology. As soon as the language changes – for a phrase, a sentence or a whole paragraph – assistive technologies must be able to recognize it and respond.

2. What exactly does it require?

The language of every passage or phrase must be programmatically determinable – including when it differs from the main language of the page.

The requirements are clearly defined:

Mark language changes: every passage or phrase in a language other than the main one gets the right attribute, for example lang="fr" for French text.

Technical implementation: the markup must be recognizable automatically by browsers, screen readers and other assistive technologies.

Clear exceptions: not everything needs marking. Exempt are proper names (“Microsoft”), technical terms (“HTML”), words of indeterminate language, and words or phrases that have become part of the vernacular of the surrounding text (“rendezvous”, “café” or “kindergarten” in English).

An example: if your English website says “Our motto is ‘Savoir-vivre au quotidien’”, the French part is marked up as <span lang="fr">Savoir-vivre au quotidien</span>.

The foundation for this is a correct main language for the page, as required by Language of Page.

3. Why does it matter for accessibility?

Imagine you’re using a screen reader on an English page – suddenly there’s a German quote, but the screen reader doesn’t know and reads it with English pronunciation. The result: gibberish instead of information.

Correct language markup improves accessibility because it:

  • lets screen reader users hear content with the right pronunciation – screen readers switch voices automatically
  • helps braille displays render language-specific characters and contracted braille correctly
  • gives text-to-speech software for people with reading difficulties the right pronunciation
  • helps browsers display characters and scripts correctly
  • gives translation and dictionary features the right source language

And finally: it makes content more robust – even with different writing directions or alphabets.

4. How to meet the criterion

The good news: technically, this is simple – but it takes care on the editorial side. Here are some proven tips:

Ground rules:

  • Use the lang attribute for every change of language: <span lang="de">Guten Tag</span>
  • For whole paragraphs or quotes, put the attribute right on the element: <blockquote lang="de">
  • Use valid BCP 47 language tags: en for English, de for German, fr for French.
  • Add a region where needed: en-US or en-GB, de-AT or de-CH.

In practice:

  • Define in your editorial style guide when language changes get marked up.
  • Pay special attention to quotes, book and film titles, and slogans in other languages.
  • Mark up links to other language versions, for example in the language switcher: <a href="/fr/" lang="fr">Français</a>
  • For right-to-left languages (Arabic, Hebrew), also use the dir attribute: <p lang="ar" dir="rtl">…</p>
  • Make sure your CMS lets editors mark up language changes.

What you DON’T need to mark up:

  • loanwords that have become part of the language, like “café”, “déjà vu” or “kindergarten”
  • proper names like “Paris”, “Google” or “iPhone”
  • technical terms like “HTTP”, “CSS” or “API”
  • brand and product names

Testing:

  • Listen to pages with a screen reader and check whether the voice changes for foreign-language passages.
  • Use an HTML validator to check that language tags are valid.
  • Check in your browser’s developer tools which elements have a lang attribute.

5. Why this criterion matters for businesses

3.1.2 is part of WCAG 2.1 Level AA and therefore part of EN 301 549, the standard behind the European Accessibility Act. In Germany, the EAA is implemented by the BFSG, which has applied since 28 June 2025 to online shops, banking services and other consumer services, among others. Public sector bodies must meet it as well. This section is general information, not legal advice.

1. Reach international audiences

Correct language markup makes your content more accessible to international audiences. Assistive technologies switch languages, and translation features work more accurately.

2. Get your language switcher right

Multilingual websites benefit in particular: a language switcher whose entries are marked up in their own language is read aloud intelligibly for everyone.

3. Show quality and professionalism

Carefully marked-up content is a sign of editorial quality – especially for international customers and partners who use multilingual content.

6. The success criterion in the W3C’s words

Success Criterion 3.1.2 Language of Parts (Level AA)

The human language of each passage or phrase in the content can be programmatically determined except for proper names, technical terms, words of indeterminate language, and words or phrases that have become part of the vernacular of the immediately surrounding text.

In short: the language of every passage or phrase must be identifiable in the code – except for proper names, technical terms, words of indeterminate language and loanwords that are common in the surrounding text.

Official explanation from the W3C

The W3C explains every success criterion in depth – with intent, examples and techniques.

Understanding 3.1.2 (opens in a new tab)