Accept-Charset Header Parser
Breaks an Accept-Charset header into charsets and q-values and ranks them by preference. The header is deprecated; today's clients simply assume UTF-8.
Charsets
—
Accept-Charset and why nobody sends it any more
Accept-Charset was the header through which a client announced which character encodings it could interpret. It made sense on a web where ISO-8859-1, Windows-1252 and Shift_JIS coexisted and the wrong pick produced an unreadable page. Today it is formally obsolete: RFC 7231 discourages sending it, and browsers have stopped.
The page reads the header and orders the charsets by their q factor, just like the other negotiation headers — an entry without q counts as 1, and the order in the text is not the order of preference. It serves for making sense of old server logs, debugging a client that still sends the header, and working with legacy systems that negotiate by encoding.
The reason for its disuse is simple: UTF-8 won. Practically every current client understands UTF-8, and the recommended route is serving everything in it, declared through the charset parameter of Content-Type. Continuing to negotiate encoding today only adds cache variation and surface for error, with no benefit.
Frequently asked questions
Do browsers still send this header?
How do I declare the encoding properly?
Is Accept-Encoding obsolete too?
Related Tools
Accept-Encoding Header Parser
Splits an HTTP request header such as gzip, deflate, br;q=1.0 into codings ranked by q value, assuming q=1 whenever the parameter is missing.
Retry-After Header Parser (HTTP 429 and 503)
Paste a Retry-After value in delay seconds or HTTP-date form to get the wait in seconds and minutes, or the exact instant to try again.
Accept-Language Header Parser and q Sorter
Sorts the browser language tags by their q factor, keeps ties in the order sent, and flags q=0 refusals, invalid q values and the * wildcard range.
Cache-Control Parser
Read a Cache-Control header and show each directive (max-age, no-cache, public, immutable, stale-while-revalidate) with explanation.
Content-Disposition Filename Parser
Pulls the download filename out of a Content-Disposition header, preferring the percent-encoded filename* form from RFC 5987 and decoding it for you.
HTTP Cookie Parser
Paste a Set-Cookie header and inspect name, value, Domain, Path, Expires, Max-Age, HttpOnly, Secure and SameSite separately. Browser-only.