Developer tools

JSON & CSV Toolkit

Format JSON, convert CSV, and inspect structural changes.

FreeNo accountFiles stay on your device

Source

0 B / 2 MB

Result

No result yet.

JSON formatting and validation

Formatting changes whitespace; minifying removes it. Validation checks JSON syntax without running code. Comments, trailing commas and JavaScript expressions are rejected. Numbers use JavaScript precision: quote large identifiers and high-precision decimal values to preserve them exactly. Inputs are limited to 2 MB each and 128 nesting levels.

Converting rows between JSON and CSV

JSON to CSV accepts a nonempty array of objects and combines their top-level keys into columns. Exports are limited to 100,000 cells, counting all rows times all columns, including the header row. Nested objects and arrays become JSON text inside a cell; null and missing values become empty cells. CSV to JSON uses the first row as headers, trims header whitespace, rejects blank or duplicate headers, and preserves all cell values as strings, including leading zeros. Physical empty lines are skipped; explicitly quoted empty cells and whitespace-only values are preserved. Every data row must match the header width. Select the delimiter used by your file.

Spreadsheet formulas

CSV exports prefix an apostrophe to formula-like headers and cells, including values beginning with equals, plus, minus, at signs, tabs or line breaks. Headers that collide after this escaping are rejected; rename the conflicting JSON keys before exporting. This also affects negative numbers and changes the exported text. Keep the original JSON when exact round trips matter. Spreadsheet software can interpret imported files differently.

Reading structural differences

Objects are compared by key, regardless of key order. Arrays are compared by index, so an inserted item can change several paths. Each difference is added, removed or changed and includes the value types before and after. Paths use JSON Pointer escaping: ~1 means slash and ~0 means tilde. The empty path represents the document root. Added or removed containers appear as one difference at their path. The table previews the first 200 differences; copy and download include the full report.