The page does not declare a language
The document root has no language declaration for assistive technology and browsers.
Why it matters
Screen readers use a document language to select pronunciation rules and a voice. Without a declaration, they may read text using the wrong language. Browsers also use it for language-aware features such as translation and hyphenation.
How ShipReady detects it
What it inspects
ShipReady reads the opening <html> tag in the fetched page and looks for a lang or xml:lang attribute.
What triggers a finding
On a complete HTTP 200 page, the rule triggers only when an <html> element is present and its opening tag has no lang attribute.
What the evidence shows
The fetched document’s opening <html> tag did not declare a language.
Limits of this check
This check tests whether an attribute is present. It does not assess whether its value is valid, matches the document’s language, or whether sections in other languages have their own language declarations. It checks the scan’s origin page, not every route.
How to fix it
Declare the document language
Set the root HTML element’s lang attribute to the primary language used by the page, using an appropriate BCP 47 language tag.
For a page written in English, for example, use lang="en". If the page language changes, update the declaration.
How to verify the change
Check the rendered document
Inspect the served page’s opening HTML element, including after deployment.
Expected: The root element declares the page’s primary language, and the value matches the content.
Example root element
The declaration belongs on the root element and should identify the main language of the document.
<html lang="en">
The root element declares English as the document language.