Runs on your device · Your file never leaves your device.
Turn an .xlsx workbook into a plain CSV file that any system can import. Each sheet can be exported separately, so a multi-sheet workbook does not have to be flattened by hand.
Arabic and other non-Latin text is written with correct encoding, which prevents the mangled characters (mojibake) that appear when a spreadsheet is exported carelessly and reopened elsewhere.
The conversion runs in your browser, so customer lists, payroll data and patient records stay on your device; only the optional AI column detection sends a sample of rows, and only when you press it.
Not for: Keeping formulas, colours or multiple sheets in one file — CSV is plain text and holds values only.
The CSV holds every row of the sheet shown and is downloaded as the .csv itself. With several sheets, the Sheet list picks the one to convert, and the box "Every sheet of every file, each to its own file" gives one CSV per sheet, named after the file and the sheet, together in a ZIP. To cut a long sheet into parts, use the rows or size setting under Basic; /split-excel explains those settings.
Each value is written the way the sheet shows it. A cell with a number format keeps it: 5% is written 5%, $1,250.00 is written "$1,250.00" (in quotes, because of its comma), and a code shown as 007 is written 007. A number in the General format is written in full, so a phone number stored as 966501234567 keeps every digit and 2/3 is written 0.6666666666666666. TRUE and FALSE are written as words, and a formula as its last saved result. Number style sets the decimal and thousands marks of formatted numbers — 1,234.56, 1.234,56, 1 234,56 or 12,34,567.89 — and starts on the one this page’s language uses; a style with a decimal comma switches the column separator to a semicolon, as Excel in those languages expects.
A date keeps the format its cell uses, such as 05/01/2024 for dd/mm/yyyy or 05.01.2024 for dd.mm.yyyy. Excel's default short date is an exception: it follows the language of each computer that opens the file, so the same cell reads 1/5/24 on one and 05/01/2024 on another. Those cells are written as 2024-01-05, and 2024-01-05 18:00 when they hold a time, which every program reads the same way.
The separator is a comma unless you choose semicolon, tab or pipe under Format, and lines end with a carriage return and line feed. A cell containing the separator, a quote or a line break is wrapped in quotes, with inner quotes doubled, so a,"b" is written as "a,""b""". A text cell that begins with =, +, - or @ gets an apostrophe in front, so a spreadsheet does not run it as a formula.
The CSV is UTF-8 with a byte-order mark, the marker that tells Excel the file is UTF-8, so text in every script opens intact. Text that another program had already turned into characters like "é" or "اÙ" is repaired first. Some web systems export a workbook as .xls that is really an HTML table; such files are read as a table.
This page in other languages: العربية · Deutsch · Français · Español · Русский · Português · 中文 · हिन्दी · Türkçe · עברית · فارسی · اردو · Bahasa Indonesia · বাংলা