Excel (XLSX) to CSV & JSON Converter

Upload a spreadsheet, pick a sheet, preview it, and export clean CSV or JSON.

Ad placeholder (leaderboard)
Enjoying the tools? Go Pro for £4.99 (one-time) and remove all ads — forever, on this device. Remove ads — £4.99

A fast, private Excel to CSV and JSON converter that turns any spreadsheet into clean, import-ready data without installing software or trusting an upload server. Drop an .xlsx, .xls, .xlsb, .xlsm or .ods file onto the page, pick the sheet you want, glance at a live preview to make sure the columns line up, then download well-formed CSV or structured JSON. It is built for analysts, developers and ops people who constantly receive spreadsheets from finance, suppliers or exports and need them in a machine-friendly shape — to load into a database, feed an API, diff in Git, or hand to a script. Because the entire conversion happens inside your browser, the workbook never touches a network, so it is genuinely safe for confidential financial models, HR records, customer lists and anything else you would not want sitting on someone else’s server.

How it works

When you select a file, the tool reads its raw bytes and parses the workbook with a client-side spreadsheet engine. Each worksheet is flattened into a rectangular grid: rows are padded to the widest column so the preview and exports stay aligned, dates are normalised to ISO timestamps, and you decide whether the first row should be treated as a header. With header mode on, that first row becomes your CSV header and the keys of every JSON object; duplicate or blank header names are made unique automatically (for example name, name_1). CSV export applies proper RFC 4180 quoting so values containing commas, quotes or line breaks survive a round trip back into Excel or a database. JSON export produces an array of objects — optionally type-coercing numbers and booleans while protecting leading-zero strings like phone numbers and account codes. Multi-sheet workbooks expose every tab, and a single click exports them all into one keyed JSON document.

Example

Suppose finance sends you Q3-actuals.xlsx with a Revenue sheet whose first row reads region, units, net. Load it, keep “First row is the header” ticked, and the JSON export gives you:

[
  { "region": "EMEA", "units": 1200, "net": 84500.5 },
  { "region": "APAC", "units": 980, "net": 61200 }
]

Switch the delimiter to semicolon and the CSV export becomes region;units;net — ideal for a European locale. Need everything at once? “All sheets to JSON” returns { "Revenue": [...], "Costs": [...] } so you can hand the whole workbook to a script in a single file. Every row is included in the download even though the on-screen preview is capped for speed, and nothing is ever uploaded.

Ad placeholder (rectangle)