Two Ways In: Copy-Paste or CSV Export
Excel and Google Sheets both put tab-separated text on the clipboard, so selecting a range and pasting it here works directly — set the delimiter to tab. For a whole workbook sheet, use File → Save As → CSV (Excel) or File → Download → Comma-separated values (Sheets) and paste the file contents instead.
The Header Row Becomes Your Keys
The first row is read as property names, so it is worth tidying before you convert: no merged cells, no blank column headers, and names that are valid identifiers if the JSON will be consumed by typed code. Order Date becomes the key "Order Date", which is legal JSON but awkward to reference — rename it to order_date in the sheet first.
Type Detection
42→ number, not"42".TRUE/FALSE→ boolean.- An empty cell →
null. - Anything else, including dates as the sheet displays them → string.
Dates and Leading Zeros
Two spreadsheet habits cause most surprises. Dates are converted as the text you see, so set the column format to ISO YYYY-MM-DD before exporting if you need sortable strings. And identifiers such as postcodes or product codes lose their leading zeros when the sheet treats them as numbers — format those columns as text in the spreadsheet, before the export, since the information is already gone by the time it reaches this page.
Who this guide is for
- Turn a spreadsheet of test data into a JSON fixture file
- Convert a stakeholder-maintained sheet into seed data for an API
- Move a Google Sheets export into a JSON config
- Prepare tabular content for a JSON-driven frontend