U.UtilityApp
🔄 ConvertersFree · No signup

HTML Entity Decoder

Convert HTML entities like & and < back into their original characters.

The seven entities it decodes

The decoder recognises a fixed list and nothing else:

EntityBecomes
&&
&lt;<
&gt;>
&quot;"
&#39;'
&#x2F;/
&nbsp;an ordinary space

That covers text escaped for safe display, which is the common case when you copy from page source, a JSON API or a database export:

&lt;p&gt;Tom &amp; Jerry&lt;/p&gt;
<p>Tom & Jerry</p>

Note that &nbsp; turns into a normal space (character code 32), not a non-breaking one. Lines that relied on it to stay together can wrap after decoding.

Entities that are left as they are

Every other entity passes through unchanged, and matching is case-sensitive:

&copy; &mdash; &#8211; &#039; &#x27; &apos; &AMP; &euro;
&copy; &mdash; &#8211; &#039; &#x27; &apos; &AMP; &euro;

The same goes for most numeric references, curly quotes such as &rsquo;, currency symbols and accented letters like &eacute;. Two cases come up often. The zero-padded &#039;, which some server-side escaping functions write for an apostrophe, is not decoded, and neither is the hex form &#x27;. If your text still shows entities after decoding, replace those by hand.

Double-encoded text is decoded all the way

Text that was encoded twice, such as &amp;lt;, is common when data passes through two systems that both escape it. This decoder handles &amp; first and then the rest, so one pass decodes both layers:

&amp;lt;b&amp;gt;
<b>

That is handy for fixing doubly escaped text. The catch is that you can't recover text that was meant to show an entity literally. A tutorial line explaining &lt;, stored as &amp;lt;, comes out as a bare < rather than the four characters of the entity.

Check the output before you paste it into a page

Decoding turns escaped text back into live markup. If the input was escaped user content, the output can contain working <script> tags or event attributes. Read it first, and don't insert decoded text into a page's HTML unless you trust where it came from.

Frequently asked questions

Does it decode URL encoding like %20?+

No. Percent-encoding belongs to URLs, not HTML. Use the URL Decoder for strings like %20 or %2F.

Does it remove HTML tags from the text?+

No. Tags already in the input stay exactly where they are, and decoding can add more. If you want plain text, strip the tags as a separate step.

Will it change my line breaks or spacing?+

Only where an nbsp entity is replaced with a space. Line breaks, tabs and runs of spaces in the input are kept exactly as they are.

Embed this tool on your website

Free to use on blogs, school sites and intranets. Paste this code into your page's HTML; please keep the credit line.

<iframe src="https://utilityapp.lat/embed/convert/html-decode" title="HTML Entity Decoder" width="100%" height="600" style="border:0;max-width:760px" loading="lazy"></iframe>
<p style="font-size:13px"><a href="https://utilityapp.lat/convert/html-decode">HTML Entity Decoder</a> by UtilityApp</p>