Sample JSON file — free download

JSON test files for parsers, importers and API mocks — valid baselines plus the ones that break things: trailing commas, numbers past 2^53, and structures nested deep enough to blow a recursive parser’s stack.

Need a specific size?

Streamed on demand — nothing stored, no signup, any size up to 2 GB.

1,000 records100,000 recordsNDJSON, 10,000 lines100 MB array

6 ready-made JSON test files

FileSizeWhat it catches
malformed-trailing-comma.json24 bytesError handling on config load. The failure message should name the file and the line, not surface a bare "Unexpected token }".download
precision-loss.json319 bytesThe classic JavaScript bug where a 64-bit database ID arrives as 9007199254740992 instead of ...993. Any client parsing this into a double corrupts the values silently. Correct handling means parsing large integers as strings or BigInt.download
valid-small.json382 bytesBaseline. Covers every scalar type plus escaping in one small file.download
deeply-nested-100000.json195 KBRecursive-descent parsers that blow the stack. Note that the two most common runtimes do NOT fail here: V8 JSON.parse and CPython's C scanner are both iterative and accept 1M levels. What this does catch is recursive implementations - Go encoding/json before its depth cap, many Ruby and PHP libraries, pure-Python fallback scanners, and hand-rolled parsers. The property worth asserting is that your service returns a 400 with a depth-limit message rather than either a 500 or a successful parse of an absurd document.download
ndjson-10000-lines.ndjson654 KBLog-ingest and bulk-import paths. Line 5000 contains an embedded \n inside a string value - splitting on raw newlines rather than parsing will corrupt exactly that record.download
large-array-100mb.json100 MBAnything that calls JSON.parse on the whole body. Forces the switch to a streaming parser and exposes request-body size limits in API gateways.download

Every file is generated from source — no third-party copyright — and each has its own page with a published SHA-256 you can verify after download.

Questions

Where can I download a sample JSON file?

The valid sample below covers every scalar type, nested objects, arrays, nulls, Unicode and escaped characters in one small file.

What is the JSON precision-loss problem?

JavaScript numbers are IEEE-754 doubles, so integers above 9,007,199,254,740,991 silently lose precision. The precision-loss file contains values on both sides of that boundary.

What is NDJSON?

Newline-delimited JSON — one complete JSON object per line, so a file can be streamed and processed line by line instead of parsed whole. Common in logs and data pipelines.

Other formats

Sample CSV fileSample PDF fileSample ZIP fileSample PNG fileSample image filesSample XLS and XLSX (Excel) filesSample DOCX (Word) fileSample TXT and encoding test files