# 1 GB and above: JSON viewer browser benchmark

Tested on 8 October 2026 with Chrome Web Store-delivered packages with unmodified runtime files in fresh Chrome for Testing 150.0.7871.49 profiles.

| Viewer | 300 MB | 500 MB | 1 GB | 2 GB |
|---|---|---|---|---|
| JSON Formatter 0.10.2 | Raw text; size limit (1/1) | Renderer crash (2/2) | Renderer crash (2/2) | Not run |
| JSONVue 0.2.3 | Raw text; 64 MiB message error (2/2) | Renderer crash (2/2) | Renderer crash (2/2) | Not run |
| JSON Viewer Pro 1.0.7 | Blank view; invalid string length (3/3) | Renderer crash (2/2) | Renderer crash (2/2) | Not run |
| JSON All-in-One 1.0.9 | Completed + interactive (3/3); useful 34.30 (33.68–38.85) s | Completed + interactive (3/3); useful 17.36 (16.74–17.36) s | Completed + interactive (3/3); useful 25.55 (25.25–25.58) s | Completed + interactive (2/4); useful 45.78 (45.62–45.94) s; Full ingestion; interaction acknowledgment timed out (cause unconfirmed) (2/4) |

Successful times are medians (min–max) from confirmed successful cold runs (sample counts are explicit; 1 GB n=3, 2 GB n=2), measured from HTTP navigation until full ingestion and a working nested-object expand/collapse interaction. Decimal GB: 1 GB = 1,000,000,000 bytes. The test used deterministic valid root-array JSON with 1,023-byte records; hashes and compact results are in public-summary.json.

On this workload, JSON All-in-One completed 1 GB with confirmed interaction in 3/3 qualified attempts. At 2 GB, exact full ingestion completed in 4/4 attempts; post-load interaction was confirmed in 2/4. The other two hit the five-second input-acknowledgment timeout, with the cause unconfirmed. All four attempts remain in the results; full-ingestion medians use n=4 and successful-interaction medians use n=2. The three tested competitors crashed in both 1 GB repetitions. This is evidence for these exact versions, fixture and machine; it is not a guarantee for arbitrary JSON, every operation, or every file above 1 GB. The observed crashes were not diagnosed as OOM. The competitors were not tested at 2 GB.

At 300 MB, JSON Formatter left raw text after its size check; JSONVue encountered Chrome's 64 MiB extension-message limit; JSON Viewer Pro raised Invalid string length while rendering and left a blank view. JSON All-in-One's 300 MB runs took longer than its 1 GB runs; this report preserves that result and makes no universal speed-ranking claim.

All viewers used the same local HTTP application/json route and fixture bytes. Packages were loaded unpacked without changes to their runtime files; this is not a Store-installed-profile test. Hardware: AMD Ryzen 9 5980HX with Radeon Graphics, 47.41 GiB RAM, Microsoft Windows 10 Pro. Browser and GPU sandboxes were enabled. Project builds and other project QA were paused, but unrelated desktop activity was not eliminated. The OS file cache was not purged.

First visible structured content is a separate metric in public-summary.json: JSON All-in-One can show collapsed records before full ingestion. End-to-end useful time includes required expansion and checks that BENCHMARK_ALPHA disappears on collapse and returns on expansion. It is not a whole-file search, export or jq benchmark. Polling is quantized at 200 ms; sub-200 ms differences are not meaningful. One stalled animation-frame harness attempt is excluded and documented in the full methodology.

A separate precision fixture showed the exact integer 9007199254740993, long decimal token and -0 displayed by JSON All-in-One. JSON Formatter and JSONVue rounded the integer/decimal and displayed 0; JSON Viewer Pro displayed the integer with quotation marks and rounded the decimal/negative zero. This describes the display only, not arithmetic or export behavior.

Publication boundary: publish this report, public-summary.json and selected screenshots only. Do not publish the internal CRX packages, extracted competitor code, QA profiles, giant fixtures, local account paths or browser logs.

Provenance check after all browser runs: runtime files and manifests matched their original extracted SHA-256 records. The Store-only _metadata/verified_contents.json was absent from each loaded directory afterward; original CRX/ZIP archives preserve it. The deletion cause was not independently traced. Thus unchanged runtime payload is the supported identity claim, not unchanged extracted directory or Store-signature verification.
