Format JSON without losing large numbers or duplicate keys

Prettify JSON while preserving large integers, number spelling and duplicate keys. Diagnose syntax errors and understand Tulo’s validation warnings.

Open JSON Formatter →

Formatting should change whitespace, not your data

An API response can be valid JSON and still be difficult to read. Prettifying adds indentation and line breaks; minifying removes unnecessary whitespace. Neither operation should change the text inside a string or silently discard a property.

Tulo formats the original JSON tokens rather than parsing values into JavaScript numbers and serializing them again. The example below keeps both id properties, the large integer and the spelling 1e+3. That preservation is useful when investigating what a server actually sent, even when another application would interpret the values differently.

{"id":9007199254740993,"id":2,"amount":1e+3}

A reliable formatting workflow

Paste your document or load a local JSON file. Choose Prettify to format it in place, or Minify for compact output. Changing the indentation to 2 spaces, 4 spaces or tabs also prettifies valid input. Undo restores the previous text, so you can compare the result with the original.

Use Search JSON to find complete keys or values in Code view. Tree view makes nested objects easier to explore: select a value, copy its JSON path, or choose Show in editor to inspect the original position. Copy always copies the current document, including invalid text; it does not quietly repair it.

Fix errors before treating warnings as errors

A trailing comma, a single-quoted string or a missing value is not accepted by this strict JSON formatter. Select a validation issue to jump to its position. For example, remove the comma after true in the sample below. Comments and JSON5 syntax are not automatically converted.

Duplicate names and numbers that may lose precision in JavaScript produce warnings instead. Inspect these with the system that consumes your JSON: preserving a duplicate key does not make its interpretation consistent across parsers. If an ID must be exact across applications, agree on a string representation with the API producer rather than changing its type silently during formatting.

{"ready":true,}

Privacy and document limits

JSON processing happens in your browser; the document is not uploaded or saved by the formatter. Leaving or refreshing the page discards it. The input limit is 1 MiB of UTF-8 text and the nesting limit is 256 containers. An edit that would exceed the input limit is rejected without replacing your document.

Tree previews are bounded to protect responsiveness and can omit parts of a large document. Tree search covers previewed keys, values and paths; Code search inspects the complete document. Keep an original copy when debugging important payloads.

For the JSON syntax and interoperability rules, see RFC 8259.