Convert Encoding of CSV Files Online
Detect and convert the character encoding of CSV files directly in your browser. Switch between UTF-8, Latin-1, Windows-1252, and more — no upload required.
How to convert Encoding of CSV files
- Drop your file. The tool reads the raw bytes and picks an encoding: the one named by a byte order mark if there is one, otherwise UTF-8 if the bytes are valid UTF-8, otherwise Windows-1252.
- Check the detected encoding and the preview of the first 2,000 characters. Accented letters and symbols should look right.
- If they do not, choose another source encoding: UTF-8, Latin-1 / Windows-1252, ISO-8859-15, UTF-16 LE or UTF-16 BE. The preview updates as soon as you change it.
- Click Convert & Download UTF-8. The file is saved with _utf8 added to its name.
Your file is processed locally in your browser and is never uploaded. The free limit is 50 MB per file; larger files work if your device has the memory for them.
Worked example
A cheese wholesaler's supplier list was exported from an old Windows system in the Windows-1252 encoding. Read as UTF-8, every accented letter and the euro sign show up as the � replacement symbol.
Input (CSV)
supplier,city,contact,min_order
K�serei Br�ndli,Z�rich,Zo� M�ller,�250
Fromagerie B�rard,Besan�on,H�l�ne Roux,�400
Caseificio Rossi,Parma,Luca Bianchi,�180Settings
- Detected encoding: Latin-1 / Windows-1252 (the bytes are not valid UTF-8)
- Source encoding: Latin-1 / Windows-1252, left as detected
- Output: UTF-8, the only output option
Result
| supplier | city | contact | min_order |
|---|---|---|---|
| Käserei Brändli | Zürich | Zoë Müller | €250 |
| Fromagerie Bérard | Besançon | Hélène Roux | €400 |
| Caseificio Rossi | Parma | Luca Bianchi | €180 |
Windows-1252 stores each of these characters as a single byte that is not valid UTF-8 on its own, which is why a UTF-8 reader shows �. Decoding with the right source encoding recovers them, and the file is saved as UTF-8. The euro sign is a useful test: Windows-1252 stores it as byte 0x80 and ISO-8859-15 as 0xA4, so the wrong choice between those two shows a different symbol.
Working with CSV files
A CSV file has no field that declares its encoding, so every program guesses. Excel's plain "CSV (Comma delimited)" option saves in the computer's ANSI code page, which is Windows-1252 across Western Europe and the Americas. Most databases, Python and R expect UTF-8. That mismatch is the usual cause of é or � appearing in CSV imports. This tool only decodes and re-encodes the bytes. Delimiters, quotes, line endings and the header row are left exactly as they are.
The converted CSV has no byte order mark. Most tools prefer that, but Excel on Windows may open a UTF-8 CSV without the mark as if it were ANSI when you double-click it, and the accents look broken again. The data is fine. In Excel, use Data > From Text/CSV and choose 65001: Unicode (UTF-8), or convert the CSV to a workbook instead. Files saved with Excel's "Unicode Text" option are UTF-16 LE with a byte order mark and tab delimiters, and they are detected automatically.
Frequently Asked Questions
Why does my converted CSV still look wrong when I double-click it in Excel?
Excel guesses the encoding of CSV files opened directly and often assumes the local ANSI code page when there is no byte order mark. Import the file through Data > From Text/CSV with UTF-8 selected, or convert it with the CSV to Excel converter.
Does converting the encoding change my CSV data?
Only the bytes used to store each character. Commas, quotes, line endings and the header are unchanged. If the source encoding was set wrong, characters that could not be decoded are saved as �, so check the preview before downloading.
Which encodings can I convert to?
Only UTF-8. You can read the file as any of the six listed encodings, but the download is always UTF-8, which every current database, language and spreadsheet can read.
Why is there no separate ISO-8859-1 option?
Browsers treat the label ISO-8859-1 as Windows-1252, following the web Encoding Standard, so the two would always give the same result. They are offered as one option, Latin-1 / Windows-1252. Windows-1252 only adds printable characters in bytes 0x80 to 0x9F, such as €, curly quotes and dashes. ISO-8859-15 is a separate table and does change some characters.
What if no source encoding makes the preview look right?
The text may have been damaged before it reached you. A UTF-8 file that was opened and saved as Windows-1252 shows sequences like Zürich in every encoding. Changing the encoding again cannot undo that. Fix the common sequences with Find and Replace, or export the data again from the source.
Related Tools
Repair CSV Files Online
Repair malformed CSV files directly in your browser. Fix unbalanced quotes, inconsistent column counts, BOM markers, and mixed line endings — no upload required.
Trim Whitespace in CSV Files Online
Trim leading and trailing whitespace from all text columns in CSV files, directly in your browser. No upload required.
Find & Replace in CSV Files Online
Find and replace text values in CSV files directly in your browser. Supports plain text and regex patterns across any column — no upload required.
Convert Encoding of JSON Files Online
Detect and convert the character encoding of JSON files directly in your browser. Switch between UTF-8, Latin-1, Windows-1252, and more — no upload required.
CSV Viewer Online
View and inspect CSV files directly in your browser. Browse rows, check column names and data types — no upload required, your data stays on your device.
Convert CSV to Parquet Online
Convert CSV files to Parquet format directly in your browser. No upload required — your data never leaves your device.