Convert an Excel file to JSON for ITR filing by opening a local .xlsx workbook in your browser, selecting the worksheet that holds your tax data, and downloading the records as a JSON file — no upload, no server queue, and no retention of the workbook by the conversion page. The exported file contains one JSON object per data row, with field names taken from the first non-empty row of the sheet, so a clean header row is the single most important preparation step. Because the entire flow runs in the current browser tab, salary statements, Form 26AS extracts, capital gains ledgers, and bank interest tables stay on the device until you deliberately hand the JSON file to another tool.

Why ITR Filing Often Needs JSON Instead of Excel
Most taxpayers keep their income, deduction, and capital-gain data in Excel because spreadsheets are easy to edit and easy to share. Income tax portals, however, increasingly expect structured inputs when taxpayers use third-party filing utilities, JSON-based schemas, or developer-friendly preparation tools that pre-validate a return before submission. JSON gives every row a predictable set of keys, which lets a script map fields to specific ITR schedules without guessing column letters or parsing merged cells.
That predictability matters when a field like "TDS deducted" needs to land in a particular schedule line, or when a bank-wise interest breakdown must remain grouped under a stable key such as "bank_name". A spreadsheet still wins for human editing, but a JSON file is a cleaner handoff to anything programmatic, including offline ITR utilities, audit scripts, and reconciliation tools that compare AIS data against your workbook.
What the Excel to JSON Converter Does and Does Not Do
The Excel to JSON Converter takes one selected worksheet from a local .xlsx workbook and turns its header-based rows into a JSON file that you can inspect, download, or pass to another local workflow. The page reads the workbook inside the browser tab and creates a JSON Blob for download; the workbook is not uploaded to a conversion server, queued for processing, or retained by the tool. The conversion always produces a new download and never changes the workbook stored on your computer.
The tool deliberately reads stored cell values only. It does not execute spreadsheet formulas, macros, external links, scripts, or embedded content, so formula cells export whatever value Excel last stored rather than a fresh calculation in the browser. Formatting, column width, conditional formatting, charts, images, comments, filters, print settings, workbook protection, named ranges, and formula source text are outside this export, because JSON is a data representation, not a spreadsheet clone.
Preparing Your Excel Sheet Before Conversion
JSON objects cannot tolerate ambiguity the way a worksheet can. Two duplicate headers would overwrite each other in the resulting object, so the first non-empty row of your chosen sheet must contain a unique, non-empty name for every column you plan to export. Rename any duplicates in Excel itself — for example, change "TDS" and "TDS_2" into "TDS_1" and "TDS_2" — rather than letting the tool invent field names that would make the JSON harder to audit.
Empty cells become null in the output, which is useful for genuinely missing data but harmful when an empty cell simply means "I forgot to fill this in". Run through the sheet once, decide which rows you actually want exported, and either fill the blanks or delete the offending rows before you convert. If a column contains dates, remember that the tool exports the numeric value stored by the workbook; it does not guess locale or date intent, so a column that visually reads as "01-04-2024" may export as an Excel serial number unless you have formatted the cells as a recognisable text or ISO date string before saving.
Keep the workbook small and focused. Choose the smallest relevant worksheet for ITR data — usually salary, TDS, or capital gains — and leave summary sheets, pivot tables, and reference tables out of the export. If you need a visual inspection of the data first, open the file in a local Excel viewer, not in a cloud service.
Convert Excel to JSON for ITR Filing
- Save your workbook as a normal .xlsx file. The converter accepts the standard OOXML format only and rejects legacy .xls files, macro-enabled formats, password-protected files, and cloud URLs.
- Open the Excel to JSON Converter in your browser tab. Confirm the file you want to convert is on the same device and is no larger than 20 MB.
- Choose the local .xlsx workbook from the file picker. The page checks the classic ZIP directory, the declared expanded package size, and the entry count before letting SheetJS read the workbook, and it rejects Zip64 or multi-disk packages outright.
- Select the worksheet whose first non-empty row contains your field names. Every header must be non-empty and unique, because duplicate keys would otherwise overwrite data in a JSON object.
- Click the convert action and wait for the page to build the JSON Blob. The conversion reads stored text, number, and Boolean values; empty cells become null.
- Download the resulting .json file and open it locally before you hand it to an ITR portal, a script, or a third-party filing utility.
How Cell Values Map to JSON Records
Each non-header row becomes one JSON record whose keys come from your header row. Stored text values appear as JSON strings, stored numbers appear as JSON numbers, and stored Boolean values appear as JSON true or false. Empty cells become null, which is the honest representation of "no value stored" and is usually what you want for ITR data.
Dates are the most common surprise. Because the tool does not execute formulas and does not infer locale, a date column exports the underlying numeric serial unless the cell was stored as formatted text. Plan for this when you build the source sheet: either format dates as text strings you control, or accept that any downstream script will need to interpret the serial. Currency symbols, percentage signs, and thousand separators are display formatting only and are stripped on export, so a salary cell that displays as "₹5,00,000" will export as the number 500000.
Verifying the JSON Before You Use It
Always open the downloaded JSON file once before you use it. Run it through a local JSON formatter to pretty-print the records, count the rows against your source sheet, and confirm that the field names match what your ITR tool expects. A quick read of the first three and last three records catches most header mistakes, missing rows, and unexpected nulls before you propagate bad data into a filing workflow.
If a downstream script rejects the file, paste the same content into a JSON validator to confirm the file is syntactically valid. Most "the import failed" errors in ITR utilities trace back to a stray trailing comma, a smart-quote character that crept in from a copy-paste, or a header that became duplicated after a column was inserted in Excel.
Limits and Errors to Watch For
The converter is deliberately narrow in scope. The selected worksheet must stay within 100,000 addressed cells, and the workbook must pass the ZIP-level safety checks the page runs before reading any spreadsheet content. A damaged, encrypted, oversized, or unsupported workbook stops with an error instead of producing a partial download, which is the right behaviour for a tax-related export.
| Excel Feature | Outcome in the JSON File |
|---|---|
| Stored text in a cell | JSON string value |
| Stored number in a cell | JSON number value |
| Stored Boolean in a cell | JSON true or false |
| Empty cell | JSON null |
| Formula cell | Last stored value, not a recalculation |
| Macro, external link, embedded script | Not executed, not exported |
| Column width, formatting, charts, comments | Outside the export |
| Workbook Type | Accepted by the Converter |
|---|---|
| Standard .xlsx OOXML workbook | Yes |
| Legacy .xls file | No |
| Macro-enabled .xlsm or .xlsb | No |
| Password-protected workbook | No |
| Cloud URL or remote share link | No |
| Workbook larger than 20 MB | No |
| Zip64 or multi-disk package | No |
The tool does not merge workbooks, infer nested objects, normalise values, validate a business schema, or repair formulas. If your ITR workflow needs a nested structure such as grouped bank-wise interest, build that grouping in a script after the JSON file is downloaded — the converter's job is a transparent local export of the selected sheet's stored cell values within explicit browser safety limits. Keep the original workbook as the source of record, and treat the JSON as a derived handoff file you can regenerate any time.