Drop your image here
or click to browse - drop many files, a whole folder or a ZIP archive to check up to 500 at once
Or paste an image - or a link to one - with Ctrl + V
Upload any image to instantly identify its real format by reading the file's magic bytes - the actual signature in the file header, not just the file extension. See dimensions, DPI and print size, color depth, transparency, animation and EXIF camera data, check a file straight from its link, read the embedded colour profile and JPEG quality, find AI prompts and Content Credentials, compare two files side by side, and fix or convert files with the wrong extension - one at a time or a whole folder. Need to change the format? Pick an image converter.
or click to browse - drop many files, a whole folder or a ZIP archive to check up to 500 at once
Or paste an image - or a link to one - with Ctrl + V
If you have an image and you're not sure what format it actually is, the file extension can lie. Files get renamed, downloaded with the wrong extension, or saved by software that doesn't update the extension. The only way to know for certain is to read the file's magic bytes - the first few bytes of the file that act as a fingerprint. Here's how to use this tool:
Prefer a full walkthrough with Windows, Mac, and command-line methods too? Read our guide: How to tell what format an image file is.
Wrong extension? Fix it with one click. Corrupted file? The integrity check will tell you. Works with JPG, PNG, WebP, HEIC, AVIF, GIF, TIFF, BMP, SVG, ICO, JXL, PSD, and RAW formats from Canon (CR2/CR3), Nikon (NEF), Sony (ARW), Adobe (DNG) and more. Need full EXIF? Use our EXIF Viewer. Want to strip metadata before sharing? EXIF Remover.
Every image format has a unique "magic number" or signature at the start of the file. Developers, forensic analysts, and security researchers often need to identify files by these bytes. Here's the reference table for common image formats:
| Format | Magic Bytes (Hex) | ASCII | Offset | Notes |
|---|---|---|---|---|
| JPEG / JPG | FF D8 FF |
- | 0 | Followed by JFIF (E0), Exif (E1), or other marker |
| PNG | 89 50 4E 47 0D 0A 1A 0A |
.PNG.... | 0 | 8-byte signature. APNG uses same signature + acTL chunk |
| GIF87a / GIF89a | 47 49 46 38 37 61 / ...39 61 |
GIF87a / GIF89a | 0 | Two GIF variants, both still in use |
| WebP | 52 49 46 46 ... 57 45 42 50 |
RIFF .... WEBP | 0, 8 | RIFF container; "WEBP" appears 8 bytes in |
| HEIC / HEIF | ... 66 74 79 70 68 65 69 63 |
ftypheic / ftypheix / ftypmif1 | 4 | ISO base media; brand varies (heic/heix/heif/mif1) |
| AVIF | ... 66 74 79 70 61 76 69 66 |
ftypavif | 4 | ISO base media; same family as HEIC, different brand |
| TIFF (Little-endian) | 49 49 2A 00 |
II*. | 0 | Intel byte order. RAW formats (DNG, CR2, NEF, ARW) share this header |
| TIFF (Big-endian) | 4D 4D 00 2A |
MM.* | 0 | Motorola byte order |
| BMP | 42 4D |
BM | 0 | 2-byte signature; less reliable, check structure |
| ICO | 00 00 01 00 |
- | 0 | Cursor files use 00 00 02 00 instead |
| JPEG XL (container) | 00 00 00 0C 4A 58 4C 20 0D 0A 87 0A |
....JXL .... | 0 | JXL ISO container; naked codestream uses FF 0A |
| PSD (Photoshop) | 38 42 50 53 |
8BPS | 0 | Version 1 = PSD, version 2 = PSB (large) |
| SVG | Text: <svg or <?xml |
varies | 0 | Plain text XML, no binary signature |
| Canon CR3 | ... 66 74 79 70 63 72 78 |
ftypcrx | 4 | ISO base media container (Canon's newer RAW) |
| Fuji RAF | 46 55 4A 49 46 49 4C 4D 43 43 44 2D 52 41 57 |
FUJIFILMCCD-RAW | 0 | Fujifilm camera RAW |
Why magic bytes matter: File extensions are just naming conventions - anyone can rename photo.heic to photo.jpg, but that doesn't change the bytes inside. Magic bytes are the only reliable way to identify a file's true format. This is how operating systems, image editors, and security tools verify file types.
Once you know the format, here's how the most common image types compare for transparency, animation, compression type, and ideal use:
| Format | Transparency | Animation | Compression | Best For |
|---|---|---|---|---|
| JPEG | No | No | Lossy | Photos, web images, smaller files |
| PNG | Yes (alpha) | APNG only | Lossless | Graphics, screenshots, transparency |
| GIF | 1-bit only | Yes | Lossless | Short animations, memes (256 colors max) |
| WebP | Yes (alpha) | Yes | Both | Modern web; smaller than JPG/PNG |
| HEIC / HEIF | Yes (alpha) | Sequences | Lossy | iPhone photos (smaller than JPG) |
| AVIF | Yes (alpha) | Yes | Lossy + lossless | Next-gen web (best compression) |
| TIFF | Yes | No | Both (often lossless) | Print, archival, scans |
| BMP | 32-bit only | No | Usually uncompressed | Windows legacy; rarely used now |
| SVG | Yes | CSS / SMIL | Vector (XML) | Logos, icons, UI graphics (scales infinitely) |
| JPEG XL | Yes (alpha) | Yes | Both | Successor to JPEG; great efficiency |
| ICO | Yes | No | Bundles PNG/BMP | Windows icons, favicons |
| RAW (DNG, CR2, NEF, ARW) | No | No | Mostly lossless | Camera originals (edit in Lightroom etc.) |
Your image upload validator rejects a file but the user swears it's a JPG. Drop the file in - you'll see if it's actually a renamed HEIC or PNG, then know exactly what to handle in code.
A client sent "logo.png" but Photoshop opens it as a corrupted JPEG. Find out what the file actually is, then use the right converter to fix the extension.
Identify Canon CR2/CR3, Nikon NEF, Sony ARW, Adobe DNG, Fuji RAF, Olympus ORF and more. Get camera, lens, and exposure metadata before importing to Lightroom.
Verify whether files have been disguised by renaming extensions. Export batch results to CSV for evidence chains. The browser-only design means nothing touches a third-party server.
Drop a folder of images to bulk-check formats, find extension mismatches, and identify outdated files. Useful before bulk-compressing or migrating image libraries.
Compare what the browser thinks versus what's really in the bytes. The JSON report download gives you exact magic-byte sequences and EXIF tags for unit-test fixtures.
Reads the actual file header bytes to identify the real format, regardless of extension. Wrong extension? Download a correctly renamed copy in one click. Corrupted or truncated JPEG, PNG, and GIF files are flagged too.
Exact pixel width and height, aspect ratio, color depth, stored DPI with a print-readiness verdict, and the maximum print size at 300 DPI.
Camera make/model, lens, date taken, exposure, ISO, focal length, software, copyright. Remove EXIF for privacy before sharing.
Detects animated GIF, APNG, WebP, AVIF and HEIC sequences - with the real number of frames and, for AVIF and HEIC, the duration and frame rate.
Canon CR2/CR3, Nikon NEF/NRW, Sony ARW/SRF, Adobe DNG, Fuji RAF, Olympus ORF, Panasonic RW2, Pentax PEF, Samsung SRW.
Names the embedded ICC profile (sRGB, Display P3, Adobe RGB, CMYK), spots HDR, and estimates the JPEG quality and chroma subsampling from the quantization tables.
Shows the prompt, seed and model saved by Stable Diffusion, ComfyUI, NovelAI and InvokeAI, IPTC "made with AI" labels, and C2PA Content Credentials with the app and signer.
Put two files next to each other: every property lined up, differences highlighted, SHA-256 hashes and a pixel-by-pixel check that tells you if they really show the same picture.
Download a human-readable TXT report or a JSON dataset for any image. Batch mode exports a CSV of every file analyzed.
Drop the file into the upload area above, or paste a link to an image online. The tool reads the first bytes of the file (the "magic number") and matches them against signatures for over 25 image formats.
The result shows the true format, its full name, MIME type, and whether the file extension - or the label the website sends - matches.
Magic bytes (also called file signatures or magic numbers) are specific bytes at the start of a file that identify its format. JPEG always starts with FF D8 FF and PNG with 89 50 4E 47.
Operating systems and apps use them because they are far more reliable than the file extension, which anyone can rename.
Files get renamed, downloaded with the wrong extension, or saved by apps that do not update it. A file named "photo.png" can be a JPEG inside.
When the tool finds a mismatch, it offers a one-click download of an identical copy with the correct extension. To really change the format, use one of our image converters.
All standard web formats (JPEG, PNG, GIF, WebP, AVIF, HEIC/HEIF, TIFF, BMP, SVG, ICO, JXL, APNG), creative app formats (PSD, XCF, AI, EPS) and RAW camera formats (Adobe DNG, Canon CR2/CR3, Nikon NEF/NRW, Sony ARW/SRF, Fuji RAF, Olympus ORF, Panasonic RW2, Pentax PEF, Samsung SRW).
Detection works even when your browser cannot preview the image.
Upload the image and look at the Image Properties panel. If the file stores a resolution (JPEG JFIF header, PNG pHYs chunk or EXIF tags), you see the stored DPI with a print-readiness verdict - 300+ DPI is print-ready, 72-96 DPI is screen resolution.
You also get the maximum print size at 300 DPI. To change the stored DPI, use the Image DPI Checker.
No. All analysis happens in your browser. The file is read locally and never leaves your device - magic bytes, dimensions, metadata and EXIF data are all extracted on your computer.
You can check it yourself: open DevTools and watch the Network tab while a file is analyzed.
Yes - drop a folder (subfolders included), use Choose a Folder, or drop a ZIP archive: up to 500 images at once. You get a sortable table with warnings for wrong extensions, damaged files, AI data and CMYK.
Fix all wrong extensions, convert files to the format their names promise, pick any two files to compare, or export everything to CSV.
It shows what the file itself says. Images from Stable Diffusion (AUTOMATIC1111, Forge), ComfyUI, NovelAI and InvokeAI often carry the prompt, seed and model; many apps add an IPTC "made with AI" label or C2PA Content Credentials.
If that data was stripped, the tool cannot prove anything either way - missing data does not mean a photo is real. To remove such data before sharing, use the EXIF Data Remover.