How-toJune 15, 2026 · 2 min read

How to Fix CSV Encoding Problems (UTF-8, UTF-16, Windows-1252)

Seeing é, , or question-mark boxes in your CSV? Here's how character encoding works and how to fix garbled CSV text on any platform.


Character encoding is the number-one reason a CSV "looks broken." Names come through as José, an apostrophe becomes ’, or every cell is full of boxes. The good news: your data is almost always fine. It's just being decoded with the wrong encoding. Here's what's happening and how to fix it.

What encoding actually is

A text file is a sequence of bytes. An encoding is the rulebook that maps those bytes back into characters. The same bytes mean different things under different rulebooks:

  • UTF-8 — the modern standard. Represents every character in every language. Default almost everywhere.
  • UTF-16 (LE/BE) — uses two bytes per character; common in some Windows and Java exports.
  • Windows-1252 / Latin-1 — older single-byte encodings still produced by legacy Windows software and some exports from Excel.

If a file is written as UTF-8 but opened as Windows-1252, multi-byte characters get split into nonsense — that's mojibake.

How to fix it

The fix is always the same: open the file with the encoding it was actually written in. The challenge is knowing which one that is.

CEESVEE handles this automatically. When you open a file it auto-detects the encoding (UTF-8, UTF-16 LE/BE, Windows-1252) and the delimiter for you, and it handles the byte-order mark (BOM) correctly. If the guess is ever wrong, there's a dropdown to override it — the grid re-decodes instantly so you can see the right answer immediately.

Step by step

  1. Open CEESVEE and open your CSV. In most cases the detected encoding is already correct and the text looks right.
  2. If characters look garbled, change the Encoding dropdown. Try UTF-8 first, then Windows-1252, then UTF-16. The preview updates live, so the correct one is obvious.
  3. Convert it permanently with Save As → choose UTF-8 as the export encoding. Now every other tool will read it correctly too.

Why this beats Excel's import wizard

Excel can import with a chosen encoding, but it's buried in a legacy text-import flow, it guesses poorly on auto-open, and it will happily re-mangle the file on save. A purpose-built editor that detects encoding on open and lets you set it explicitly on export removes the guesswork from both ends of the round-trip.

A note on BOMs

Some files start with an invisible byte-order mark — a few bytes that signal the encoding. Handled correctly, it's invisible. Handled wrong, it shows up as  at the start of your first cell. CEESVEE strips it on read and lets you choose whether to write one on export. There's a full explainer in what a BOM is and how to handle it.

The bottom line

Garbled CSV text is a decoding problem, not a data problem. Open the file with the right encoding and it snaps back to normal; save it as UTF-8 and it stays fixed everywhere.

Download CEESVEE for free — it detects the encoding for you so you rarely have to think about this at all.

Frequently asked questions

What encoding should a CSV file use?

UTF-8 is the safest, most widely supported choice. It can represent every character and is the default for most modern tools. Only use UTF-16 or a legacy encoding like Windows-1252 when a specific system requires it.

Why do I see é or ’ in my CSV?

Those mojibake sequences appear when a UTF-8 file is read as Windows-1252 (or vice versa). The bytes are fine — they're just being decoded with the wrong encoding. Reopening the file with the correct encoding fixes the display.

How do I convert a CSV to UTF-8?

Open it in CEESVEE with the correct source encoding, then use Save As and choose UTF-8 as the export encoding. The text is re-encoded losslessly.

Keep reading

All guides