Download 20 MB PNG file for testing

Preview the PNG and check its size in your upload form. The preset is 20 MiB (20,971,520 bytes); choose MB for decimal megabytes.

20,971,520 bytes · built in your browser, nothing uploaded
20,971,520 bytes
20 MiB · PNG · 288 B
Exact size

1 MB = 1,000,000 B · 1 MiB = 1,048,576 B

WidthHeight
Advanced: test an upload limit

Enter the byte limit above, then choose one byte below, the exact limit or one byte above. Each choice uses the same base: 20,971,520 B. Generate and download each file to test your endpoint.

Where a 20 MB PNG comes up

  • Testing Shopify or other e-commerce image limits with a lossless file.
  • Checking image resizing services that must decode the whole bitmap.
  • Measuring memory use in thumbnail pipelines with a large lossless image.

Limits it lands on

  • Shopify accepts images up to 20 MB and 20 megapixels; this PNG is at the file-size limit with about 7 megapixels.
  • Telegram bots can download it with getFile, whose ceiling is 20 MB.

What is inside the file

Unlike the JPGs here, this PNG is not padded with comments: the generator picks the dimensions (2560 × 2730, 8-bit truecolour) so the stored pixel rows fill 20,969,130 bytes, and a short text chunk makes up the remainder.

Pixel data is written in uncompressed deflate blocks, so decoders do real work — about 21 MB of RGB values.

Questions

Why is this PNG so large?

The pixels are stored without compression, so the file size reflects the true bitmap size of a 2560 × 2730 image.

Will re-saving shrink it?

Yes. Any PNG optimiser will compress the pixel data and the file will become much smaller.

Reference and checks

Format reference: W3C PNG specification.

Preset target: 20 MiB (20,971,520 bytes). Verify the downloaded file's byte count.

Generate another size in this format · Technical notes for every format · Guide to testing file upload limits · Data processing and privacy

Related tools: Image Convert · Resize Image · Compress Image.

Noticed an issue with this test file? Report an issue →