Why the characters change
Inside a file there are only bytes. An encoding is the agreement that says which byte or bytes mean which letter. UTF-8 can represent every language. Older single-byte tables such as Windows-1252 or Windows-1251 give the same byte different meanings, and Japanese files in Shift_JIS use two bytes per character.
Nothing in a plain CSV announces its encoding, so software has to guess. When the guess is wrong, nothing is broken in the file. The same bytes are simply shown as the wrong letters:
| Meant to say | File was saved as | Read as Windows-1252 |
|---|---|---|
| Привет | Windows-1251 (Cyrillic) | Ïðèâåò |
| Gdańsk | Windows-1250 (Central European) | Gdañsk |
| 日本語 | Shift_JIS (Japanese) | “ú–{Œê |
How to recognise what went wrong
- Pairs like “é” or “ü” where an accented letter should be. This usually means a UTF-8 file was read as a single-byte table such as Windows-1252.
- Black diamonds or “�”. These mark bytes that the chosen encoding could not decode at all. If they were already in the file when you received it, the original letters are gone.
- Plausible but wrong letters (“Ïðèâåò” instead of “Привет”). A single-byte code page was read with another one. This is the hard case because nothing looks like an error.
- Everything else is fine, only some languages are wrong. Ask where the file came from: an older Windows system, an export from a regional edition or an accounting package often writes the local code page rather than UTF-8.
Read the file with the right encoding in Riluko
- Open your CSV in the CSV Cleaner. Riluko reads the file in your browser and does not upload it.
- Check the Encoding line in the file summary. It says whether the encoding was detected or chosen. A file that is not valid UTF-8 is read as Windows-1252, which is only a guess.
- If the letters look wrong, open Text encoding of your file and choose the likely one: Windows-1251 for Cyrillic, Windows-1250 for Polish and other Central European languages, Shift_JIS for Japanese, and so on.
- The table updates because Riluko decodes the original bytes again, not the text it already showed. Try another encoding until the text reads correctly.
- Download the file. The download is UTF-8 (with the “Add a UTF-8 marker for Excel” option on by default), which most modern programs read correctly.
If you have applied cleaning steps, changing the encoding starts again from the original file, so Riluko asks first and then clears your steps. Your original file is never modified. Riluko also warns you when it finds replacement characters (“�”) or unusual control characters, which usually point to the wrong encoding.
Try it on synthetic files
Made-up product lists saved in legacy encodings. They show garbled text until you choose the right encoding. Nothing leaves your browser.
What about Excel?
Microsoft documents that when Excel opens a .csv directly it “uses the current default data format settings”, and that you can instead import through Data → From Text/CSV (Import or export text (.txt or .csv) files). Microsoft’s page does not describe text encodings, so this guide does not quote exact Excel settings for them.
Third-party guides report that the import preview offers an encoding (sometimes called “file origin”) setting and that newer Excel versions can save as “CSV UTF-8”. We could not confirm those labels in Microsoft’s own documentation, and they vary by version, so check what your Excel shows. A reliable alternative is to get the characters right here first and open the UTF-8 download.
Limits worth knowing
- Automatic detection is a guess. Riluko recognises UTF-16 by its byte order mark, then strict UTF-8, and otherwise falls back to Windows-1252. It cannot tell one single-byte code page from another, so you choose.
- Damage that already happened cannot be reversed. If the file contains “?” or “�” where letters used to be, the information is no longer in the file.
- One encoding per file. A file that mixes encodings (for example pasted together from two systems) cannot be fully correct with a single choice.
- The list depends on your browser. Riluko offers only the encodings your browser can decode, which come from the WHATWG Encoding Standard.
CF F0 read as Windows-1251 → Пр CF F0 read as Windows-1252 → Ïð CF F0 read as KOI8-R → оП
Frequently asked questions
Does choosing an encoding change my file?
No. Your original file is never modified. Riluko decodes it again in the browser and lets you download a new UTF-8 file.
Why does Riluko say “detected” when it only guessed?
For UTF-8 and UTF-16 the detection is reliable. When a file is not valid UTF-8 the label says Windows-1252 and the note explains that this is a guess.
Can the separator and the encoding both be changed?
Yes. They are independent, and changing one keeps the other. See CSV opens in one column in Excel for the separator.
Is my file sent anywhere?
No. Decoding happens in your browser. See the privacy page.