---
title: "Character encoding not declared early (seo/charset)"
description: "seo/charset: Browsers and crawlers need the charset within the first 1024 bytes (or in Content-Type) to decode text correctly."
canonical: https://void-design.vercel.app/rules/seo/charset
lastModified: 2026-09-16
---

# Character encoding not declared early

`seo/charset` · severity **warn** · category SEO · detected by `void seo` and `void audit`

## Why it matters

Browsers and crawlers need the charset within the first 1024 bytes (or in Content-Type) to decode text correctly.

## How to fix it

Send Content-Type: text/html; charset=utf-8 or put <meta charset="utf-8"> first in <head> (Next.js does both).

## References

- https://html.spec.whatwg.org/multipage/semantics.html#charset

## More seo rules

`void seo` reports 60 rules in this category. What search engines need from the raw response: status codes, titles and descriptions in <head>, self-referencing canonicals, one h1, crawlable links, Open Graph, icons, robots.txt and a sitemap with real dates.

- `not-https` Page served over plain HTTP — [seo/not-https](https://void-design.vercel.app/rules/seo/not-https)
- `origin-redirects` http:// or www/apex variant doesn't redirect to the canonical origin in one hop — [seo/origin-redirects](https://void-design.vercel.app/rules/seo/origin-redirects)
- `html-lang` <html lang> missing or not a valid BCP 47 tag — [seo/html-lang](https://void-design.vercel.app/rules/seo/html-lang)
- `viewport` Viewport meta missing, not device-width, or blocks zoom — [seo/viewport](https://void-design.vercel.app/rules/seo/viewport)
- `title-missing` No single non-empty <title> in <head> — [seo/title-missing](https://void-design.vercel.app/rules/seo/title-missing)
- `title-length` Title length outside 10–60 characters, or keyword-stuffed — [seo/title-length](https://void-design.vercel.app/rules/seo/title-length)
- `meta-description-missing` No meta description in <head> — [seo/meta-description-missing](https://void-design.vercel.app/rules/seo/meta-description-missing)
- `meta-description-length` Meta description length outside 50–160 characters — [seo/meta-description-length](https://void-design.vercel.app/rules/seo/meta-description-length)

Detected by `void seo` and `void audit`. Explain it in a terminal: `void rules seo/charset`
