Last updated 8 October 2026
These are our measurements of GigaJSON on synthetic order data. Download the results and generate the same files to try on your computer.
Time until the tree appears
Three archived production-build runs on 3 October 2026. Chrome 154.0.8037.92 on an Intel Core i5-9300H, with 23 GB RAM reported by the test machine. The archived report does not record the operating system or exact source revision. These are historical measurements, not a fresh benchmark of today's release.
| Target size | Actual bytes | Orders | Three runs | Median | Page long tasks, each run |
|---|---|---|---|---|---|
| 200 MiB | 209,715,773 | 368,663 | 2.092 / 2.549 / 1.976 s | 2.092 s | 69 / 108 / 75 ms |
| 500 MiB | 524,288,450 | 921,457 | 9.656 / 9.286 / 9.209 s | 9.286 s | 0 / 0 / 0 ms |
| 1000 MiB | 1,048,576,433 | 1,841,653 | 18.370 / 18.287 / 17.907 s | 18.287 s | 0 / 0 / 0 ms |
MiB means 1,048,576 bytes. The largest fixture is about 1.05 decimal GB. Each file ends after a complete order, so it is slightly larger than the target. These timings do not mean every file of that size takes the same time.
What we measured
The test starts the open action, then waits until the tree is rendered and a browser frame has passed. Files above 200 MiB use a file input; the 200 MiB fixture is pasted. File generation is outside the timed step. The same test then visits other views and performs edits; those results are in the downloads.
Long-task totals cover the page's main thread during each step. Zero recorded long-task time does not mean zero CPU work. The JSON parser and document store run in a worker. The reports' heapMB is the page heap after garbage collection, not total memory: worker memory is not measured. Expect large files to use substantially more memory than that number.
Shape, nesting, string lengths, hardware, free memory and browser storage all affect the result. A flat array of small records is different from one giant string or a deeply nested object. A timed-out operation is a failure for that test, not proof of a product-wide file limit.
Generate the same input
Download generate.mjs and make-fixture.mjs into an empty directory. With Node.js 22 or later, run:
node make-fixture.mjs 200
node make-fixture.mjs 500
node make-fixture.mjs 1000
The generator uses seed 42. Orders contain IDs, customer details, items and totals, all synthetic. The scripts refuse to overwrite an existing fixture. Allow enough disk space and memory; the 200 MiB generation step builds the document in memory, while larger files are written in pieces.
Open the file in the large JSON viewer or workspace. In the workspace, raise Preferences → Largest document for files above the default 512 MB. Repeat with a fresh document three times and record the browser version, hardware, actual bytes, time to the first usable tree and any error. These steps reproduce the input and workflow; the archived automation's exact build is not preserved in the reports. For a quick check without Node, use the live demo; its generator is a different fixture.
Raw reports
- 3 October 2026, 08:57:02 report (JSON)
- 3 October 2026, 09:15:18 report (JSON)
- 3 October 2026, 09:33:24 report (JSON)
Report filenames record completion times; the env.date field records the start. The internal working name "Nodely" may appear in fixtures. It refers to GigaJSON.
Choosing another tool
This table compares tasks and published descriptions, not performance on the same machine. Checked 8 October 2026.
| Tool | Where to consider it | Evidence and scope |
|---|---|---|
| JSON Crack | Interactive diagrams and image export | Its free viewer FAQ describes roughly 300 KB, depending on complexity and hardware. This is a vendor description, not our test. |
| Dadroit | A dedicated desktop viewer for large files | The desktop app and V Web are different products. This page does not claim a current file cap or timing for either. |
| JSONBolt | A desktop workflow for large JSON files | It publishes its own hardware-specific benchmarks. Those are not directly comparable with our browser runs. |
| Big JSON Viewer | A browser tree viewer focused on large files | Our older observations are not a current product limit. Test your file in both viewers before choosing. |
| GigaJSON | Move between tree, table, graph, queries and local history | The archived runs above measure the workspace. Individual operations have separate limits. |
Limits to check first
JSON/XML browsing can reach 1 GB when memory permits. jq has a 20 MB input limit. CSV/YAML input and JSON repair are limited to 128 MB. The Code editor and diff have their own limits. Large-file browsing does not imply every operation accepts the same input size.
See the large-file guide and our JSON Crack comparison. Found a result you cannot reproduce? Send the browser version, file shape and timing to contact@gigajson.com; avoid sending confidential documents.