Canonical JSON Generator
Generate compact deterministic JSON using UTF-16 key ordering and ECMAScript number serialization, with duplicate-key checks.
Your input is sent to this site only after you choose Convert on server. The conversion runs for this request and no history is saved. Upload up to 4 MiB combined; Office files have a 2 MiB limit.
Enter your text
Edit the example text or paste your own content.
How to use Canonical JSON Generator
- Load the example or paste your own input.
- Review the settings, then select Convert on server to send input for processing.
- Review the result, then copy or download it.
What this tool helps you do
Prepare a stable JSON representation when formatting and object-key order must not vary between equivalent parsed documents. Object keys are sorted by UTF-16 code units, arrays retain their order, and insignificant whitespace is removed. Strings and finite numbers use ECMAScript serialization, following the central JSON Canonicalization Scheme rules.
Format rules and limitations
Duplicate keys and unpaired Unicode surrogates are rejected. Numbers are interpreted as IEEE-754 values by the JSON parser, so original decimal spelling and arbitrary-precision distinctions are not preserved. Use strings for exact large identifiers. Canonicalization does not normalize Unicode or prove that two business records mean the same thing. Input depth and node count are bounded. The output is canonical text only; hashing, signing and protocol-specific validation remain separate operations.
Example input
{"z":3,"a":{"y":2,"x":1},"values":[true,null,"text"]}What should I check before relying on the output?
Duplicate keys and unpaired Unicode surrogates are rejected.
Is input uploaded?
This tool sends input to this site’s conversion API after you select Convert on server. Files use bounded workers and, when needed, private temporary folders deleted after processing or cancellation. No conversion history is saved. The converter does not upload files to a third-party conversion service.