Free text tools — updated for 2025 | All Text Tools

HTML Encoder & Decoder

Encode special characters to HTML entities, decode HTML back to plain text, or strip all HTML tags. Browser-based, instant, private.

HTML Encoder & Decoder

Essential HTML entities reference

CharacterNamed entityNumericUse case
& & & Must-escape in HTML attributes and content
< &lt; < Must-escape to prevent tag injection
> &gt; > Must-escape (less critical but recommended)
" &quot; " Must-escape inside quoted attributes
' &apos; ' Escape inside single-quoted attributes
&nbsp;   Non-breaking space
© &copy; © Copyright symbol
® &reg; ® Registered trademark
&trade; Trademark
&rarr; Right arrow

Frequently Asked Questions

If you insert user-supplied text directly into an HTML page without encoding it, a malicious user could inject <script> tags or event handlers — this is a Cross-Site Scripting (XSS) attack, one of the most common web vulnerabilities. Encoding converts < to &lt; so the browser displays it as text rather than interpreting it as HTML. Always encode user input before inserting it into HTML. Modern frameworks like React and Vue do this automatically; raw DOM manipulation in JavaScript does not.
"Strip tags" removes all HTML markup, leaving only the raw text content — useful for turning a rendered HTML document into plain text (e.g. for sending in a plain-text email or feeding into a word counter). "Decode" converts HTML entities back to their characters without removing the tags themselves — useful when you have encoded HTML and want to see the actual HTML source. Use strip when you want plain text; use decode when you want readable HTML.