How to fix html has lang on Ghost
Add a valid `lang` attribute to the `<html>` element so browsers, screen readers, and search engines know what language your page is written in.
Steps for Ghost
- In your Ghost admin, go to Settings → General and set the Publication Language to the correct BCP 47 code (e.g., `en`).
- Ghost automatically injects `<html lang="{{@site.locale}}">` in the default Casper theme and most modern themes.
- If your custom theme is missing it, edit your theme's default.hbs file and update the `<html>` tag to `<html lang="{{@site.locale}}">`, then re-upload the theme ZIP.
- Verify via View Source after saving.
What is html has lang?
Every HTML page should declare its primary language in the opening `<html>` tag using a `lang` attribute — for example, `<html lang="en">` for English. This single attribute tells browsers, screen readers, and search-engine crawlers what human language the page content is written in. WCAG Success Criterion 3.1.1 ("Language of Page") requires it. A common mistake is using the XML version (`xml:lang`) instead of the standard HTML `lang` attribute — only `lang` is valid in HTML documents.
Screen readers use the `lang` attribute to select the correct pronunciation engine and voice profile; without it, a visually-impaired customer may hear your entire site read aloud in the wrong language, making it effectively unusable. This is a Level A WCAG violation — the lowest bar for accessibility compliance — and is frequently cited in accessibility audits and legal complaints under the ADA, the European Accessibility Act, and equivalent laws worldwide, exposing you to real legal and financial risk. Search engines also use the declared language to serve your pages to the right audiences, so a missing or wrong `lang` value can quietly undermine your international SEO. Fixing it takes less than five minutes and has zero negative side effects.
See the complete Html has lang guide for every platform and the full background.
Not sure if your Ghost store has this?
Run a free SEOLZ scan — we’ll find html has lang and every other issue across your whole site.
Scan my site free