HTML Entity Encoder & Decoder
Encode text to HTML entities or decode entity strings back to plain text — named, decimal, and hex references, all client-side.
Your Data Never Leaves Your Device
Every tool runs entirely in your browser. Nothing you type is uploaded, stored, or logged on our servers.
The HTML Entity Encoder & Decoder converts text to and from HTML character references — the escaped form required whenever literal &, <, >, ", or ' characters need to appear safely inside HTML markup instead of being interpreted as part of the document structure.
By default it encodes only the five reserved characters, keeping output readable for modern UTF-8 pages. Switch on Full mode to also convert every non-ASCII character into a named entity (like ©) or a numeric reference (like €) — useful for legacy systems or non-UTF-8 documents. Decoding recognizes named, decimal, and hexadecimal entity formats and resolves them back to plain text. Everything runs locally in your browser.
FAQ
Named entities use a mnemonic like &copy; for readability, decimal entities use a code point like &#169;, and hex entities use &#x000A9; — all three represent the exact same character and this tool decodes all of them interchangeably.
Use Full mode only if your page isn't served as UTF-8 or you need maximum compatibility with old systems — it encodes every non-ASCII character as an entity. For modern UTF-8 pages, encoding just & < > " ' keeps markup safe and output far more readable.
No. Encoding and decoding both run entirely in your browser using native browser APIs — nothing you type is ever sent to a server.
Those characters have special meaning in HTML markup — an unescaped < or & can break the page's structure or, worse, open the door to injected markup. Encoding them as entities renders them safely as literal text.
It decodes using the browser's own HTML parser, so any entity your browser recognizes — including unterminated ones without a trailing semicolon in some cases — will be decoded; anything genuinely invalid is left as literal text rather than causing an error.