HTML Entity Encoder
Encode and decode HTML entities (named, decimal, hex) with a searchable symbol table
| Char | Named | Decimal | Hex | Description |
|---|---|---|---|---|
| & | Ampersand | |||
| < | Less-than sign | |||
| > | Greater-than sign | |||
| " | Double quote | |||
| ' | Apostrophe / single quote (' works everywhere) | |||
| ␣ | Non-breaking space | |||
| ␣ | En space | |||
| ␣ | Em space | |||
| ␣ | Thin space | |||
| ␣ | None | Zero-width space (allows a line break) | ||
| ␣ | Zero-width non-joiner (used in Indic scripts) | |||
| ␣ | Zero-width joiner (used in Indic scripts and emoji) | |||
| ␣ | Soft hyphen (shows only at a line break) | |||
| ₹ | None | Indian rupee sign | ||
| $ | None | Dollar sign | ||
| € | Euro sign | |||
| £ | Pound sterling | |||
| ¥ | Yen / yuan sign | |||
| ¢ | Cent sign | |||
| ₩ | None | Won sign | ||
| ₽ | None | Ruble sign | ||
| ₨ | None | Rupee sign (old 'Rs' symbol) | ||
| । | None | Devanagari danda (full stop in Hindi) | ||
| ॥ | None | Devanagari double danda | ||
| ॐ | None | Devanagari Om | ||
| ऽ | None | Devanagari avagraha | ||
| © | Copyright | |||
| ® | Registered trademark | |||
| ™ | Trademark | |||
| § | Section sign | |||
| ¶ | Paragraph (pilcrow) sign | |||
| † | Dagger (footnote) | |||
| ‡ | Double dagger | |||
| – | En dash (ranges: 2025–26) | |||
| — | Em dash | |||
| ‘ | Left single quote | |||
| ’ | Right single quote / apostrophe | |||
| “ | Left double quote | |||
| ” | Right double quote | |||
| « | Left angle quote (guillemet) | |||
| » | Right angle quote (guillemet) | |||
| … | Ellipsis | |||
| • | Bullet | |||
| · | Middle dot | |||
| ¡ | Inverted exclamation mark | |||
| ¿ | Inverted question mark | |||
| × | Multiplication sign | |||
| ÷ | Division sign | |||
| − | Minus sign | |||
| ± | Plus-minus | |||
| ≠ | Not equal to | |||
| ≤ | Less than or equal to | |||
| ≥ | Greater than or equal to | |||
| ≈ | Almost equal to | |||
| ∞ | Infinity | |||
| √ | Square root | |||
| ∑ | Summation | |||
| ∏ | Product | |||
| ∫ | Integral | |||
| ∂ | Partial differential | |||
| ∆ | None | Increment (delta) | ||
| ° | Degree (25°C) | |||
| ‰ | Per mille | |||
| ½ | One half | |||
| ¼ | One quarter | |||
| ¾ | Three quarters | |||
| ² | Superscript two (m²) | |||
| ³ | Superscript three (m³) | |||
| µ | Micro sign | |||
| ∴ | Therefore | |||
| ∈ | Element of | |||
| ∩ | Intersection | |||
| ∪ | Union | |||
| ← | Left arrow | |||
| → | Right arrow | |||
| ↑ | Up arrow | |||
| ↓ | Down arrow | |||
| ↔ | Left-right arrow | |||
| ⇐ | Left double arrow | |||
| ⇒ | Right double arrow (implies) | |||
| ⇔ | Left-right double arrow (if and only if) | |||
| ↵ | Carriage return arrow | |||
| ✓ | None | Check mark (named ✓ in HTML5) | ||
| ✗ | None | Ballot X (named ✗ in HTML5) | ||
| ★ | None | Black star (named ★ in HTML5) | ||
| ☆ | None | White star (named ☆ in HTML5) | ||
| ♥ | Heart suit | |||
| ♠ | Spade suit | |||
| ♣ | Club suit | |||
| ♦ | Diamond suit | |||
| ◊ | Lozenge | |||
| ☎ | None | Telephone | ||
| ✉ | None | Envelope | ||
| 😀 | None | Grinning face emoji | ||
| α | Greek small alpha | |||
| β | Greek small beta | |||
| γ | Greek small gamma | |||
| δ | Greek small delta | |||
| Δ | Greek capital delta | |||
| θ | Greek small theta | |||
| λ | Greek small lambda | |||
| μ | Greek small mu | |||
| π | Greek small pi | |||
| σ | Greek small sigma | |||
| Σ | Greek capital sigma | |||
| ω | Greek small omega | |||
| Ω | Greek capital omega (ohm) | |||
| é | e with acute (café) | |||
| è | e with grave | |||
| ü | u with umlaut | |||
| ö | o with umlaut | |||
| ñ | n with tilde | |||
| ç | c with cedilla | |||
| ß | German sharp s | |||
| Æ | AE ligature |
Runs entirely in your browser. Nothing you type or upload is sent to us or stored.
Results are for general guidance. Please check anything important before relying on it. Terms of use
How to Use
- Choose Encode to turn text into HTML entities, or Decode to turn entities like
<and₹back into normal characters. - Type or paste your text into the input box. The result updates as you type.
- When encoding, pick the Entity style (named
é, decimaléor hexé) and What to encode: only the five HTML special characters, or every non-ASCII character as well. - When decoding text that was escaped twice (it shows
&lt;), switch on Fix double-encoded text. - Tap Copy. To find a symbol such as ₹, ©, → or a non-breaking space, search the Entity reference table and tap a code to copy it.
What are HTML entities?
An HTML entity is a short code that stands for one character. It starts with & and ends with ;. Browsers need them for characters that have a special meaning in HTML: if you write <b> in a page, the browser treats it as a bold tag; to show it, you write <b>. Entities also let you write any Unicode character, such as the rupee sign ₹, in plain ASCII text. This HTML entity encoder converts text to entities and back.
There are three ways to write the same character:
| Character | Named | Decimal | Hex |
|---|---|---|---|
| & | & | & | & |
| < | < | < | < |
| © | © | © | © |
| ₹ | none | ₹ | ₹ |
| Non-breaking space | |   |   |
The decimal number is the character's Unicode code point, and the hex form is the same number in base 16. The Indian rupee sign is U+20B9, which is 8377 in decimal. It has no named entity, so use ₹, or just type ₹ in a UTF-8 page.
Worked example
To show this line as text on a web page, without the browser treating it as a link:
encode it with Only & < > " ' and Named:
The rupee sign stays as it is, which is fine in any page saved as UTF-8. If the text must be pure ASCII (an old database column, a legacy email template), choose every non-ASCII character too and ₹ becomes ₹.
Which characters must be encoded?
&and<in normal text, always."inside attribute values wrapped in double quotes, and'inside single-quoted ones.>is not strictly required, but encoding it is common and harmless.
Encoding these five characters is also the basic defence against cross-site scripting (XSS) when you put user-supplied text into HTML. In real code, use your framework's escaping (React, Angular, Django and Blade templates do it automatically) rather than encoding by hand.
How decoding works here
The decoder follows the HTML5 rules that browsers use. All named entities are recognised, including newer HTML5 names like ✓. A few old names such as &,   and © work even without the semicolon, exactly as in a browser. Numbers 128–159 are read as Windows-1252 characters, so – becomes an en dash (–), a common leftover from text pasted out of old Word documents. Unknown names are left untouched and listed so you can check them.
Tips
- Seeing
&or&lt;on a live page means the text was encoded twice. Use Fix double-encoded text to recover it, then find where your code escapes it the second time. keeps two words on the same line, useful for "₹ 500" or "Dr. Rao".- Entities aren't encryption. Encoding an email address as entities only stops the simplest scrapers.