JSON Size Analyzer
See where the bytes go. Compare raw, minified, gzip, and (estimated) brotli sizes. The heaviest-keys table lists the top 20 byte hogs; the duplicate-strings card finds strings that repeat 3+ times (good gzip candidates).
Top 20 heaviest paths
Duplicate strings (≥3×)
Paste JSON.
How to analyse
- Paste or drop your JSON.
- The Sizes card shows: Raw bytes, Minified bytes, Gzip bytes (level 6), Brotli bytes (level 4). Each with percent vs raw.
- The Heaviest keys table lists the top 20 paths by byte cost (with depth + sample value). Click any row to highlight that subtree in the tree view.
- The Duplicate strings card lists strings that repeat ≥ 3 times — these compress well but bloat your raw size; consider extracting them.
- Depth histogram shows how nested the document is.
FAQ
Is the brotli figure exact?
It's an estimate (~85% of gzip in practice). For exact brotli, run brotli -q 4 on the file or use a server-side tool. Gzip is computed exactly by the in-browser library.
What does a low gzip ratio tell me?
That your JSON is mostly unique strings (e.g. UUIDs, free-text). Reducing duplication won't help — reduce the data itself.
Will it work offline?
Yes — uses pako for gzip, cached after first load.