The Meta Charset Tag
What <meta charset="utf-8"> does, why the HTML spec wants it in the first 1024 bytes, how a wrong encoding causes mojibake, and why it's a rendering-correctness issue rather than a ranking factor.
1 evidence signal on this page
- Related live toolHTTP Header Checker
The meta charset tag — <meta charset="utf-8"> — declares your page's character encoding so browsers and crawlers turn raw bytes into the right characters. The HTML spec requires it within the first 1024 bytes of the document, and best practice is the literal first child of <head>. Get it wrong (missing, late, or a mismatched encoding) and you get mojibake: accented letters, curly quotes, em dashes, non-Latin scripts, and emoji render as garbage — which can corrupt what's displayed and indexed. It is NOT a direct ranking factor; Google's only guidance is to 'use Unicode/UTF-8 where possible.' UTF-8 is the near-universal, spec-required encoding for HTML5 today. A server-sent Content-Type header charset overrides the in-page tag, which is a common source of migration bugs. This is one of the browser-facing tags in the meta-tags cluster.
TL;DR — The meta charset tag is one line of HTML —
Evidence for this claim For HTML documents, the charset declaration must identify UTF-8. Scope: Modern HTML conformance requirements. Confidence: high · Verified: WHATWG HTML: Character encoding declaration Evidence for this claim The complete character-encoding declaration must occur within the first 1024 bytes of the document. Scope: HTML serialization requirement intended to make encoding available early to parsers. Confidence: high · Verified: WHATWG HTML: Specifying the document's character encoding<meta charset="utf-8">— that tells the browser how to read your page’s text. Get it wrong or leave it out and special characters (accents, curly quotes, emoji) can turn into garbled nonsense. It doesn’t help you rank, but broken-looking text is bad for everyone, including Google. Put it first in your<head>and useutf-8. Done.
What the tag does
Every web page is stored as raw bytes. Those bytes only become the letters you read once something decides which character each byte (or group of bytes) represents. The meta charset tag is how your page tells the browser — and search engine crawlersA crawler — also called a spider or bot — is an automated program that fetches web pages, extracts their links, and queues new URLs to visit. Search engines use crawlers to discover and download content for their index. — which system to use:
<meta charset="utf-8">utf-8 is the encoding you want in almost every case. It can represent essentially
every character and script in use today, plus emoji, all in one system.
What goes wrong without it
If you don’t declare an encoding, the browser has to guess. When it guesses wrong,
you get mojibake — garbled text where a curly apostrophe becomes something like
’, or café shows up as café. Accented letters, em dashes, “smart” quotes,
non-Latin scripts (Arabic, Cyrillic, Chinese, Japanese), and emoji are the usual
casualties. Plain unaccented English can look fine even when the encoding is wrong,
which is exactly why the bug sneaks through.
Where to put it
Two simple rules:
- Put
<meta charset="utf-8">first inside your<head>, before the title or anything else. - Use
utf-8, not some older encoding.
That’s it. Most site templates and CMSsA content management system (CMS) is software that lets users create, manage, and publish digital content — like blog posts and pages — without writing raw code. WordPress, Drupal, and Joomla are the most common open-source CMS platforms. already do this for you — if yours doesn’t, add it.
Does it affect SEO?
Not directly. The charset tag is not a ranking factor. But if a wrong encoding garbles your text, that broken content is what users see and what Google can end up indexingStoring a crawled page in the search index so it can appear in results. Crawled is not the same as indexed — Google selects what to keep, and indexing isn't guaranteed. and showing — so it’s worth getting right even though it won’t move you up the results by itself.
Want the spec details — the “first 1024 bytes” rule, why the old syntax still hangs around, and how a server header can quietly override your tag? Switch to the Advanced tab.
Check the declared encoding from the command line
Replace the URL, then compare the response header with the tag near the start of
the HTML. A charset in the HTTP Content-Type header takes precedence over the
in-document declaration.
url="https://example.com/"
curl -sSI "$url" | grep -i '^content-type:'
curl -sS "$url" | head -c 1024 | grep -oiE '<meta[^>]+charset[^>]*>'In a browser console, this reports the parsed encoding, the declared tag, and
whether that tag is the first element in <head>:
const charset = document.querySelector('meta[charset]');
console.table({
documentCharacterSet: document.characterSet,
declaredCharset: charset?.getAttribute('charset') ?? 'missing',
firstHeadElement: document.head.firstElementChild?.outerHTML ?? 'missing',
charsetIsFirst: document.head.firstElementChild === charset,
});The console reflects the browser’s parsed document. Use the curl check as well
when you need to prove what the server actually sent.
Patrick's relevant free tools
- Google SERP Simulator — Interactive Google result preview: type a title, description, and URL, compare controlled-font desktop + mobile truncation guidance with simulated query bolding, copy the finished tags, and share a filled-in preview.
- Meta Description Generator — Generate five meta-description options with AI, then compare their measured widths with approximate desktop and mobile SERP-preview guidance. Variants are scored for the keyword, a call to action, and length; you also get a matching title tag and a copy-ready tag block. Quick, paste-content, fetch-URL, and small bulk (≤10) modes. Falls back to editable templates when AI is off.
- Heading Structure Checker — Paste HTML or fetch a public page to visualize its heading hierarchy, catch skipped levels and empty headings, compare its H1 with the title, and preview a table of contents.
Inspect the response before debugging the markup
Use the HTTP Header Checker to inspect the live
Content-Type response header. If it declares a charset, compare that value with
<meta charset="utf-8">; a conflict can explain mojibake even when the HTML tag
looks correct.
For placement, use View Source rather than only the Elements panel. Confirm the
charset declaration is the first child of <head> and appears within the first
1,024 bytes of the document.
Validate a charset fix
Test 1 — Header and tag agree
- Hypothesis: The live response and HTML both declare UTF-8.
- Method: Check the response
Content-Typeheader, then inspect View Source for<meta charset="utf-8">. - Pass condition: No conflicting server-declared charset exists.
- Fail condition: The header declares another encoding or the tag is missing.
- Next action: Fix the server header first, then retest the live response.
Test 2 — The declaration is early enough
- Hypothesis: The browser sees the tag before it has to guess an encoding.
- Method: Fetch the first 1,024 bytes and inspect the start of
<head>. - Pass condition: The complete charset tag is within those bytes and is the
first element in
<head>. - Fail condition: Comments, injected scripts, or other markup push it later.
- Next action: Move the tag ahead of all nonessential head markup.
Test 3 — Real characters render correctly
- Hypothesis: The fix eliminates mojibake in user-visible and indexable text.
- Method: Spot-check an accented character, curly quote, em dash, non-Latin text, and emoji on the live page and in View Source.
- Pass condition: Each character renders as authored after a hard refresh.
- Fail condition: Replacement glyphs or garbled byte sequences remain.
- Next action: Roll back the encoding change if it introduced corruption, then trace the source file, template, database, and response header separately.
TL;DR —
Evidence for this claim For HTML documents, the charset declaration must identify UTF-8. Scope: Modern HTML conformance requirements. Confidence: high · Verified: WHATWG HTML: Character encoding declaration Evidence for this claim The complete character-encoding declaration must occur within the first 1024 bytes of the document. Scope: HTML serialization requirement intended to make encoding available early to parsers. Confidence: high · Verified: WHATWG HTML: Specifying the document's character encoding<meta charset="utf-8">declares the document’s character encoding. The WHATWG HTML spec requires the declaration to be serialized completely within the first 1024 bytes of the document, and for HTML5 the value must matchutf-8; best practice is placing it as the literal first child of<head>. A missing, late, or mismatched encoding produces mojibake — corrupted accented characters, curly quotes, non-Latin scripts, and emoji — which is a renderingTurning HTML, CSS, and JavaScript into the final visual page and DOM. and indexingStoring a crawled page in the search index so it can appear in results. Crawled is not the same as indexed — Google selects what to keep, and indexing isn't guaranteed.-correctness problem, not a ranking signal. Google’s only public line is “use Unicode/UTF-8 where possible.” A server-sentContent-Typecharset header overrides the in-document tag, which is a classic post-migration mojibake bug. Only one charset meta element is allowed per document, and it has no effect in XML. A UTF-8 byte-order mark (BOM), if present, wins over everything else; otherwise the HTTP header wins over the in-page tag — full precedence order below.
What the tag is
The charset declaration tells a parser which character encoding to use when it turns
the document’s bytes into text. The WHATWG HTML Living Standard puts it plainly: “The
charset attribute specifies the character encoding used by the document. This is a
character encoding declaration.” MDN’s framing is the practical version: “This
attribute declares the document’s character encoding.”
The modern syntax is the short form:
<meta charset="utf-8">There’s also a legacy pre-HTML5 form you’ll still see in older templates:
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">Both declare the same thing. On a modern HTML5 document you only need the short
<meta charset="utf-8"> — using both is redundant, not harmful, and the spec allows
only one charset-declaring meta element per document anyway. (The http-equiv form is
best thought of as legacy rather than something to add fresh; if you’re auditing a page
that has it, it isn’t broken, it’s just old.)
The spec requirements you actually need to know
UTF-8 is effectively mandatory for HTML5. MDN states it directly: the attribute’s
“value must be an ASCII case-insensitive match for the string utf-8, because UTF-8
is the only valid encoding for HTML5 documents.” The WHATWG spec goes further and
requires the document’s actual encoding to be UTF-8 regardless of what’s declared.
UTF-8 covers essentially every script plus emoji, which is why the ISO-8859-1 /
Windows-1252 / Shift-JIS era of per-region encodings is over for new work — those
survive only as legacy compatibility cases.
It must land in the first 1024 bytes of the document. This is a hard spec
requirement, not a soft suggestion. MDN: “<meta> elements which declare a character
encoding must be located entirely within the first 1024 bytes of the document.” The
reason is mechanical — the parser sniffs the byte stream for an encoding before it
can safely interpret the rest. If your declaration shows up too late, the parser may
already have committed to a guessed encoding (or have to restart, which costs
performance). Note the framing carefully: it’s the first 1024 bytes of the entire
document, not just of <head>.
Best practice beats the spec minimum: make it the first child of <head>. Don’t
settle for “somewhere in the first 1024 bytes” — put <meta charset="utf-8"> before
your <title>, <link>, <script>, <style>, and every other tag. This is the
placement modern tooling checks. There’s an open
Lighthouse issue (#10023)
proposing an audit that specifically checks whether <meta charset> equals
document.head.firstElementChild — i.e. flagging the tag when it isn’t the literal
first element in head, not merely when it’s missing. The direction of tooling is toward
checking placement, not just presence.
Only one charset meta element per document, and the charset attribute has no
effect in XML/XHTML documents (it’s permitted there only to ease migration to and
from XML). Worth a caveat if you’re working with XHTML-served content or
RSSAn RSS or Atom feed is an XML file listing a site's most recently published or updated URLs. Search engines accept it as a sitemap-style discovery signal for fresh content — not a replacement for a full XML sitemap./Atom-adjacent templates.
BOM, HTTP header, meta tag — the precedence order
Browsers don’t just read the meta tag in isolation; the encoding-sniffing algorithm checks three sources in a fixed order, and the first one that gives an answer wins:
- A UTF-8 byte-order mark (BOM) — a few bytes at the very start of the file. If the browser detects a BOM, that determines the encoding with certainty; nothing else is consulted.
- The HTTP
Content-Typeheader’s charset, if the server sends one and there’s no BOM. This takes precedence over the in-document meta declaration. - The in-document
<meta charset>(or legacyhttp-equiv) declaration, checked only if neither of the above supplied an encoding.
In practice, BOMs are rare on hand-authored HTML (they’re more common as an artifact
of certain text editors or file-export tools), so the header-vs-tag conflict is the
one that bites most often: a page that correctly declares <meta charset="utf-8">
can still render garbled if a CDN, reverse proxy, or misconfigured server sends a
different charset in the header. It’s a classic symptom right after a server or CDN
migration — the HTML didn’t change, but the header did, and now the header is
fighting the tag. When you’re debugging mojibake, check for a BOM and the response
header charset, not just the page source.
Is meta charset an SEO ranking factor?
No — and it’s worth being blunt because fear-based audit-tool copy sometimes implies otherwise. This is a renderingTurning HTML, CSS, and JavaScript into the final visual page and DOM.- and indexingStoring a crawled page in the search index so it can appear in results. Crawled is not the same as indexed — Google selects what to keep, and indexing isn't guaranteed.-correctness prerequisite, not a ranking signal.
Google’s guidance here is thin and indirect compared to the tags it discusses constantly (title, meta descriptionThe meta description is an HTML head tag — `<meta name=\"description\" content=\"…\">` — that suggests a short summary of the page for the search snippet. It's not a Google ranking factor, and Google rewrites it the majority of the time, but a good one can still lift click-through., robots, canonical). There is no dedicated Google Search Central page about character encoding — it’s one entry inside the general meta tags Google supports reference, under “Content-Type and charset.” Google’s only on-record line is a recommendation, not a ranking claim: “We recommend using Unicode/UTF-8 where possible.” No verbatim statement from Mueller, Illyes, Splitt, or Canel specifically naming “meta charset” or “mojibake” surfaces in the trade press or Search Off the Record archives — charset is treated as basic web-standards hygiene, table stakes like valid markup, rather than a topic warranting SEO commentary.
Bing has no distinct public position on the on-page tag either; its documentation
references UTF-8 only for its own API/feed formats (IndexNowIndexNow is an open push protocol that lets you instantly tell participating search engines (Bing, Yandex, Naver, Seznam, and Yep) which URLs you've added, changed, or removed via a simple HTTP request — and one submission is shared across all of them. Google does not use it. key files, Webmaster API
request headers), not as guidance about the HTML <meta charset> on your pages. Since
BingbotBingbot is Microsoft Bing's primary web crawler — the bot that discovers, fetches, and renders pages to build the Bing index. That index also powers Yahoo, DuckDuckGo, Ecosia, and Microsoft Copilot, so Bingbot's reach is far wider than Bing's own search-market share. is a standard HTML parser, the practical implication is the same: follow the
HTML spec’s UTF-8 / 1024-byte rule.
So where can it hurt you? Indirectly, and only when the encoding is genuinely broken: garbled text is a content-quality and UX problem, it can corrupt what appears in snippets, and severely broken output can look broken to Google’s indexing systems too. The industry consensus, as Ahrefs’ own meta-tags guide (by Joshua Hardwick) puts it, is that “unless your page is severely broken as a result of charset issues (which is unlikely), the impact is going to be quite minimal.” Fix it because broken text is bad, not because you expect a ranking bump.
How to check and fix it
A quick diagnostic path when you suspect an encoding problem:
- View source / DevTools. Confirm
<meta charset="utf-8">exists and is the first child of<head>. In DevTools, check theContent-Typeresponse header for a charset value — if it disagrees with the tag, the header wins and is your likely culprit. Rule out a BOM too: it’s rarer, but if present it beats both the header and the tag. - Validators and crawlersA crawler — also called a spider or bot — is an automated program that fetches web pages, extracts their links, and queues new URLs to visit. Search engines use crawlers to discover and download content for their index. flag it. The W3C validator and rule-based checkers (e.g. Rocket Validator’s “charset after the first 1024 bytes” rule) will call out a late or missing declaration. Site audits in Ahrefs Site Audit and Screaming Frog surface charset issues across a whole site.
- Fix the right layer. If the placement is wrong, move the tag to the top of head.
If the encoding is wrong (the bytes themselves aren’t UTF-8, or the header sends a
conflicting charset), fixing the meta tag alone won’t help — you have to re-encode the
file as UTF-8 and/or correct the server’s
Content-Typeheader so the header and tag agree.
The fix is almost always trivial once you’ve identified which layer is at fault. This is a stable, long-settled part of the HTML spec — there’s no recent deprecation or platform-behavior change to track; the only evolving nuance is tooling increasingly checking placement, not just presence.
Where this sits
The charset tag is one of the browser-facing head elements — like the viewport tag, it’s about rendering, not ranking, which puts it in a different bucket from the SEO-active tags in the meta-tags cluster (the title elementThe title tag is the HTML title element in a page's head that specifies the document's title. It's the primary source for the SERP title link and a confirmed light ranking factor — but since August 2021 Google doesn't always show it verbatim., the meta descriptionThe meta description is an HTML head tag — `<meta name=\"description\" content=\"…\">` — that suggests a short summary of the page for the search snippet. It's not a Google ranking factor, and Google rewrites it the majority of the time, but a good one can still lift click-through., and the robots family). It’s adjacent to the internationalization work I spend a lot of time on: encoding is the layer underneath hreflangHreflang is an annotation (in HTML, HTTP headers, or XML sitemaps) that tells search engines which language and optional region a page targets, and which alternate versions exist. It only works when every page in the cluster references all the others. and multi-script content — hreflang tells Google which language/region version to serve, but if the encoding is wrong the text in that version is garbled regardless. For the full map of head elements grouped by the job they do, see the meta tags hubMeta tags are HTML elements in a page's head that pass metadata about the page to search engines and browsers. For SEO only a few matter — the title element, the meta description, and the robots meta tag — while meta keywords and most others are ignored..
AI summary
A condensed take on the Advanced version:
- What it is:
<meta charset="utf-8">declares the document’s character encoding so browsers and crawlersA crawler — also called a spider or bot — is an automated program that fetches web pages, extracts their links, and queues new URLs to visit. Search engines use crawlers to discover and download content for their index. map raw bytes to the correct characters. - Spec rules: the declaration must sit within the first 1024 bytes of the whole
document; HTML5 requires the value to be
utf-8(and the actual encoding to be UTF-8). Best practice: the literal first child of<head>. Only one charset meta element per document; it has no effect in XML/XHTML. - Legacy syntax:
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">is the older pre-HTML5 form — redundant on modern pages; use the short form. You don’t need both. - Precedence order: a UTF-8 BOM, if present, wins over everything; otherwise a
server-sent
Content-Typecharset overrides the in-page tag — a classic post-migration mojibake bug. Debug the header (and check for a BOM), not just the source. - Why it matters: a missing/late/mismatched encoding causes mojibake (garbled accents, curly quotes, non-Latin scripts, emoji) — a renderingTurning HTML, CSS, and JavaScript into the final visual page and DOM./indexingStoring a crawled page in the search index so it can appear in results. Crawled is not the same as indexed — Google selects what to keep, and indexing isn't guaranteed.-correctness issue, not a ranking factor.
- What Google says: only an indirect line — “We recommend using Unicode/UTF-8 where possible.” No dedicated doc, no rep quote on charset/mojibake. Bing has no distinct on-page position. Industry framing (Ahrefs): impact is minimal unless the page is “severely broken.”
- Diagnose: view-source/DevTools for the tag and the response-header charset; validators (W3C, Rocket Validator) and site audits (Ahrefs, Screaming Frog) flag late or missing declarations. Fix the right layer — placement vs. actual encoding/header.
Official documentation
Primary-source and spec documentation.
Standards (WHATWG / MDN)
- HTML Standard (WHATWG) — Specifying the document’s character encoding — the normative rules: the charset declaration, the first-1024-bytes requirement, UTF-8, the one-per-document limit, and the XML exception.
- HTML Standard (WHATWG) — Determining the character encoding — the encoding-sniffing algorithm: BOM detection first, then the HTTP-level
Content-Typecharset, then the in-document meta declaration. - MDN —
<meta>: the metadata element — plain-language reference:utf-8-only for HTML5, the 1024-byte rule, and the legacyhttp-equivform.
- Meta tags and HTML attributes that Google supports — the only Google guidance touching charset, under “Content-Type and charset”: the accepted
http-equivandcharsetforms and the “use Unicode/UTF-8 where possible” recommendation.
Bing / Microsoft
- IndexNow — getting started — Bing references UTF-8 only for its own API/key-file formats, not as on-page HTML guidance. There is no dedicated Bing doc on the
<meta charset>tag.
Tooling
- Lighthouse issue #10023 — warn about late or missing
<meta charset>— the proposed audit checking whether the charset tag isdocument.head.firstElementChild.
Quotes from the source
On-the-record statements from the HTML spec, MDN, and Google. Each link is a deep link that jumps to the quoted passage where the source supports it.
WHATWG HTML Standard — what the tag is
- “The
charsetattribute specifies the character encoding used by the document. This is a character encoding declaration.” — HTML Living Standard (WHATWG). Source
MDN — the encoding and placement rules
- “This attribute declares the document’s character encoding. If the attribute is present, its value must be an ASCII case-insensitive match for the string
utf-8, because UTF-8 is the only valid encoding for HTML5 documents.<meta>elements which declare a character encoding must be located entirely within the first 1024 bytes of the document.” — MDN Web Docs, “<meta>: the metadata element.” Jump to quote
Google — the (thin) official position
- “These tags define the page’s content type and character set respectively. Make sure that you surround the value of the
contentattribute in thehttp-equivmetatag with quotes—otherwise thecharsetattribute may be interpreted incorrectly. We recommend using Unicode/UTF-8 where possible.” — Google Search Central, “Meta tagsMeta tags are HTML elements in a page's head that pass metadata about the page to search engines and browsers. For SEO only a few matter — the title element, the meta description, and the robots meta tag — while meta keywords and most others are ignored. and attributes that Google supports.” Jump to quote
Industry — the honest framing of the SEO impact
- “Unless your page is severely broken as a result of charset issues (which is unlikely), the impact is going to be quite minimal.” — Ahrefs Blog, “Meta TagsMeta tags are HTML elements in a page's head that pass metadata about the page to search engines and browsers. For SEO only a few matter — the title element, the meta description, and the robots meta tag — while meta keywords and most others are ignored. for SEO: A Simple Guide for Beginners” (Joshua Hardwick). Source
Meta charset audit — checklist
A quick pass to confirm your pages declare and render encoding correctly:
- Every page has
<meta charset="utf-8">in the<head>. - The charset tag is the first child of
<head>— before<title>,<link>,<script>,<style>, and any other<meta>. - The declaration lands within the first 1024 bytes of the document (it will if it’s the first child of head).
- The value is
utf-8— not ISO-8859-1, Windows-1252, or a per-region code page. - The file itself is actually saved/served as UTF-8 (the declaration and the real byte encoding must agree).
- Only one charset meta element per page.
- The server’s
Content-Typeresponse header charset agrees with the tag (the header wins over the tag if they conflict) — verify in DevTools, especially after any CDN or server migration. - No stray UTF-8 byte-order mark (BOM) at the start of the file — rare, but if present it outranks both the header and the tag.
- Spot-check pages with non-ASCII content (accents, curly quotes, non-Latin scripts, emoji) — plain English can look fine even when encoding is broken.
- Ran the page through the W3C validator / a crawlerA crawler — also called a spider or bot — is an automated program that fetches web pages, extracts their links, and queues new URLs to visit. Search engines use crawlers to discover and download content for their index. (Ahrefs Site Audit, Screaming Frog) to catch late or missing declarations at scale.
- Don’t add the legacy
http-equiv="Content-Type"form fresh — the short<meta charset="utf-8">is enough.
Meta charset cheat sheet
The two syntaxes
| Form | Syntax | Use it? |
|---|---|---|
| Modern (HTML5) | <meta charset="utf-8"> | Yes — this is what you want |
| Legacy (pre-HTML5) | <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> | Not for new work; redundant, only one needed |
The rules that matter
| Rule | Detail |
|---|---|
| Value | Must be utf-8 for HTML5 (spec requires the actual encoding to be UTF-8 too) |
| Placement (spec minimum) | Within the first 1024 bytes of the document |
| Placement (best practice) | The literal first child of <head> |
| Count | One charset meta element per document — no more |
| XML/XHTML | The charset attribute has no effect in XML documents |
| Precedence | A UTF-8 BOM wins over everything; else a server Content-Type header charset overrides the in-page tag |
Fast facts
- Wrong/missing/late encoding → mojibake (garbled accents, curly quotes, non-Latin scripts, emoji). Plain ASCII English can still look fine — the bug hides.
- Not a ranking factor. Google’s only line: “use Unicode/UTF-8 where possible.”
- Impact is minimal unless the page is severely broken (Ahrefs) — but broken text is still worth fixing for users and indexingStoring a crawled page in the search index so it can appear in results. Crawled is not the same as indexed — Google selects what to keep, and indexing isn't guaranteed..
- Debugging mojibake? Check for a BOM first, then the response-header charset, not just view-source — BOM beats the header, and the header beats the tag.
- Tooling is moving toward checking placement (first child of head), not just presence (see LighthouseLighthouse is Google's free, open-source tool that audits a page under simulated lab conditions and scores it 0–100 across Performance, Accessibility, Best Practices, and SEO. It's lab data — useful for debugging, not a ranking signal. #10023).
Test yourself: The Meta Charset Tag
Five quick questions on character encoding and the charset tag. Pick an answer for each, then check.
Build-time retrieval analysis plus live signals for this exact article. The automatic chunk report includes a deterministic readiness score and is ready without a model download.
Search Console
sampleGA4 traffic (28d)
sampleCloudflare traffic (7d)
sampledCrUX field data (28d, phone)
sampleGoogle NLP entities
localChangelog
Updated Jul 18, 2026.
Editorial summary and recorded change details.Summary
Added the full BOM/HTTP-header/meta-tag encoding-precedence order (a byte-order mark, when present, outranks both the HTTP header and the in-page tag), verified against the live WHATWG encoding-sniffing algorithm.
Change details
-
Documented that a UTF-8 byte-order mark (BOM) takes precedence over both the HTTP Content-Type header and the in-document meta charset declaration, with the header still beating the tag when no BOM is present.
Full comparison unavailable — no prior snapshot was archived for this revision.