About EXIF Data Viewer

A from-scratch JPEG EXIF parser that reads raw binary data using ArrayBuffer and DataView—no external library. It checks the JPEG file marker (0xFFD8), locates the APP1 segment (0xFFE1), verifies the “Exif” header, then parses TIFF structures with automatic byte-order detection (little-endian or big-endian). Extracts camera make/model, exposure settings (aperture, shutter speed, ISO, focal length, flash), GPS coordinates, timestamps, image dimensions, and software metadata.

  • Custom binary parser reads ArrayBuffer directly—no dependency on exif-js or similar libraries
  • Detects byte order from the TIFF header (0x4949 for little-endian Intel, 0x4D4D for big-endian Motorola) and adjusts all subsequent reads accordingly
  • Parses five IFD tag data types: BYTE, ASCII, SHORT, LONG, and RATIONAL (two LONGs representing numerator/denominator)
  • Extracts and organizes data into sections: camera info, settings (f-number, exposure time, ISO, focal length, flash mode), dates, GPS, image dimensions, and software
  • JPEG-only—validates the 0xFFD8 start-of-image marker and rejects PNGs, TIFFs, and other formats

Frequently Asked Questions

Why JPEG only?
The parser is built specifically for the JFIF/EXIF container format. PNGs store metadata in tEXt/iTXt chunks, TIFFs have their own structure, and RAW files vary by manufacturer. Each would need a separate parser. JPEG covers the vast majority of photos people want to inspect.
Does it read GPS data?
Yes, if the photo contains GPS EXIF tags. Most smartphones embed GPS coordinates unless you’ve disabled location services. The tool displays latitude and longitude from the GPSLatitude/GPSLongitude tags.