10 MB JSON sample file

A JSON file of exactly 10,485,760 bytes. It is a valid JavaScript Object Notation file, generated for this site and checked with an independent parser.

Download

sample-json-10mb.json

10 MB10,485,760 bytes

Download 10 MB JSON

Direct download. No sign-up and no waiting.

Type
application/json
SHA-256
8fdf502af7cb214ca8e1798c34c8f56d077ce3cc444c7a10c746e47479bf98d7
Direct URL
https://sampletestfiles.com/downloads/json/sample-json-10mb.json

What is in this file

An object with a "records" array of 30,143 fictional customer objects, each with nested objects, an array and a nullable field. A final "padding" string brings the file to the exact size.

Records30,143
Root typeObject
Value types usedstring, number, boolean, null, array, object
EncodingUTF-8 (ASCII characters only)
Indentation2 spaces, one record per line

How the file begins

The opening lines of sample-json-10mb.json, exactly as they appear in the file.

{
  "generator": "SampleTestFiles",
  "description": "Sample JSON file (10 MB) for testing",
  "records": [
    {"id":1,"uuid":"a6cf3b6b-cd57-4173-a942-a2339c75f449","name":{"first":"Ethan","last":"Zeller"},"email":"ethan.zeller1@example.com","active":true,"…
    {"id":2,"uuid":"e86fd25c-cc5a-44ae-a8ee-4439d8d6c68e","name":{"first":"Elena","last":"Underhill"},"email":"elena.underhill2@example.net","active":…

Preview

Shows the first 64 KB of the file.

Where 10 MB matters

A 10,485,760-byte file: over the default limits of PHP, API Gateway and Spring Boot requests. These are the default limits a file of this size is useful for testing:

SystemLimitNote
Amazon API Gateway10 MB payloadA 10 MB file in a multipart or base64 body is over the limit.
Spring Boot multipart10 MB per request by default (max-request-size)Exceeded once form overhead is added.
PHP8 MB POST body by default (post_max_size)Rejected before the script runs.
Amazon S3 multipart upload5 MiB minimum part sizeThis file splits into exactly two minimum-sized parts.
Email attachmentsCommonly 20 to 25 MB per message10 MB fits, at about 13.3 MB once encoded.

All 10 MB sample files

Use this file for

  • Exercising chunked and resumable uploads
  • Testing parsers, schema validators and serialisers
  • Load-testing endpoints with large payloads

Testing notes for JSON

  • Most parsers read numbers as 64-bit floats, so integers above 2^53 silently lose precision. Send large identifiers as strings.
  • Parsing a large document with a DOM-style parser needs several times its size in memory. Use a streaming parser or JSON Lines for big data.

JSON format reference

Technical details

File namesample-json-10mb.json
FormatJSON (JavaScript Object Notation)
Extension.json
MIME typeapplication/json
Size10,485,760 bytes (10 MB)
KindText
SHA-2568fdf502af7cb214ca8e1798c34c8f56d077ce3cc444c7a10c746e47479bf98d7
Created2026-10-10
ValidationExact size, signature bytes and structure checked when the file was generated
PreviewAvailable on this page
SourceGenerated for this site; not copied from elsewhere
LicenceFree to use, modify and redistribute (terms)
CategoryData

Validated for expected format and integrity. As with any download, scan the file with your own security tools before opening it. How files are made and checked

Download from the command line and verify

Fetch the file with curl, then compare its checksum with the SHA-256 value above.

curl -o sample-json-10mb.json 'https://sampletestfiles.com/downloads/json/sample-json-10mb.json'
sha256sum sample-json-10mb.json     # Linux
shasum -a 256 sample-json-10mb.json # macOS

On Windows, run Get-FileHash sample-json-10mb.json -Algorithm SHA256 in PowerShell. A matching value proves that the download is complete and unaltered.

Related files

Questions about this file

Is this file exactly 10 MB?
Yes. It is 10,485,760 bytes, which is 10 MB in the binary units that operating systems and server limits use (1 KB = 1,024 bytes).
What is inside the 10 MB JSON file?
An object with a "records" array of 30,143 fictional customer objects, each with nested objects, an array and a nullable field. A final "padding" string brings the file to the exact size.
Why is there a "padding" field?
JSON has no comments, so a final string member is used to bring each sized file to its exact byte count.