Code & data
Convert CSV and JSON while keeping identifiers intact
Handle headers, quoted cells, leading zeros and spreadsheet formulas, and understand why a CSV–JSON round trip is not always reversible.
Identify the delimiter and header row
Open a small sample of the CSV as text before converting it. Check whether columns are separated by commas, semicolons or tabs, and whether the first row contains headers. A comma inside a quoted cell is part of that cell, not a new column.
KitForma accepts these three delimiter choices and supports quoted cells containing delimiters or line breaks. Headers must be nonempty and unique, and every data row must contain the expected number of cells. When a row is rejected, compare its quoting and column count with the header rather than removing data arbitrarily.
Rejected header: code,code
Data row: 00123,42
Use meaningful unique headers, such as product_code,quantity, before converting.Understand the CSV-to-JSON value rule
KitForma’s CSV-to-JSON converter keeps all cell values as strings. That is useful for identifiers such as 00127, where the leading zeros may matter. It also means that a cell containing 42 becomes a JSON string, not a numeric value.
Choose data types separately according to the application that will consume the result. Do not convert every digit-only cell into a number: postal codes, stock identifiers and telephone-like values can require their original spelling. Test one representative row before importing an entire converted table.
CSV:
code,label,quantity
00123,"Bolts, small",42
JSON:
[
{"code":"00123","label":"Bolts, small","quantity":"42"}
]Know what JSON-to-CSV can represent
The reverse tool accepts an array of objects. It collects the union of keys in their first-seen order to form the columns. Missing and null values become empty cells; nested objects and arrays become JSON strings inside cells rather than expanding into separate columns.
Those decisions mean that converting back cannot reconstruct every original distinction. An empty cell no longer tells you whether a field was missing or null. If your destination needs a fully flattened nested structure, prepare that structure explicitly before conversion; the tool does not invent a database schema.
Match protection to the receiving application
JSON-to-CSV enables spreadsheet formula protection by default. It prefixes formula-like cells, including headers, with an apostrophe when they begin with certain spreadsheet-significant characters, allowing for leading whitespace. This deliberately changes those cell contents.
Keep that option when preparing untrusted values for a spreadsheet, but inspect the imported result in the actual application. If a downstream system needs literal original strings, decide how it will handle those values before choosing preservation instead. Neither mode guarantees that every spreadsheet application interprets a CSV identically.
- Select the delimiter expected by the receiving application.
- Choose formula protection intentionally instead of leaving the decision unexplained.
- Inspect headers, negative values and text beginning with =, +, - or @ after import.
Check the converted sample before scaling up
Input is limited to 200,000 UTF-16 code units. JSON-to-CSV rejects numeric values that cannot retain their decimal value in its supported conversion path; quote large identifiers at the source. Formatting the JSON first can help you inspect it but does not remove this conversion constraint.
Compare row counts, header names, a value containing a delimiter, a multiline cell and an identifier with leading zeros. Keep both the source and converted file until the import is accepted. Text is processed locally, but conversion still needs a deliberate check of the data’s meaning.
KITFORMA
Put it into practice
No account needed. Open an article, then try the matching tool.