Drop your image here
or click to browse - drop multiple files or a ZIP archive to bulk-check formats
Or paste an image 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, EXIF camera data, and get direct links to the right converter.
or click to browse - drop multiple files or a ZIP archive to bulk-check formats
Or paste an image 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 GIF, APNG, and animated WebP - and counts the actual number of frames so you know what you're working with.
Canon CR2/CR3, Nikon NEF/NRW, Sony ARW/SRF, Adobe DNG, Fuji RAF, Olympus ORF, Panasonic RW2, Pentax PEF, Samsung SRW.
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. The tool reads the first few 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 label, MIME type, and whether the file extension matches.
Magic bytes (also called file signatures or magic numbers) are specific bytes at the start of a file that identify its format. For example, JPEG always starts with FF D8 FF and PNG with 89 50 4E 47. They were standardized for each format precisely so that operating systems and software can identify files reliably - much more reliably than the extension, which can be renamed or wrong.
This happens often: files get renamed, downloaded with wrong extensions, saved by software that doesn't update the extension, or sent through services that strip extension info. A file named "photo.png" might actually be a JPEG inside. After detection, use one of our image converters to re-save it with the correct extension, or just rename it to match. The yellow warning in the File Properties panel flags extension mismatches automatically.
The detector identifies 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). Even if your browser can't preview the image, magic bytes analysis works.
Upload the image and look at the Image Properties panel. If the file stores a resolution value (JPEG JFIF header, PNG pHYs chunk, or EXIF resolution tags), you'll see the stored DPI along with a print-readiness verdict - 300+ DPI is print-ready, while 72-96 DPI is standard web resolution. You'll also see the maximum print size at 300 DPI based on the pixel dimensions, in inches and centimeters. Note that DPI is just metadata - you can print any image at any size, but below 300 DPI the result gets visibly softer.
No. All analysis happens entirely in your browser using JavaScript. Your file is read locally with the FileReader API and never leaves your device. The magic bytes, dimensions, metadata, and EXIF data are all extracted client-side. You can verify this by opening DevTools and watching the Network tab while analyzing - no requests are made.
Yes - just drop or select multiple files. You'll get a sortable table with the format, dimensions, file size, bit depth, alpha channel, animation status, and a warning icon next to any file with an extension mismatch. Export the table to CSV for asset cataloging, forensics, or pre-migration audits. Up to 50 files per batch.
Yes - completely free, no signup, no watermark, no rate limits. Browse the rest of our image tools, converters, and compressors on ConvertICO.