← Back to SEO LearnNOTABIS SEO / LEARN

Technical SEO · 16 September 2026

Missing Character Encoding: Fixing Charset Declarations

NOTABIS reports charset-missing when measured HTML has neither a meta charset nor an http-equiv content-type declaration. Check the server header and actual bytes as well.

Quick answer

Declare the document’s character encoding, normally UTF-8, in the HTML head. NOTABIS reports charset-missing when it finds neither a meta[charset] declaration nor an http-equiv="content-type" meta declaration in the measured HTML. The check confirms markup presence; it does not prove that the server bytes and declaration agree.

What the issue means

A compact HTML declaration is:

<meta charset="UTF-8">

The encoding tells a browser how to decode bytes into characters. If the declaration is missing or inconsistent with the response, punctuation, accents, and non-Latin text can display incorrectly. HTTP Content-Type headers can also declare a charset and should be checked alongside the HTML.

Why it matters for SEO

Correct decoding protects the visible content that users and search systems read. A missing declaration is usually a low-priority technical hygiene issue, not a ranking penalty; the more serious risk is garbled content, broken metadata, or unusable pages in some clients.

How NOTABIS detects it

The charset-missing rule counts meta[charset] and meta[http-equiv="content-type"] elements in the measured HTML. It records a page-level issue only when the combined count is zero. It does not validate the attribute value, response header, byte-order mark, declaration order, or actual decoded bytes.

How to check it yourself

Inspect View Source and response headers:

curl -sS -D - https://example.com/page -o page.html

Confirm the HTML declaration appears early in the head and that the server’s Content-Type uses the same encoding. Open pages containing accented, emoji, or non-Latin text in more than one browser.

How to fix it

Add <meta charset="UTF-8"> near the start of every HTML document head and configure the server to send Content-Type: text/html; charset=UTF-8. Ensure templates, database connections, and file writes use UTF-8 as well. Remove conflicting declarations and recheck generated pages after deployment.

When this is intentional or does not need fixing

An API, image, stylesheet, redirect, or other non-HTML response does not use an HTML meta declaration. A legacy document may intentionally use another encoding, but the server header, bytes, and markup must agree. Do not change encoding blindly when a downstream integration depends on a legacy format.

Related issues

Review missing title tags, missing meta descriptions, and HTTP error responses when checking the complete document head and response.

Run a NOTABIS audit

NOTABIS records whether a measured HTML page declares a character set, so you can compare the markup with the response header and actual text rendering.

Measure before you change

See which issues affect your site.
Run a NOTABIS audit ↗