HTML Unescape
Decode HTML entities back to readable text online
Input
Settings
Output
About This Tool
HTML unescaping is what you need whenever you're looking at HTML source instead of a rendered page: reading raw scraped or RSS content, inspecting a CMS's stored output, or debugging why a template shows a literal "&" instead of "&". This tool decodes both named entities (&, , ©) and numeric entities — decimal (') and hexadecimal (') — back to their original characters, handling mixed formats in the same input. It also tolerates malformed or incomplete entities, such as a stray "&" missing its semicolon or a truncated numeric reference, without discarding the rest of the document, and runs entirely in your browser so raw HTML from production systems never has to leave your machine.
How to Use
Paste the entity-encoded text into the input panel — decoding happens automatically as you type. The tool recognizes named references (<, >, ", ', , ©, and the full HTML5 entity set), decimal numeric references (<), and hexadecimal numeric references (<), decoding all three in a single pass even when they're mixed together. Toggle 'Keep Line Breaks' if your source preserves newlines you want to retain. Because unescaping already-plain text simply leaves it unchanged, it's safe to run text through this tool speculatively when you're not sure whether it's encoded.
Common Use Cases
Reading Scraped Content
A web-scraping pipeline returns article text with &, ", and ’ in place of &, ", and ' — unescape it to get clean, readable text.
RSS/Atom Feed Processing
Feed descriptions are almost always entity-encoded; unescape them before displaying summaries in your own reader.
CMS Debugging
A field is rendering &amp; (double-escaped) instead of & — unescape once to confirm the stored value, then trace where the extra encoding pass happened.
Email Template QA
Check whether a transactional email's HTML source shows the literal entity or the intended character.
Log Inspection
Server logs sometimes store HTML-escaped request bodies; decode them to read the original payload.
Limitations & Important Notes
This tool decodes character entities only — it does not sanitize or interpret HTML tags, attributes, or scripts, so unescaped output containing <script> or event-handler attributes is not automatically safe to render as HTML; treat it as plain text unless you separately sanitize it. Unescaping text that is already plain is harmless but produces no change — watch out for double-encoded input (&amp;), which needs two passes to fully resolve to &. Malformed entities (missing semicolons, invalid numeric codepoints) are decoded on a best-effort basis and may be left as-is if they can't be resolved unambiguously. Very large documents (over 5MB) may be slow due to browser memory limits — consider a server-side tool for bulk batch processing.