Language Mismatch on Web Pages
Diagnose differences between declared and detected page language, including multilingual templates and false positives.
The Language Mismatch filter identifies pages where Screpy's detected primary content language differs from the page's declared language. This can expose copied metadata, incorrect templates, or incomplete localization.
Understand the two signals
The HTML lang attribute declares the language of the document:
<html lang="en">Language detection evaluates the available text. Short pages, brand names, code samples, mixed-language navigation, and untranslated interface text can make detection uncertain. Treat the filter as a prompt to inspect the page, not proof that the declaration is wrong.
Analyze a mismatch
- Open the rendered page and identify its primary audience and language.
- Check the root
langvalue and any language-specific elements. - Compare title, description, headings, navigation, and main content.
- Group mismatches by locale path and shared template.
- Check whether JavaScript-rendered content was available during the crawl.
- Review canonical and hreflang decisions for multilingual variants.
A Turkish article with an English cookie banner is not necessarily mismatched. An English locale whose title and body remain Turkish is a real localization defect. Very short pages may not contain enough text for reliable classification.
Fix the cause
Set the document language from the active locale, localize metadata and shared components, and prevent fallback content from silently using another language. Keep each indexable locale internally consistent. Do not change the declaration merely to silence detection if the visible content is actually wrong.
Example decision
Every /de/ product page declares German, but descriptions are English because a translation field is empty. Fix the content fallback and preserve lang="de". If only one confirmation page with two words is flagged, verify it manually and avoid a broad template change without stronger evidence.
Verify the fix
Inspect rendered HTML, recrawl the affected locale, and confirm metadata, headings, body content, and declared language align. For international search targeting, validate hreflang and canonical signals separately; language consistency alone does not configure regional targeting.
Title Tags
Align title language with the page's primary content.
Canonical Tags
Review canonical choices across translated URL variants.
Pages Overview
Return to the complete page-audit workflow.
Find the source of the mismatch
Language Mismatch can occur when visible content, HTML language declarations, metadata, or template text disagree. It can also appear on short pages where navigation dominates the language signal, on product pages with international names, or on mixed-language communities.
Inspect the rendered page, not only source templates. Check the html lang value, title, headings, main content, navigation, and localized structured data. Verify whether the URL is meant for one language or intentionally serves multilingual content.
Common remediation patterns
For localized sites, keep each URL primarily in one language and connect equivalents with hreflang where appropriate. Translate shared navigation, validation messages, cookie banners, and fallback states—not only the article body. Ensure locale routing does not send crawlers to a different language based only on cookies or location.
Do not translate brand names, technical terms, or user-generated quotations merely to clear the filter. For very short pages, the best action may be to add meaningful localized context or accept the signal as a reviewed false positive.
What data movement means
After fixing a template language declaration, Language Mismatch may fall across many pages at once. If the count rises after localization work, check untranslated components and default-language fallbacks. A falling count caused by blocked locale paths is not a successful fix.
Google recommends using distinct URLs for language versions in its localized versions guidance. Validate representative pages for each locale and rerun the crawl with consistent settings.
Frequently asked questions
Should a multilingual page use more than one language code?
The html element has one primary lang value. Mark passages in another language with their own lang attributes when needed. If complete localized versions exist, distinct URLs are usually easier to understand and manage.
Can a brand name trigger Language Mismatch?
A brand, product name, code sample, or quoted phrase can contribute to a false positive, especially on a short page. Review the amount and role of the text before changing valid names.
Related guidance
Return to the Pages overview to compare language findings with the rest of the page inventory. MDN's lang attribute reference explains the document-language signal Screpy evaluates alongside visible content.