html.lang-invalid
The <html lang> value is not a valid BCP 47 language tag.
What to change
Use a BCP 47 tag such as "en", "en-US" or "pt-BR".
A finding of this rule on a page carries the exact edits for that page: the markup it quotes, and what to write instead.
When it runs
Runs on every SEO audit: of a page, a crawl, a build directory or HTML. A warning is a problem that costs a page ranking, clicks or citations. Each finding takes 5 points off the page's score.
The severity here is the rule's usual one: a finding can be raised or lowered when the page gives a reason.
Run it, or skip it
Check a page for this rule alone, after a fix for instance:
npx @rivi-software/agentic-seo-check audit https://example.com --rule html.lang-invalid
Or from an assistant, with the MCP tool seo_audit_page:
{
"url": "https://example.com",
"rules": [
"html.lang-invalid"
]
}
To leave it out of an audit, pass --disable html.lang-invalid on the command, or disableRules: ["html.lang-invalid"] to a tool.
More in The document
All 12 rules- Warning
html.lang-missingThe <html> element has no lang attribute. - Warning
viewport.missingNo <meta name="viewport"> is present, so the page is not mobile-friendly. - Info
viewport.not-scalableThe viewport disables user zoom (user-scalable=no or maximum-scale=1). - Info
charset.missingNo character encoding is declared, in the HTML or in the Content-Type header. - Info
doctype.missingThe document does not start with <!DOCTYPE html>. - Info
document.html-too-largeThe HTML document is larger than 1.5 MB. - Error
head.closed-earlyAn element that does not belong in <head> (an <img>, <iframe>, <div>, stray text) ends it early, so search engines read the metadata after it as part of <body> and ignore it. - Warning
head.metadata-in-bodyMetadata that search engines read only in <head> (title, meta description, viewport, canonical, hreflang) is written in <body> (warning). Metadata a framework streams into a hidden part of <body> and moves into <head> with JavaScript, as Next.js does for an async generateMetadata, is info. Robots meta tags are not reported: Google honours them in <body> too.