How to Convert Excel (XLSX) to CSV UTF-8 Without Losing Data
Most import tools — Mailchimp, Shopify, Google Contacts, CRMs — want a UTF-8 CSV, but Excel's default "Save As CSV" doesn't reliably produce one. Pick the wrong option and accented names get corrupted, leading zeros vanish, and your import fails. Here's how to convert an XLSX to a clean UTF-8 CSV the right way, and how to verify you actually got one.
Why the Encoding Matters at All
A CSV is just bytes, and the encoding is the agreement about which bytes mean which characters. UTF-8 is the universal standard — it covers every accent, currency symbol, and alphabet, and it's what nearly every import tool assumes. Excel's plain "CSV (Comma delimited)" option ignores that and writes your system's legacy encoding instead (Windows-1252 on most US and Western European machines). For plain ASCII data the two are identical, which is why the problem hides until the first José, Müller, or Zoë enters your data — then the importer reads the legacy bytes as UTF-8 and produces mojibake:
What you saved (Windows-1252) What the importer displays (read as UTF-8)
José García Jos\u00e9 Garc\u00eda → José GarcÃa
Müller & Söhne Müller & Söhne
€49.00 €49.00The corruption also runs the other way: a truly non-Latin value (Chinese, Arabic, Cyrillic) saved through the legacy option doesn't even get mojibake — the characters are simply replaced with question marks, and no downstream fix can recover them.
Method 1: Save As CSV UTF-8 (Excel 2016+)
On the File tab, choose Save As. In the "Save as type" dropdown, select "CSV UTF-8 (Comma delimited) (.csv)" — not the plain "CSV (Comma delimited)" option, which saves in your system's local encoding and is the usual cause of corrupted characters. This option exists in Excel 2016 and later.
Excel will warn that features like formulas, charts, and multiple sheets can't be saved in CSV. That's expected: CSV is plain text and only keeps the values on the active sheet. Click Yes to continue — but note "active sheet": if the workbook has several tabs, save each one you need as its own CSV, and remember that formulas export as their current calculated values.
One quirk to know about: Excel's UTF-8 option writes a BOM (byte order mark) — three invisible bytes at the start of the file that label it as UTF-8. Most modern importers handle it fine, but some strict parsers read those bytes as part of the first header, so a tool complains that column "\ufeffemail" doesn't match "email". If your import maps every column except the first one, the BOM is the likely culprit.
Method 2: Google Sheets (Any Excel Version)
If you're on an older Excel without the UTF-8 option, upload the workbook to Google Sheets (File > Import), then use File > Download > Comma-separated values (.csv). Google Sheets always exports UTF-8 without a BOM, so accents and Unicode survive intact and strict parsers stay happy. The trade-offs: it's a manual round trip through your browser, only the current sheet downloads, and Sheets applies its own type guessing on import, so check leading-zero columns after the round trip just as you would in Excel.
Method 3: LibreOffice (Full Control)
LibreOffice Calc, free on every platform, is the only spreadsheet of the three that asks instead of guessing. Open the XLSX, choose File > Save As > Text CSV, tick "Edit filter settings," and you get an explicit dialog: character set (choose Unicode UTF-8), field delimiter (comma), and quoting. It's the most reliable manual route when you need certainty about exactly what's being written, and a good escape hatch when Excel's regional settings insist on semicolons.
Watch Out for These Data-Loss Traps
Encoding is only half the battle. The other half is Excel's type coercion, which damages values before they ever reach the CSV — and the damage happens on save, silently, with no warning dialog.
Leading Zeros Disappear
Zip codes like 02134, SKUs like 00451, and phone numbers get treated as numbers, so Excel strips the leading zero and "02134" becomes "2134". Format those columns as Text before entering data, or the zeros are gone for good once you save.
Long Numbers Turn Into Scientific Notation
Long IDs, credit-card-length numbers, and barcodes can be rewritten as something like 1.23457E+12. Excel keeps only 15 significant digits, so once it converts them, the trailing digits are replaced with zeros and permanently lost. Format the column as Text first to preserve the full value.
Dates Get Reformatted
Excel displays dates according to your locale, and that displayed format is what lands in the CSV. A column that looks like 15/03/2026 in one region and 03/15/2026 in another will export differently. Decide on a target format (ISO 8601, YYYY-MM-DD, is safest) before exporting.
Semicolons Instead of Commas
On systems with European regional settings, Excel writes CSVs with semicolon delimiters — the file says "Comma delimited" and delivers semicolons anyway. Importers that expect commas read the whole row as one column. If your export lands in a single column on import, check the delimiter before anything else; routing through Google Sheets or LibreOffice (with the delimiter set explicitly) fixes it.
If the Corruption Already Happened
Whether mangled data is recoverable depends on which trap caught it. Mojibake from the wrong encoding is often reversible if you still have the original file: reopen the CSV while telling the tool the true encoding (in Excel, Data > From Text/CSV and set File Origin to Windows-1252; in LibreOffice, pick the character set in the import dialog), then re-save as UTF-8. Question-mark substitutions are not reversible — the characters were discarded at save time. Stripped leading zeros on fixed-length fields like ZIP codes can be rebuilt with a pad (or a regex replace), but scientific-notation damage to long IDs is permanent, because the trailing digits were rounded away. When in doubt, go back to the XLSX and re-export properly; the workbook still holds the intact values.
Verify the File Before You Import It
A 30-second check saves a failed import — open the CSV in a plain text editor (not Excel) and confirm:
- Accented names and symbols display correctly (no Ã, €, or ? substitutions)
- Values are separated by commas, not semicolons or tabs
- Leading zeros are still present on ZIP/SKU/phone columns
- No E+ scientific notation in ID or barcode columns
- Dates are in the single format your destination expects
The one thing you must not do is verify by double-clicking the CSV back into Excel: opening it re-runs the same type guessing and can corrupt the very values you're checking — and if you hit save, the corruption becomes permanent.
The Faster Way: Reliable Conversion Every Time
PipeSheets reads your XLSX directly and exports a standards-compliant UTF-8 CSV, preserving values as they are — leading zeros stay, long IDs keep every digit, and accents survive because the output is always UTF-8. Upload the workbook, choose CSV output, preview the result to confirm it, and download a clean file that imports anywhere on the first try.
Since the file is passing through anyway, let PipeSheets clean it in the same run: Quick Clean trims stray whitespace, standardizes null placeholders like N/A, drops fully empty rows and columns, and normalizes headers to snake_case. Save the steps as a pipeline and every future workbook from the same source converts to an identical, import-ready UTF-8 CSV in one click.
Related guides
- Mailchimp Tags and Groups in CSV Imports: Comma-Separated Without the BreakageMailchimp reads tags from a single Tags column with commas between values, and that cell has to be quoted in the raw CSV or the tags spill into your other columns. Here is the exact format for tags and groups, plus how duplicates and unsubscribed contacts behave on import.
- Fix Weird Characters in a CSV (é, â, ’) Once and for AllWhen accents turn into é and apostrophes become ’, your file's encoding got crossed. Here's what causes mojibake and how to recover clean text.
- Convert European Number Formats (1.234,56) to US Format in CSV FilesEuropean-format numbers (1.234,56) look almost right to US-locale software — and that's what makes them dangerous. Here's how to convert them cleanly.
- Fix UTF-8 BOM, Smart Quotes, and Encoding Errors in CSV FilesEncoding bugs are the worst kind of CSV problem because they hide in plain sight. Here's how to find them and fix them once and for all.
Try the automated solution
PipeSheets can fix these issues automatically. Clean your first file free.
Clean Your CSV