FormatterHQ

HTML Entities to Text

Paste text full of entity codes and get clean, readable characters back — symbols, accented letters and emoji included.

Loading tool…
Ready.

How to use the HTML Entities to Text

  1. Type or paste into the HTML entities box, or click Sample. You can also drop a text file on either box, or load one into the HTML entities box with its Open file button.
  2. The Text box updates live as you type. It works both ways — edit the Text side to convert back, or click ⇄ Swap to exchange the sides.
  3. Use named entities (©) and Encode every character in the options bar above the editors only affect the reverse direction — the HTML entities output you get when you type in the Text box.
  4. Use Copy or Download on either box to take the result, or Clear to start again.

Convert HTML entities to text

HTML entities to text conversion takes codes like ♥, ☺ or 🚀 and replaces them with the characters they stand for. It is ideal for cleaning up copy that was pasted from HTML source, CMS exports, product feeds or spreadsheet columns full of & codes.

Example

Input:

Café – “Naïve” ♥ ☺ 🚀 ™

Output:

Café – “Naïve” ♥ ☺ 🚀 ™

Named, decimal and hexadecimal codes can be mixed freely in the same text, as they are here; the converter handles each one independently.

Three kinds of entity code

FormExampleMeaning
Named♥A name from the HTML5 entity table
Decimal♥The Unicode code point in base 10
Hexadecimal♥The Unicode code point in base 16

All three produce the same ♥. The converter supports every named entity in HTML5 and any numeric code point up to U+10FFFF, including emoji outside the Basic Multilingual Plane.

Cleaning up text for other uses

Entity codes are only meaningful inside HTML. Once text moves somewhere else — a spreadsheet, a JSON file, a mobile app, a PDF or a plain-text email — they appear literally. Converting them first gives you portable text:

  • Product titles in a CSV export showing “Salt & Pepper”.
  • Translations stored with entities that need to go into a JSON language file.
  • Blog excerpts that show ’ instead of an apostrophe on social media previews.

Spreadsheet programs do not decode entities, so if an imported column shows & or é, paste the column here, convert it and paste it back. In Python, html.unescape() does the same for a whole file.

If the output contains markup such as <p> after decoding, and you want only the words, pass it through the HTML Stripper next. To go from symbols to entity codes, use Text to HTML Entities.

Look-alike characters to watch after decoding

Several entities decode to characters that look almost the same as ordinary keyboard characters but compare differently in code, search and spreadsheets:

EntityCharacterEasily confused with
&ndash; / &mdash;– / —the hyphen-minus -
&minus;−the hyphen-minus -, so "−5" is not a number to Excel
&rsquo;’the straight apostrophe '
&times;×the letter x
&ensp;, &thinsp;wider or narrower spacesthe normal space

If a decoded value refuses to match a lookup or parse as a number, one of these is the usual suspect.

Things to keep in mind

  • &nbsp; decodes to a non-breaking space, which looks like a space but is a different character for search and comparison.
  • Double-encoded text (&amp;hearts;) needs two passes.
  • Codes without a trailing semicolon are decoded only where HTML5 allows it, just as in a browser.

The conversion takes place in your browser; your text is never uploaded.

Frequently asked questions

What does &amp;amp; mean?
It is an ampersand that has been encoded twice. One pass turns it into &amp;, and a second pass turns that into &.
Can it decode emoji codes like &#x1F600;?
Yes. Decimal and hexadecimal references for any Unicode code point, including emoji, are converted to the actual character.
Why do I see a space-like character that is not a space?
That is probably a decoded &nbsp;, the non-breaking space U+00A0. Replace it with a normal space if your application needs one.
Does this remove HTML tags?
No. It decodes entity codes only. Use an HTML stripper to remove tags from the result.

Last updated October 3, 2026

Related tools

Text to HTML Entities Convert plain text, symbols and accented letters into named HTML entities like &amp;copy; and &amp;hearts;. HTML Entities List Searchable list of 1,400+ named HTML character entities with decimal and hex codes, code points and CSS escapes. Click to copy. HTML to Text Converter Extract readable plain text from HTML: keeps paragraphs, headings, lists and tables, drops tags, scripts and styles. Text to HTML Converter Paste formatted text from Word, Google Docs or a web page, or type plain text, and get clean HTML code. Removes inline styles, classes and Word markup. ASCII to Text Convert ASCII or Unicode character codes (decimal, hex, octal or binary) back into readable text. Binary to Text Translate binary code (groups of 8 bits) back into readable text, with UTF-8 support. JSON URL Decode Decode a URL-encoded JSON string back into readable JSON and pretty-print it. JSON URL Encode URL-encode JSON so it can be sent as a query-string parameter or form field without breaking the URL. JWK to PEM Converter Convert JSON Web Keys or a whole JWKS (RSA, EC, OKP) into PEM public (SPKI) and private (PKCS#8) keys. Morse Code Translator Translate text to Morse code and Morse code back to text in two linked boxes, one for each direction. PEM to DER Converter Convert PEM certificates, keys and CSRs to binary DER: view it as hex or Base64 or download the .der file. PEM to JWK Converter Convert PEM public keys, private keys and certificates (RSA, EC, Ed25519) to JSON Web Keys or a JWKS with a thumbprint kid.