Text Encoder and Decoder

Encode or decode text as Base64, URL encoding, HTML entities, binary, hexadecimal, Morse code or ROT13. Handles emoji and accents. Free, instant and private.

Computers move text around in all sorts of encoded forms, and sooner or later you meet one: a Base64 string in an email header, percent signs in a web address, a block of 1s and 0s in a puzzle. This tool translates between plain text and seven common formats, in both directions.

The formats

Base64 represents any data using only letters, digits, plus and slash. It’s used to embed images and files in web pages, to carry binary data inside text-only systems like email and JSON, and in many authentication headers. Encoding makes data about a third bigger. It is not encryption, so anyone can decode it, and it should never be used to hide secrets.

URL encoding (also called percent encoding) makes text safe to include in a web address. Spaces and special characters are replaced by a percent sign and two hexadecimal digits: a space becomes %20. If you’ve ever seen a link full of % signs, this is why.

HTML entities replace characters that have special meaning in a web page with safe codes. < becomes &lt;, & becomes &amp;, and quotes become &quot; or &#39;. Encoding stops text being mistaken for markup, which is essential when displaying user input or code samples on a page. Decoding also understands numeric entities like &#233;.

Binary writes each byte of the text as eight 1s and 0s, separated by spaces. It’s popular for puzzles, teaching and novelty messages. Because it works on bytes, an accented letter or emoji uses more than one group.

Hexadecimal writes each byte as two characters from 0 to 9 and a to f. Programmers use it constantly for colours, memory and file contents. It’s more compact than binary, with the same byte-level view of the text.

Morse code turns letters and numbers into dots and dashes, with spaces between letters and a slash between words. It handles the 26 letters, digits and common punctuation. Anything without a Morse equivalent is skipped when encoding and shown as a question mark when decoding.

ROT13 is a simple substitution that moves each letter 13 places along the alphabet. Since there are 26 letters, doing it twice returns the original, which is why there’s no separate decode direction. It’s a classic way to hide spoilers and puzzle answers from a casual glance and offers no real protection.

Using the tool

Pick the format, pick Encode or Decode, and paste your input. The result appears straight away. To go in reverse, use Use result as input and flip the direction. Everything works with UTF-8, the encoding that covers emoji and non-English letters, so round trips are accurate.

Troubleshooting decoding

If a decode fails, check four things. First, that the format is the right one: a string with equals signs at the end is probably Base64, one with percent signs is URL-encoded. Second, that you’ve copied the whole string, because a missing character at the end breaks Base64. Third, that no extra characters, such as quotes or line numbers, were copied with it. Fourth, that the data was text in the first place. Base64 often holds an image or a file rather than words, and decoding it as text produces gibberish.

Typical uses

  • Developers decode Base64 values from tokens, headers and APIs, and URL-encode query parameters.
  • Web editors convert special characters to HTML entities before publishing code samples.
  • Puzzle makers and teachers encode messages in binary, hex or Morse.
  • Anyone curious can see what a string really contains.

A safety reminder

Encoding is not protection. If you paste a Base64 string you were sent, treat it with the same caution as the plain text, since it might contain a password or a private key. And don’t paste real credentials into any online tool that you don’t trust. This one works entirely in your browser, but it’s a good habit regardless.

After decoding, you can keep working on the text with find and replace or the case converter. If you’re building web addresses from titles, the slug generator creates clean ones.

Dedicated pages for each format

Each format here has its own page with more detail on how it works and where it trips people up: Base64, URL encoding, HTML entities, Morse code, binary and hexadecimal. If you want to learn how characters become bytes, the text to Unicode converter shows code points and UTF-8 bytes together, and the Caesar cipher is the classic next step for puzzle fans.

Frequently asked questions

Is Base64 a form of encryption?

No. Base64 is an encoding, not encryption. Anyone can decode it instantly, so never use it to protect passwords or secrets. Its job is to represent data using only safe, plain characters.

Why does my decoded text show strange characters?

The input was probably not encoded in the format you chose, or it was damaged when copied. Check the format setting and make sure you copied the whole string, including any equals signs at the end of Base64.

Does it support emoji and non-English letters?

Yes. Text is converted using UTF-8, the standard for the web, so emoji and accented letters round-trip correctly in Base64, URL, binary and hex.

What is ROT13 for?

ROT13 swaps each letter for the one thirteen places along the alphabet. It hides text from a casual glance, such as a puzzle answer, but offers no security. Applying it twice returns the original.