HTML Entities Encoder / Decoder

Escape and unescape HTML entities like & and <.

Runs locally in your browser
Output No signup · local processing

Your converted text appears here

Choose Encode or Decode, enter your text on the left, then click Convert. Special HTML characters are escaped or unescaped — all in your browser, with nothing sent to a server.

Runs entirely in your browser

Encode and decode HTML entities, locally

When you want a browser to show characters like <, >, and & as literal text instead of interpreting them as markup, you replace them with HTML entities — < becomes <, & becomes &. This tool encodes those special characters into entities so snippets render safely inside a page, and decodes named entities like © and numeric ones like © back into the original characters. Flip the mode toggle to switch direction. Everything runs in your browser and nothing is uploaded to any server.

Common questions

Which characters get encoded?

Encoding escapes the five characters that matter for HTML — & becomes &amp;, < becomes &lt;, > becomes &gt;, " becomes &quot;, and ' becomes &#39;. Ordinary letters, numbers, and spaces are left as-is.

How does decoding work?

Decoding uses the browser's own HTML parser to turn entities back into characters, so it understands named entities like &amp; and &copy; as well as numeric ones like &#169; and hexadecimal &#xA9;.

Why should I escape HTML at all?

Displaying user-supplied or example text without escaping lets < and > start real tags, which breaks layout and can enable cross-site scripting. Encoding to entities makes the text render exactly as written.

Does it change characters that do not need escaping?

No. Encoding only touches the special HTML characters. Everything else, including accented letters and emoji, is passed through unchanged so your text stays readable.

Is my text uploaded anywhere?

No. Encoding and decoding happen entirely in your browser tab. Your text never leaves your device and nothing is stored on a server.