convert Excel (.xlsx) to CSV - without uploading the file
Almost every "convert xlsx to csv online" tool works by sending your spreadsheet to a server. This one does not have a server to send it to. The workbook is unzipped and parsed by your own browser, and the CSV is written on your machine - which matters rather a lot when the file is a patient extract, a payroll run, or anything else you are not allowed to hand to a stranger.
how to use it
- Drop a .xlsx or .xlsm file anywhere on the page. The first visible sheet opens straight away - no dialog asking which one you meant.
- If the workbook has several tabs, a sheet chip names the one you are looking at and every other sheet sits one click below it. There is also open all sheets in the engine, which loads each tab as its own SQL table so you can join across them.
- Clean it if you need to: drop columns, rename, filter, dedupe, scrub PII. Every change is a visible step you can toggle or undo.
- Choose export clean file · csv. The whole sheet streams through your steps, not just the preview.
what it gets right that a spreadsheet does not
- Leading zeros survive: a chart number stored as 0001234 or a ZIP code as 07030 comes through with its zeros, because values are read as the file STORES them rather than as Excel displays them.
- Dates are dates: a date cell is a number wearing a format, and read carelessly it arrives as 45678. Here it becomes 2025-01-21 - including custom formats, the East Asian locale formats, and Excel's deliberate 1900-02-29 that never existed.
- Long identifiers stay whole: an NPI or account number past 15 digits keeps every digit instead of being rounded to fit a spreadsheet's precision.
- Every string shape is handled: shared strings, inline strings, formula results, and text split across formatting runs all come back as one value.
- Nothing is quarantined: worksheets are ragged by nature, so rows are padded to the widest before the CSV is written. A row that reached further than the rest is not dropped for it.
- No dependency, no upload, no limit on size: the reader is about 10 KB of our own code on top of the decompression your browser already ships. There is no library fetched from a CDN, which is why the Content-Security-Policy on this page can forbid every outbound connection.
the one limit worth knowing
A sheet becomes ONE table. Plenty of real workbooks are not one table - a title block, a pivot, a summary sitting off to the right. Those still load completely and nothing is dropped, but the grid will have gaps where a row did not reach that far, and a not one table chip says so rather than leaving you to wonder what went wrong. Filter to the rows you want, or drop the empty columns, and the rest behaves like any other table.
Going the other way? CSV to Excel writes a real workbook, which is what stops Excel eating your leading zeros on the way back in.
every tool in the box
- data workbench - profile, clean, transform, and export CSV, JSON, and SQLite - the full suite
- JSON flattener - nested JSON or NDJSON to flat columns, arrays and objects unrolled
- CSV PII scrubber - find emails, phones, SSNs, and card numbers - mask, hash, or drop them
- JSON to CSV - convert JSON or NDJSON to CSV with full column control
- CSV to JSON - convert CSV to JSON or NDJSON, streamed at any size
- Excel to CSV - read .xlsx workbooks and export CSV, sheets and all (this page)
- CSV to Excel - write a real .xlsx where leading zeros and dates survive
- SQL on CSV - real SQL over your files: joins, GROUP BY, a read-only console
- CSV to SQLite - drop several files, get one .sqlite database with discovered foreign keys
- CSV to SQL - CREATE TABLE and INSERT statements for Postgres, MySQL, SQL Server, SQLite
- JSON to TypeScript - TypeScript interfaces and JSON Schema derived from your real data
- large CSV viewer - open files past Excel's 1,048,576-row limit without loading them into RAM
- regex painter - highlight example matches, get a verified regular expression back
- encoding fixer - detect windows-1252/UTF-16 and repair garbled text (José → José)
- log parser - read log files as events: layouts detected, stack traces kept whole, timestamps normalized, and a volume-over-time strip drawn in SQL across every row
- visualize - chart any table you have open - bar, line, area or point - drag across it to filter, and export svg, png, or the vega-lite spec that drew it
- theme builder - design, test, and export custom color themes with live previews, palette derivation, and contrast diagnostics
Like every unfckr tool, this runs 100% in your browser: no upload, no servers, no signup, no analytics. A Content-Security-Policy header blocks every programmatic network channel, so not even malicious code could phone home - and you can watch it happen: the privacy page runs six live escape attempts and shows the browser refusing each one.
↑ back to the tool