WebTools

Useful Tools & Utilities to make life easier.

HTML Entity Decode — Convert HTML Entities Back to Readable Text Online

Turn encoded HTML entities back into normal, human-readable characters. Decode &, <, >, numeric codes, and every named entity — output clean text you can actually read and use.


HTML Entity Decode — Convert HTML Entities Back to Readable Text Online

HTML Entity Decode — Convert HTML Entities Back to Readable Text Online

When Your Text Looks Like a Robot Wrote It for Other Robots

You open a database export and find this: The company's Q3 revenue was > $2M — a 40% increase. Somewhere inside that mess is a perfectly normal English sentence. Or you scrape a webpage and the content comes back littered with &, ’, <, and — where letters and punctuation should be. Maybe someone emailed you an HTML snippet and every special character is encoded, making it nearly impossible to read without mentally translating each entity.

This is encoded HTML. It's doing exactly what it's supposed to do — representing special characters in a format that's safe for HTML rendering, database storage, and internet transmission. The problem is, you don't need it in that format anymore. You need the actual text. The readable version. The one a human can look at without squinting.

That's what this tool does. Paste any text containing HTML entities — named entities like & and ©, numeric entities like < and ©, hexadecimal entities like < and © — and get back clean, readable text instantly. Every entity resolved, every character restored, every piece of garbled-looking markup turned back into the words and symbols it was always meant to be.

Why Text Ends Up Encoded in the First Place

HTML entities exist for good reasons. As we explain in detail on our HTML Entity Encode tool page, certain characters have special meaning in HTML — angle brackets define tags, ampersands begin entity references, quotes delimit attributes. When these characters need to appear as visible content rather than markup, they're encoded into entity format so browsers know to display them instead of interpreting them.

The security angle is equally important. User-submitted content gets encoded before storage to prevent Cross-Site Scripting (XSS) attacks. Content management systems encode special characters to ensure database integrity. Email systems encode HTML to maintain compatibility across different clients. API responses often return HTML-encoded text as a safety measure.

All perfectly valid. But when you're extracting that content for a different purpose — migrating to a new CMS, analyzing text data, importing into a spreadsheet, sending it as plain text, or simply trying to read it — the encoding becomes an obstacle. You need to reverse the process, and doing it manually or with fragile regex patterns is a recipe for missed entities and broken output.

What Gets Decoded and How

Our decoder processes three categories of HTML entities.

Named entities are the most recognizable. They use human-readable keywords between an ampersand and semicolon: &amp; becomes &, &lt; becomes <, &gt; becomes >, &quot; becomes ", &apos; becomes ', &copy; becomes ©, &mdash; becomes —, &euro; becomes €, &nbsp; becomes a non-breaking space. There are over 2,000 named HTML entities defined in the HTML5 specification, and our tool recognizes every single one.

Numeric decimal entities use the character's Unicode code point in decimal format: &#38; becomes &, &#60; becomes <, &#169; becomes ©, &#8212; becomes —. Any valid Unicode code point works, from &#0; through &#1114111;, covering every character in every writing system on Earth — Latin, Cyrillic, Arabic, Chinese, Japanese, Korean, emoji, and everything in between.

Numeric hexadecimal entities use the same Unicode code points in hexadecimal: &#x26; becomes &, &#x3C; becomes <, &#xA9; becomes ©, &#x2014; becomes —. Hex entities are common in programmatically generated HTML because developers often work with hex values internally.

Our decoder handles all three formats simultaneously. You don't need to know or specify which format your text uses — paste it in, and every entity gets resolved to its corresponding character regardless of how it was encoded.

Real Scenarios Where Decoding Saves Hours

Database migration and content export. You're moving a website from one CMS to another. The old database stored all content with HTML entities encoded for safety. The new system handles encoding automatically on output, so importing pre-encoded content results in double encoding — &amp;amp; instead of &amp;, which renders as &amp; on the page instead of &. Decoding the content before import solves this cleanly. If you're migrating a site and need to verify the old server is still running during transition, our Website Status Checker lets you confirm both old and new sites are accessible simultaneously.

Web scraping and data extraction. You scraped product listings, news articles, or research data from the web. The raw HTML source contains encoded entities throughout the text. Before you can analyze the content, use it in a report, or import it into a dataset, you need clean text. Paste the scraped content into our decoder and get usable output in seconds. For developers building scrapers, knowing the target server's infrastructure helps too — our IP Information tool reveals the geolocation and hosting provider behind any domain, and our DNS Lookup tool shows the complete DNS configuration.

Email template debugging. You're troubleshooting an HTML email that renders correctly in some clients but shows raw entities in others. The first step is decoding the entities to see what the text is actually supposed to say, then re-encoding only what's necessary for the specific email client causing problems. Email delivery itself depends on correct MX records and SPF configuration — our MX Lookup tool verifies your mail server setup if delivery is the underlying issue.

Reading source code and documentation. You're reviewing a colleague's code or reading documentation that contains encoded HTML examples. Instead of mentally translating &lt;div class=&quot;container&quot;&gt; into <div class="container">, paste it into the decoder and read it like actual code. This is especially useful when reviewing security-related code where encoding is intentionally heavy.

API response processing. Many APIs return HTML-encoded text, especially when the response includes user-generated content. Social media APIs, content management APIs, and e-commerce platforms frequently encode special characters in their JSON responses. Decoding the response lets you work with the actual content. If you're debugging API connectivity, our Ping Tool can test latency to the API endpoint, and our Open Port Checker verifies that the API's port is actually accessible from your network.

Cleaning up copied text. You copied text from a webpage's source view or from a CMS's HTML editor and the clipboard grabbed encoded entities instead of rendered characters. Rather than manually fixing every &amp; and &rsquo;, paste the whole block into the decoder and copy the clean output.

The Double Encoding Problem

Double encoding happens when text that's already encoded gets encoded again. The ampersand in &amp; gets encoded to &amp;amp;. The less-than sign in &lt; becomes &amp;lt;. On the page, you literally see &amp; as visible text instead of &.

This is one of the most frustrating bugs in web development because it often happens silently. Data passes through multiple layers — user input, server processing, database storage, template rendering — and if more than one layer encodes the same content, you get double (or even triple) encoding. The symptom is unmistakable: your page shows literal entity codes as visible text.

The fix is simple with our tool: decode once to strip the outer layer, check the result, and decode again if another layer remains. Repeat until the text is clean. In a properly configured system, you should never need more than one or two passes.

HTML Entity Decode vs. Encode: When to Use Which

These two tools are mirrors of each other, and knowing which to use depends entirely on where your content is going.

Use HTML Entity Encode when your destination is HTML. You have readable text and need to make it safe for embedding in web pages, email templates, or database storage. Encoding protects against XSS vulnerabilities and prevents special characters from being misinterpreted as markup.

Use HTML Entity Decode (this tool) when your destination is anything other than HTML. You have encoded text and need to extract the readable content for analysis, migration, plain text usage, non-HTML documents, or human reading.

The two tools form a complete round-trip. Encode converts readable text to safe HTML. Decode converts safe HTML back to readable text. They're lossless — encoding then decoding returns the exact original text, and decoding then encoding returns the exact original entities.

Processing Happens in Your Browser

Just like our Encode tool, all decoding happens locally in your browser. Your text is never transmitted to any server, never stored, and never logged. This matters when you're decoding sensitive content — database exports containing user data, proprietary content from a CMS, or API responses with confidential information. Your data stays on your machine from start to finish.

For developers concerned about security beyond just encoding, our broader toolkit helps audit your web infrastructure. Check which ports are open on your servers. Verify your DNS configuration is correct and your MX records point to the right mail servers. Confirm your site is resolving to the correct IP. Look up your own IP address to verify your network configuration, or investigate any suspicious IP with our IP Information tool and IP to Hostname reverse lookup.

Common HTML Entities Reference

Rather than memorizing entity codes, here are the ones you'll encounter most often when decoding. The five critical HTML characters: &amp; (ampersand), &lt; (less than), &gt; (greater than), &quot; (double quote), &apos; (single quote/apostrophe). Typographic characters: &mdash; (em dash), &ndash; (en dash), &hellip; (ellipsis), &lsquo; and &rsquo; (curly single quotes), &ldquo; and &rdquo; (curly double quotes). Symbols: &copy; (copyright), &reg; (registered), &trade; (trademark), &euro; (euro), &pound; (pound), &yen; (yen). Spacing: &nbsp; (non-breaking space), &ensp; (en space), &emsp; (em space).

When you see these in raw text and need them as actual characters, this decoder is the fastest path to clean output. And once your content is cleaned up and published on your site, you can verify everything works end-to-end: check your server is responding with our Ping Tool, confirm your site is live with our Website Status Checker, and review what your browser reveals to every site you visit with our User Agent Finder.

Frequently Asked Questions

Can I decode an entire HTML page? You can paste an entire HTML page into the tool and all entities will be decoded. However, this will also decode entities that are intentionally encoded (like &lt; representing tag characters in code examples), so the decoded output may contain functional HTML tags mixed with content. For best results, decode only the text portions you need.

What happens if the text has no HTML entities? Nothing changes. Text without entities passes through the decoder untouched. You can safely paste any text without worrying about whether it contains entities — if there are none to decode, you get the same text back.

Will this decode URL-encoded text like %20 and %26? No. URL encoding (percent encoding) and HTML entity encoding are different systems. %26 is a URL-encoded ampersand, while &amp; is an HTML-encoded ampersand. This tool handles HTML entities only. For URL decoding, you need a separate URL decoder tool.

Can I decode entities from non-English languages? Absolutely. HTML entities cover the entire Unicode character set — every language, every script, every symbol. Whether the entities represent accented French characters, Chinese ideographs, Arabic text, or emoji, the decoder resolves them all to their correct Unicode characters.

My decoded text shows question marks or boxes instead of characters. Why? This is a font issue, not a decoding issue. The entity was decoded correctly, but the font your browser is using doesn't include a glyph for that character. This happens most often with obscure symbols, emoji, or characters from writing systems not covered by your default font. Try copying the output into a different application with broader font support.

What's the difference between decoding and stripping HTML tags? Decoding converts entities back to characters: &lt;b&gt; becomes <b>. Tag stripping removes HTML tags entirely: <b>text</b> becomes text. They solve different problems. If your text has encoded tags that you want to see as code, decode them. If your text has actual HTML tags that you want to remove, you need a tag stripper, not a decoder.


Related Tools

Contact

Missing something?

Feel free to request missing tools or give some feedback using our contact form.

Contact Us