Checks
Character encoding
Checks that the page declares a character encoding, ideally UTF-8, so text renders correctly regardless of the visitor's browser or operating-system defaults.
What this check looks for
This check looks for a declared charset in three places, in order: a <meta charset> tag, an http-equiv="content-type" meta tag with a charset parameter, or the Content-Type response header. If none of these declare a charset, it fails. If one is found but isn't UTF-8, it warns. UTF-8 passes.
Why it matters
Without a declared encoding, a browser has to guess how to interpret the page's raw bytes as text, and a wrong guess turns quotation marks, accented letters, or non-Latin scripts into visibly garbled characters (the classic "mojibake" symptom) — a jarring, unprofessional-looking bug that's entirely avoidable with one line of markup. UTF-8 specifically is the encoding that can represent every language and symbol without ambiguity, which is why it's the universal recommendation regardless of what language the page's content is actually written in. Search engines and AI systems parsing text depend on correct encoding to extract accurate content in the first place — a misencoded page can be misread entirely, corrupting exactly the text a model would otherwise cite.
How to fix it
Declare UTF-8 as the very first element inside <head>, since browsers need to see it before processing any other head content that might contain non-ASCII characters:
<head>
<meta charset="utf-8">
<title>Café Menu — Acme Bistro</title>
</head>Make sure your server's Content-Type header agrees with the meta tag rather than declaring a different encoding, since a mismatch between the two is itself a source of rendering bugs.
See how your site scores on this check