20 MB JSON sample

A JSON file of exactly 20,971,520 bytes. It is a valid JavaScript Object Notation file, generated by this site. Compare its checksum and test it with the parser used by your application. Use it wherever you need a 20 MB sample, test or dummy JSON file.

Download

sample-json-20mb.json

20 MB20,971,520 bytes

Download 20 MB JSON

Created in your browser in a few seconds, then checked against the SHA-256 checksum. No sign-up.

Type
application/json
SHA-256
4ac059b14292e45f935cb3e17972c96e7283b0a8766d6f5ccd132400a7ce7aeb
Delivery
Created in your browser from static generator assets (how it works).

What is in this file

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

Records60,119
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-20mb.json, exactly as they appear in the file.

00000000  7b 0a 20 20 22 67 65 6e  65 72 61 74 6f 72 22 3a |{.  "generator":|
00000010  20 22 53 61 6d 70 6c 65  54 65 73 74 46 69 6c 65 | "SampleTestFile|
00000020  73 22 2c 0a 20 20 22 64  65 73 63 72 69 70 74 69 |s",.  "descripti|
00000030  6f 6e 22 3a 20 22 53 61  6d 70 6c 65 20 4a 53 4f |on": "Sample JSO|

Preview

Creates the file in your browser and shows its first 64 KB.

Where 20 MB matters

A 20,971,520-byte file: right at the default attachment limit of Outlook, and just under the 25 MB ceilings of Gmail and GitHub web uploads. These are the default limits a file of this size is useful for testing:

SystemLimitNote
Microsoft Outlook20 MB of attachments by default for internet mail accountsThis file is right at the limit; add a second attachment and it is exceeded.
Gmail25 MB per messageUnder the limit, although email encoding adds about a third in transit.
GitHub web uploads25 MiB per file added through the browserAccepted. Pushing with Git allows larger files.
Cloudflare Pages assets25 MiB per fileThe largest round size that can be served as a static asset.
Amazon API Gateway10 MB payloadRejected; the upload has to go directly to object storage.
ASP.NET Core (Kestrel)About 28.6 MB request body by defaultAccepted with room for the multipart overhead.

All 20 MB sample files

Use this file for

  • Measuring download speed from your own server or CDN
  • Seeding front-end components with data
  • Mocking API responses

Testing notes for JSON

  • The JSON standard does not say what happens with duplicate keys, so different parsers keep different values.
  • Most parsers read numbers as 64-bit floats, so integers above 2^53 silently lose precision. Send large identifiers as strings.

JSON format reference

Technical details

File namesample-json-20mb.json
FormatJSON (JavaScript Object Notation)
Extension.json
MIME typeapplication/json
Size20,971,520 bytes (20 MB)
KindText
SHA-2564ac059b14292e45f935cb3e17972c96e7283b0a8766d6f5ccd132400a7ce7aeb
Created2026-10-23
ValidationSee the listed size and SHA-256. Small downloads are checked in the browser; verify streamed downloads manually. A hash match does not prove parser compatibility.
PreviewAvailable on this page
SourceGenerated in your browser by this site's generator; not copied from elsewhere
LicenceFree to use, modify and redistribute (terms)
CategoryData

Check the stated structure and checksum against your application requirements. As with any download, scan the file with your own security tools before opening it. How files are made and checked

Verify your copy

This file is created in your browser, so it has no direct URL for curl or wget. The generator is designed to produce reproducible bytes. After saving, compare the checksum with the SHA-256 value above.

sha256sum sample-json-20mb.json     # Linux
shasum -a 256 sample-json-20mb.json # macOS

On Windows, run Get-FileHash sample-json-20mb.json -Algorithm SHA256 in PowerShell. For scripts and pipelines, save the file once and keep your own copy.

Related files

Questions about this file

Is this file exactly 20 MB?
Yes. It is 20,971,520 bytes, which is 20 MB in the binary units that operating systems and server limits use (1 KB = 1,024 bytes).
What is inside the 20 MB JSON file?
An object with a "records" array of 60,119 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.