🧩 PNG Chunk Viewer & CRC Checker
Drop a PNG to see its chunk structure (IHDR, pHYs, tEXt and more), read its hidden text metadata, and check every chunk's CRC for corruption.
Drop a PNG to inspect its internal chunk structure — the IHDR header (dimensions, bit depth, color type), physical resolution (pHYs), any embedded text metadata (tEXt/iTXt), and every other chunk — and verify each chunk's stored CRC-32 against a freshly computed one to catch corruption or hidden edits. It parses the file in your browser, so the image is never uploaded. 🔒 100% client-side.
How the png chunk viewer & crc checker works
A PNG file is a signature followed by a sequence of "chunks", each with a length, a four-letter type, its data, and a CRC-32 checksum. This tool walks that structure and decodes the ones that matter: IHDR (width, height, bit depth and color type), pHYs (physical resolution / DPI), tEXt and iTXt (embedded text metadata like Software, Author or a comment), gAMA, sRGB, tIME, the palette, and the image-data chunks. Critically, it recomputes each chunk's CRC-32 from its bytes and compares it to the checksum stored in the file, flagging any mismatch — which is exactly how a PNG decoder detects corruption.
This is useful for debugging a PNG that won't open, checking what metadata (and which software) is embedded in an image, confirming a file's true dimensions and color type, or spotting a corrupted or tampered chunk via a failing CRC. It reads uncompressed chunk metadata; the compressed pixel data (IDAT) and compressed text (zTXt) aren't decompressed, just measured. Everything is parsed in your browser, so the image — and any metadata it carries — never leaves your device.
Frequently asked questions
What are PNG chunks?
A PNG is built from chunks: each has a length, a four-letter type (like IHDR, IDAT, tEXt), its data, and a CRC-32. Chunks with an uppercase first letter are "critical" (needed to display the image); lowercase ones are "ancillary" (optional metadata). This tool lists them all and decodes the common ones.
How does the CRC check detect corruption?
Every PNG chunk stores a CRC-32 computed over its type and data. This tool recomputes that CRC from the bytes and compares it to the stored value. A mismatch means the chunk's bytes were altered or corrupted — the same check a PNG decoder uses to reject a broken file.
Can I see what metadata is hidden in a PNG?
Yes — tEXt and iTXt chunks hold text metadata such as the software that created the image, an author, a description or a comment. The tool decodes the uncompressed ones and shows the keyword and value, so you can see what a PNG is carrying.
What do bit depth and color type mean?
They come from the IHDR chunk. Bit depth is bits per channel (often 8); color type says whether the image is grayscale, truecolor (RGB), indexed (palette), or has an alpha channel (RGBA). Together they define how the pixels are stored.
Does it change the PNG?
No — this is a read-only inspector. It parses and verifies the file without modifying it, and to change a PNG's DPI specifically, use the dedicated Change Image DPI tool.
Is my image uploaded?
No — the PNG is parsed entirely in your browser and nothing is transmitted, so the image and its metadata stay on your device. It works offline too.