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

The fix in Excel

  1. Open a blank workbook and choose Data ▸ From Text/CSV.
  2. 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.
  3. 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

← Back to the CSV Fixer tool