Scan at scalePages with missing or invalid language/encoding declarations
Pages with missing or invalid language/encoding declarations
A per-URL report: one row per page that matches, over the pages a crawl reached.
What this report returns
The lang attribute and character encoding are how agents know what language a page is in and how to decode its bytes; get them wrong and text is mis-detected or garbled.
These pages are missing a declaration or declare it wrongly: no or invalid BCP 47 lang, no charset, a non-UTF-8 charset, or a charset declared after the 1024-byte window parsers pre-scan.
The Conformance Issue Detected column is true only for the two encoding rules HTML states as musts, a missing character-encoding declaration and a meta charset outside the first 1024 bytes; a missing lang attribute and a non-UTF-8 encoding are strongly encouraged rather than required, and an invalid BCP 47 tag is Lumar's readiness profile, so those rows are usability problems without a spec violation.
How to fix it. Declare <html lang="en"> (a valid BCP 47 tag) and serve Content-Type: text/html; charset=utf-8, or put <meta charset="utf-8"> first in the head; the flagged columns name each page's specific problem.
The columns it shows
Every defect this technology can carry is a column in the grid, worst first, so nothing is hidden behind a filter you have to know to apply.
- Language & Encoding Valid
langEncodingValid - Language & Encoding Conformance Issue Detected
langEncodingConformanceIssueDetected - Language & Encoding Findings
langEncodingFindings - Lang Declared Value
langDeclaredValue - Charset Declared Value
charsetDeclaredValue - Charset Declaration Source
charsetDeclarationSource - Charset Meta Byte Offset
charsetMetaByteOffset - Charset Missing
charsetMissing - Lang Missing
langMissing - Lang Invalid BCP 47
langInvalidBcp47 - Charset Non-UTF-8
charsetNonUtf8 - Charset Late
charsetLate
About Language and encoding
Declared language and charset, so text is interpreted correctly.
Read how Language and encoding is checked, including the specification it is validated against and a worked correct and broken example.
Running it
This report ships in the Lumar agent-readiness container and appears on any project it is linked to, on every crawl. See the whole set, or check a single URL with the scanner on this site, which runs the same code with no account.