Use case · 19 files
Test JSON parsers
JSON parsers disagree on big numbers, on what counts as valid, and on how much memory a document may use. These files cover the values, structures and sizes that expose those differences, from a 592-byte object with every type to a 100 MB array.
Download all with curl
# 19 files, 292 MB in total
while read -r url; do curl -LO --fail "$url"; done <<'EOF'
https://files.samplefiles.com/data/json/sample-types.json
https://files.samplefiles.com/data/json/sample-orders-nested.json
https://files.samplefiles.com/data/json/sample-minified.json
https://files.samplefiles.com/edge-cases/corrupt/invalid.json
https://files.samplefiles.com/edge-cases/empty/zero-byte.json
https://files.samplefiles.com/edge-cases/empty/empty-array.json
https://files.samplefiles.com/edge-cases/empty/empty-object.json
https://files.samplefiles.com/data/json5/sample-config.json5
https://files.samplefiles.com/edge-cases/mislabeled/json-named.csv
https://files.samplefiles.com/data/ndjson/sample-1k-records.ndjson
https://files.samplefiles.com/data/ndjson/sample-100k-records.ndjson
https://files.samplefiles.com/data/jsonl/sample-1k-records.jsonl
https://files.samplefiles.com/data/jsonl/sample-chat-finetune.jsonl
https://files.samplefiles.com/data/log/app-json.log
https://files.samplefiles.com/data/json/sample-1mb.json
https://files.samplefiles.com/data/json/sample-10mb.json
https://files.samplefiles.com/data/json/sample-50mb.json
https://files.samplefiles.com/data/json/sample-100mb.json
https://files.samplefiles.com/data/ndjson/sample-100mb.ndjson
EOFRead first: CSV vs JSON vs Parquet: choosing a data format · How to test JSON parsers: numbers, Unicode and huge files
Types and tricky values
Unicode, escapes, exponents, a 2⁵³+1 integer that JavaScript cannot represent, null and empty containers, plus nested objects and arrays.
| File | Size | Details | Download |
|---|---|---|---|
| JSON with every data typesample-types.json | 592 B | Download | |
| JSON with nested objects and arrayssample-orders-nested.json | 86 KB | 100 rows | Download |
| Minified JSON, 1,000 recordssample-minified.json | 284 KB | 1,000 rows | Download |
Invalid, empty and almost-JSON
Strict parsers must reject the invalid file and the zero-byte file, and accept the empty array and object. The JSON5 file is valid only to a JSON5 parser.
| File | Size | Details | Download |
|---|---|---|---|
| Invalid JSONinvalid.json | 94 B | Download | |
| Zero-byte .json filezero-byte.json | 0 B | Download | |
| JSON empty arrayempty-array.json | 3 B | Download | |
| JSON empty objectempty-object.json | 3 B | Download | |
| JSON5 config filesample-config.json5 | 466 B | Download | |
| JSON file named .csvjson-named.csv | 35.8 KB | Download |
NDJSON and JSON Lines
One record per line, for streaming parsers, log pipelines and fine-tuning datasets.
| File | Size | Details | Download |
|---|---|---|---|
| NDJSON, 1,000 recordssample-1k-records.ndjson | 307 KB | 1,000 rows | Download |
| NDJSON, 100,000 recordssample-100k-records.ndjson | 30.4 MB | 100,000 rows | Download |
| JSON Lines, 1,000 recordssample-1k-records.jsonl | 307 KB | 1,000 rows | Download |
| JSONL chat fine-tuning dataset (200 examples)sample-chat-finetune.jsonl | 42.1 KB | 200 rows | Download |
| JSON (structured) log, 1,000 linesapp-json.log | 152 KB | 1,000 lines | Download |
Large files
Valid JSON arrays sized just under 1, 10, 50 and 100 MB, for memory and streaming-parser tests.
| File | Size | Details | Download |
|---|---|---|---|
| 1 MB JSON filesample-1mb.json | 1023 KB | 3,282 rows | Download |
| 10 MB JSON filesample-10mb.json | 9.9 MB | 32,606 rows | Download |
| 50 MB JSON filesample-50mb.json | 49.9 MB | 162,472 rows | Download |
| 100 MB JSON filesample-100mb.json | 99.9 MB | 324,184 rows | Download |
| 100 MB NDJSON filesample-100mb.ndjson | 99.9 MB | 327,263 rows | Download |