Skip to content

🖼️ PNG images

Lossless with transparency — suited to screenshots, logos and diagrams

✅ Free forever 🚫 No signup ⚡ Instant download
100 KB PNG

102,400 bytes

image/png

100 MB PNG

104,857,600 bytes

image/png

10 KB PNG

10,240 bytes

image/png

10 MB PNG

10,485,760 bytes

image/png

1 MB PNG

1,048,576 bytes

image/png

25 MB PNG

26,214,400 bytes

image/png

500 KB PNG

512,000 bytes

image/png

50 MB PNG

52,428,800 bytes

image/png

5 MB PNG

5,242,880 bytes

image/png

About PNG images

PNG (Portable Network Graphics) is a lossless image format. Compression never degrades the image, which makes it the right choice for screenshots, logos, diagrams, and anything that needs transparency. Its MIME type is image/png and it starts with the bytes 89 50 4E 47.

Sizes from 10 KB to 100 MB are available. Use them to test upload size limits, to exercise image libraries such as ImageMagick, GD, or Pillow, and to verify upload paths into object storage.

Characteristics of PNG

Related reference and articles

📖 Where people get stuck

PNG, JPEG, GIF and WebP at sizes from 1 KB to 100 MB, for upload limits, thumbnail pipelines and exercising image libraries. What separates the formats is described above; what trips up an implementation is usually common to all of them.

Case What happens What to do
A small image exhausts memory Memory follows decoded pixel count, not file size. A 20 KB PNG at 10,000 by 10,000 pixels asks for roughly 400 MB in RGBA. Cap dimensions separately from bytes. You can read width and height from the header before decoding — getimagesize() in PHP, or in Pillow right after Image.open() and before load().
Portrait photos display sideways A camera does not rotate the pixels; it records which way up it was in the EXIF orientation tag. Anything that ignores the tag shows the sensor orientation. Read the orientation before generating a thumbnail, apply the rotation for real, then clear the tag. Rotating while leaving the tag makes compliant browsers rotate a second time. Inspect a file with the EXIF viewer.
A conversion drops the animation and the transparency A conversion routed through a browser canvas only ever holds one frame, so an animated GIF becomes a still of the first. Convert to JPEG and transparency flattens to white or black. To keep the animation you need something that understands multiple frames — ImageMagick or libvips rather than a canvas. To keep transparency, target PNG or WebP.
A file that looks like an image is not one Extension and Content-Type are both claims from the sender. An image with other data appended still opens normally in a viewer. Check the leading bytes, then re-encode before storing. Decoding and writing back out discards both appended data and embedded metadata. The byte sequences are in the magic bytes reference.

One exception matters when serving user-submitted images as they arrive: SVG is not an image in the relevant sense. It is a document that can execute script, so serving it from your own origin opens a cross-site scripting path. Serve it from a separate domain, or contain it with Content-Security-Policy and Content-Disposition: attachment.