2 MB JSON sample file
A JSON file of exactly 2,097,152 bytes. It is a valid JavaScript Object Notation file, generated for this site and checked with an independent parser. Use it wherever you need a 2 MB sample, test or dummy JSON file.
Download
sample-json-2mb.json
2 MB2,097,152 bytes
Download 2 MB JSONDirect download. No sign-up and no waiting.
- Type
- application/json
- SHA-256
9c0fb9db07a22b2ae37a5da27a2f00a28840a8937d72a7ca0a3b71243f2b960e- Direct URL
https://sampletestfiles.com/downloads/json/sample-json-2mb.json
What is in this file
An object with a "records" array of 6,052 fictional customer objects, each with nested objects, an array and a nullable field. A final "padding" string brings the file to the exact size.
| Records | 6,052 |
|---|---|
| Root type | Object |
| Value types used | string, number, boolean, null, array, object |
| Encoding | UTF-8 (ASCII characters only) |
| Indentation | 2 spaces, one record per line |
How the file begins
The opening lines of sample-json-2mb.json, exactly as they appear in the file.
{
"generator": "SampleTestFiles",
"description": "Sample JSON file (2 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 2 MB matters
A 2,097,152-byte file: exactly the default upload limit of PHP, and twice the default of nginx and Spring Boot. These are the default limits a file of this size is useful for testing:
| System | Limit | Note |
|---|---|---|
| PHP | 2 MB per uploaded file by default (upload_max_filesize) | A file of exactly 2 MB is accepted; one byte more is refused. |
| nginx | 1 MB by default (client_max_body_size) | Rejected with 413 Request Entity Too Large. |
| Spring Boot multipart | 1 MB per file by default (max-file-size) | Rejected unless the property is raised. |
| Django | 2.5 MB in memory by default | 2 MB is held in memory; the 5 MB sample is streamed to a temporary file. |
| Vercel Functions | 4.5 MB request body | Accepted, including as base64 at about 2.8 MB. |
Use this file for
- Finding out whether a 1 MB default has been raised
- 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.
Technical details
| File name | sample-json-2mb.json |
|---|---|
| Format | JSON (JavaScript Object Notation) |
| Extension | .json |
| MIME type | application/json |
| Size | 2,097,152 bytes (2 MB) |
| Kind | Text |
| SHA-256 | 9c0fb9db07a22b2ae37a5da27a2f00a28840a8937d72a7ca0a3b71243f2b960e |
| Created | 2026-10-10 |
| Validation | Exact size, signature bytes and structure checked when the file was generated |
| Preview | Available on this page |
| Source | Generated for this site; not copied from elsewhere |
| Licence | Free to use, modify and redistribute (terms) |
| Category | Data |
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-2mb.json 'https://sampletestfiles.com/downloads/json/sample-json-2mb.json'
sha256sum sample-json-2mb.json # Linux
shasum -a 256 sample-json-2mb.json # macOSOn Windows, run Get-FileHash sample-json-2mb.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 2 MB?
- Yes. It is 2,097,152 bytes, which is 2 MB in the binary units that operating systems and server limits use (1 KB = 1,024 bytes).
- What is inside the 2 MB JSON file?
- An object with a "records" array of 6,052 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.