JSON Size Analyzer

Free tool

Paste or upload a JSON file. You'll see the serialized weight (UTF-8 bytes) of every key and array element, ranked heaviest first, so you can quickly spot what branch is inflating the total size. Everything is processed in your browser: nothing is uploaded to RA Software Apps servers.

Heaviest branches

Paste a JSON, or load the sample, then press Analyze.

Report

Markdown report

JSON

How to use it

  1. Paste the JSON or upload the file.
  2. Review the weight of every key and every array element, sorted from heaviest to lightest.
  3. Drill into the heaviest branches until you find the data that inflates the total.

What it works out and how

Weight is measured in UTF-8 bytes of the serialized text, which is what travels over the network before compression. The tool works out that size for every branch of the tree and sorts it, so you can quickly tell whether the problem is a field repeated in thousands of items, a base64 image or an array that should be paginated.

Frequently asked questions

Is the size shown what the user downloads?

Not exactly. Servers usually compress with gzip or brotli, and JSON compresses well. Even so, the uncompressed size is what the client has to parse and keep in memory.

Why bytes and not characters?

Because accents, emoji and other non-ASCII characters take more than one byte in UTF-8.

How do I shrink a heavy JSON?

Drop fields the client does not use, paginate long lists and move base64 binaries into separate files.