Flatten JSON
Turn nested JSON into reversible path records that preserve empty containers and unusual keys.
How it works & useful details
How it works
Turn a nested document into a reversible list of path records. Every object and array has its own kind marker, even when empty; primitive records also carry a value. This preserves numeric-looking keys, null and escaped paths. Feed the exported JSON into JSON unflatten. Up to 10,000 records and 1,000,000 output characters.
Limits & privacy
Up to 1,000,000 characters, 50,000 values and 64 levels. Live previews pause above 40,000 characters; run the tool to process the full supported input. Imported files must be UTF-8 and under 1 MB. Your data stays on this device.
Numbers use JavaScript decimal precision. Unsupported large integers are rejected; quote identifiers to keep all digits. Duplicate object names keep their last value. Transforms preserve data, not source whitespace or number spelling.
Paths use JSON Pointer: an empty path selects the root, ~0 escapes a tilde, and ~1 escapes a slash.
