Text Encoding Converter
Convert text or a text file between UTF-8, UTF-16, Windows-1252, Latin-1 and other character encodings.
Drag & drop a text file here, or click to browse
No uploads. Your files stay on your device.
Source encoding applies to files you load โ typed text is already Unicode.
The encoded bytes appear here as a hex dump as you type.
How it works
Drop a text file and the tool reads its raw bytes, detects the encoding from the byte order
mark (or by testing whether the bytes are valid UTF-8) and decodes it to readable text. You
can override the guess with any of the supported source encodings โ UTF-8, UTF-16 LE/BE,
Windows-1252, the ISO-8859 Latin family, Windows-1250/1251/1254, KOI8-R, Mac Roman, Shift
JIS, EUC-JP, GB18030, Big5 and EUC-KR โ which is the quickest way to rescue a legacy export
that opens as mojibake such as Cafรยฉ.
The decoded text is then re-encoded to the target encoding you pick, with an optional byte
order mark for UTF-8 and UTF-16. A hex dump shows exactly which bytes you get, so you can
confirm that รฉ is one byte (E9) in Windows-1252 but two
(C3 A9) in UTF-8. If a character does not exist in the target character set โ
an emoji or Japanese text converted to Latin-1, for example โ it is replaced with
? and the tool warns you which characters were lost, since that loss is
permanent.
Everything runs in your browser with the built-in TextDecoder and
TextEncoder APIs, and legacy encoders are built on the fly from the browser's
own decoding tables. Nothing is uploaded, so it is safe for exports, logs and customer data.
Frequently asked questions
How do I convert a file from Windows-1252 (ANSI) to UTF-8?
Drop the file on the tool. It reads the raw bytes, detects the encoding from the byte order mark or by testing UTF-8 validity, and shows the decoded text. Override the guess with the source encoding menu if the detection is wrong. Leave the target set to UTF-8, tick the BOM box only if the program you are feeding needs one, and click Download converted file.
Why does my text show up as "Cafรยฉ" and can this fix it?
That is mojibake: bytes written in UTF-8 were read as Windows-1252, so one accented character became two. Load the original file and set the source encoding to UTF-8 and the text becomes readable again. If you only have the garbled text, it cannot always be recovered, because the misreading may already have discarded bytes.
What happens to characters the target encoding cannot store?
Legacy character sets like Latin-1 or Windows-1252 hold only 256 characters, so emoji, Japanese, Greek or Cyrillic text has no representation. Those characters are replaced with a question mark and the tool lists exactly which ones were lost. The loss is permanent, so keep a UTF-8 copy of the original before converting down.