CSV shows ??? or boxes instead of Cyrillic, Chinese, Arabic
The names were in Russian, Chinese or Arabic. After opening or saving the
CSV, you see ??????, □□□ or a mix of random
accented letters. These look similar and have different causes. One of them
can be fixed, and the other can't.
Question marks: the characters are gone
A literal ? in the file means the original characters were
replaced at save time. This happens when Excel saves with plain "CSV
(Comma delimited)", which writes in your system's legacy (ANSI) code page.
A Western-European code page has no Cyrillic, Chinese or Arabic letters,
so each one becomes a question mark. That damage is permanent: the file
doesn't contain the information any more.
How to confirm: open the CSV in a plain text editor. If you see
? there too, the letters were lost. The only fix is to export
again from the original source, using the right option below.
Boxes and strange symbols: wrong encoding or font
- Boxes (▯) or
�: the font on your screen lacks the script, or the bytes were decoded with the wrong encoding. Try a different font first (Arial Unicode MS, Noto Sans, or a CJK font for Chinese). - Accented-Latin gibberish (
приветfor Cyrillic): UTF-8 read as Windows-1252. See the encoding article. - Different gibberish (
Ïðèâåò): a Cyrillic file saved as Windows-1251 and read as Windows-1252. - Chinese or Arabic garbage from a file made on an older system: probably GBK or Big5 (Chinese) or Windows-1256 (Arabic).
The fix in Excel
- Open a blank workbook and choose Data ▸ From Text/CSV.
- Change File Origin until the text reads correctly: 65001: Unicode (UTF-8) for most modern files, 1251 for Cyrillic, 936 for Simplified Chinese, 950 for Traditional Chinese, 1256 for Arabic. The preview updates live.
- Load. Then save as CSV UTF-8 (Comma delimited), so the next person doesn't hit the same problem.
Google Sheets reads UTF-8 without any setting and handles all three scripts. For Arabic and Hebrew, remember the text runs right to left, so the cell may look aligned the other way; that is not corruption.
Which "Save As" option to pick
In Excel's Save As list, CSV UTF-8 (Comma delimited)
keeps every script. The nearby entries called CSV (Comma
delimited), CSV (Macintosh) and CSV (MS-DOS)
all use legacy code pages and will replace characters they can't
represent. Unicode Text (.txt) also works but uses UTF-16 and
tabs. When in doubt, save a copy first and test it by opening the result in
a text editor.
A quick way to know which situation you are in: open the file in a plain text editor. If the text is readable there, the problem is only how Excel reads it, and re-importing fixes it. If the editor also shows garbage or question marks, the damage is in the file.
CSV Fixer checks whether your file is valid UTF-8 or looks like Windows-1251 (Cyrillic) or Windows-1252, reads it accordingly, and saves the result as UTF-8 with an optional BOM for Excel. It does not detect Chinese or Arabic legacy encodings (GBK, Big5, Windows-1256), and it cannot bring back characters that are already question marks. Nothing is uploaded; it all runs in your browser.
Fix my CSV