What XLS is
An Excel workbook is a zip archive of XML parts describing sheets, cells, formulas, styles and charts. The .xlsx extension is that format; .xls is the older binary one from before 2007.
Finance, operations and anyone who received a file from finance or operations.
What JSON is
JSON is a text format for nested data: objects with named keys, arrays, strings, numbers, booleans and null. It has no date type and no comments.
Every web API, most configuration files and anything that talks to JavaScript.
What changes when you convert XLS to JSON
Only the first sheet is read, and cells are read as the text Excel displays rather than the number underneath. That matters for dates: a cell showing 15/03/2026 arrives as that string, not as a serial number you would then have to decode.
You choose the shape. An array of objects is the default and the one most code expects. A 2D array is smaller. Column arrays suit charting libraries. A keyed object suits lookups by id.
What carries over from XLS to JSON
Excel records 2 things about a table that JSON has no way to hold.
JSON has no header row. The column names are repeated as keys on every record instead, which is why the result is bigger on disk than the table it came from.
Anything visual in the Excel - weight, alignment, colour, column widths - has no counterpart in JSON and is dropped. The values are what survives.
Both formats record types, so numbers, booleans and nulls survive as themselves rather than as text.