Why Hindi text turns into garbage in Excel, and how to fix it
, 5 min read
You export a CSV with Hindi names, open it in Excel, and see नमसॠwhere the names should be. Nothing is corrupted. Excel simply guessed the wrong encoding.
What encoding means
Text files store numbers, and an encoding is the table that maps numbers to characters. Almost everything today uses UTF-8, which covers Devanagari, Tamil, emoji and the rest. Excel on Windows, when double clicking a CSV, has historically assumed an older regional encoding instead, which produces that scrambled output.
The fix when exporting
Add a byte order mark. It is a tiny invisible marker at the start of the file that tells Excel the file is UTF-8. Excel to CSV has this ticked by default, and Change CSV Delimiter offers it too. With the marker present, Excel opens Hindi correctly on the first try.
The fix when you already have a broken file
Do not retype anything. The original bytes are usually fine. Open the file with CSV to Excel, which reads it as UTF-8 and hands back a real .xlsx workbook where the text displays properly.
The other half of the problem: delimiters
CSV means comma separated, but plenty of systems use semicolons, because in many European locales the comma is the decimal separator. Some use tabs. If your file opens with everything crammed into column A, the delimiter is the culprit.
Change CSV Delimiter rewrites a file with the separator you need. CSV Validator reports what it found, including rows with the wrong number of columns and unbalanced quotes, which is the fastest way to explain a failed import.
One habit worth adopting
When a system will accept .xlsx, send .xlsx. It carries its own encoding and formatting, so none of this can happen. Keep CSV for systems that demand it, and check the file before sending rather than after the import fails.