Introduction
Every photo you take with a phone or camera can carry EXIF metadata: camera model, lens, exposure settings, timestamp, and sometimes GPS coordinates pinpointing exactly where the photo was taken. This metadata is useful for photographers but a privacy concern for everyone else. This tool parses EXIF data from JPEG and TIFF files in your browser, displays all tags in a readable format, and can strip EXIF data to produce a clean image for sharing. No image data leaves your device.
What this tool does
- Parse EXIF metadata from JPEG and TIFF files by locating the APP1 marker (0xFFE1), reading the TIFF header, and traversing IFD0, ExifIFD, and GPS IFD entries
- Decode common EXIF tags including camera make, model, lens model, software, DateTime, DateTimeOriginal, DateTimeDigitized, orientation, ISO, F-number, exposure time, focal length, and focal length in 35mm equivalent
- Parse GPS coordinates (latitude, longitude, altitude) from the GPS IFD and display them with a Google Maps link for easy location verification
- Display all raw EXIF tags with their tag number (in hex), tag name, and value, including tags not in the common-name dictionary
- Strip EXIF data by re-encoding the image through an HTML canvas, which does not preserve metadata, and provide a download link for the clean image
- Show image dimensions from both the EXIF PixelXDimension/PixelYDimension tags and the browser's natural width/height
How this tool works
The tool reads the uploaded file as an ArrayBuffer and scans for the JPEG Start of Image marker (0xFFD8). It then walks the JPEG markers looking for APP1 (0xFFE1), which contains the EXIF data. The APP1 segment starts with 'Exif\0\0' followed by a TIFF header.
The TIFF header specifies byte order ('II' for little-endian or 'MM' for big-endian) and a magic number (42). The tool reads the IFD0 (Image File Directory) offset from the TIFF header and parses each IFD entry. Each entry is 12 bytes: 2 bytes for the tag, 2 for the data type, 4 for the count, and 4 for the value or value offset. If the total data size is 4 bytes or less, the value is stored inline; otherwise, the 4-byte field is an offset to the actual data.
The tool supports 6 TIFF data types: BYTE, ASCII, SHORT, LONG, RATIONAL (two LONGs: numerator/denominator), and SRATIONAL (signed). ASCII strings are read byte by byte until a null terminator. RATIONAL values are used for exposure time, F-number, focal length, and GPS coordinates.
After IFD0, the tool follows the ExifIFD pointer (tag 0x8769) to parse exposure-specific tags, and the GPSIFD pointer (tag 0x8825) to parse GPS data. GPS latitude and longitude are stored as three RATIONAL values (degrees, minutes, seconds) with a reference direction (N/S, E/W).
The EXIF stripping feature loads the image into an HTML canvas via `drawImage` and exports it with `canvas.toDataURL('image/jpeg', 0.95)`. Canvas-based re-encoding does not preserve EXIF metadata, producing a clean image.
How EXIF metadata works (CIPA DC-008-2021)
EXIF (Exchangeable Image File Format) is specified in CIPA DC-008-2021, published by the Camera & Imaging Products Association. The current version is EXIF 3.0, released in 2021 by CIPA and JEITA (Japan Electronics and Information Technology Industries Association).
EXIF metadata is embedded in JPEG files within the APP1 marker segment. The structure follows the TIFF (Tagged Image File Format) specification: a TIFF header defines byte order and offsets, followed by Image File Directories (IFDs) containing tagged entries. Each IFD entry has a tag number, data type, count, and value. The EXIF specification defines standard tag numbers and their meanings.
The JPEG marker structure is defined in ITU-T T.81 (the JPEG standard). JPEG files consist of segments, each starting with a 0xFF marker byte. APP0 (0xFFE0) contains JFIF metadata, APP1 (0xFFE1) contains EXIF, and APP2 (0xFFE2) may contain ICC color profiles. The tool scans for APP1 to locate the EXIF data.
GPS coordinates in EXIF are stored as degrees, minutes, seconds (DMS) with a reference direction. The tool converts these to decimal degrees: `decimal = degrees + minutes/60 + seconds/3600`, with the sign determined by the reference (S or W means negative). This format is compatible with Google Maps and most mapping APIs.
EXIF metadata raises significant privacy concerns. Photos taken with GPS-enabled cameras or phones may reveal the exact location where the photo was taken, including home addresses and workplaces. Social media platforms typically strip EXIF data on upload, but sharing photos directly (via email or messaging) preserves it. Always strip EXIF data before sharing photos if you do not want to reveal location information.
For comparing images, see the Image Hash Comparator. For audio analysis, see the Spectrogram Viewer. For encoding image data as text, see the Base64 Encode/Decode.
How to use this tool
- Click the file input and select a JPEG or TIFF image (up to 30 MB)
- The tool parses the EXIF data and displays a summary with camera make, model, lens, date/time, exposure settings, and GPS coordinates if present
- Review the raw EXIF tags section to see all parsed tags with their hex tag numbers and values
- If GPS data is present, click the Google Maps link to see the exact location on a map
- To strip EXIF data for privacy, click the Strip EXIF button. The tool re-encodes the image through a canvas, removing all metadata
- Download the stripped image using the download link. The clean image is safe to share without revealing location or camera information
Real-world examples
Checking a photo for GPS location data
Upload a photo taken with a smartphone. The tool displays GPS Latitude and Longitude with 6 decimal places (approximately 10cm accuracy). Click the Google Maps link to see the exact location. This demonstrates why stripping EXIF data matters before sharing photos publicly.
Reading camera settings from a DSLR photo
Upload a JPEG from a Canon or Nikon DSLR. The tool shows Camera Make, Camera Model, Lens Model, ISO, F-Number, Exposure Time (as a fraction like 1/250s), Focal Length, and Focal Length in 35mm equivalent. This is useful for learning photography by examining the settings used for a particular shot.
Stripping EXIF before sharing on social media
Upload a photo, click Strip EXIF, and download the clean image. The stripped image has the same visual content but no metadata. Compare the file sizes: the original may be larger due to embedded EXIF and thumbnail data. The stripped version is safe to email or share via messaging apps.
Debugging an image with no EXIF data
Upload a PNG or a JPEG that has already been processed by a social media platform. The tool reports 'No EXIF metadata found in this image.' PNG files do not use the EXIF format (they use tEXt and eXIf chunks instead), and social media platforms strip EXIF on upload for privacy.
Comparison with similar methods
| Method | Complexity | Typical use |
|---|---|---|
| This tool (browser-based) | Pure JavaScript EXIF parser, client-side | Quick EXIF viewing and stripping, privacy checks |
| exiftool (command line) | Full-featured, supports 100+ file formats | Professional metadata management, batch processing |
| Online EXIF viewers | Server-side processing, uploads image | Quick checks (but image leaves your device) |
| macOS Preview / Windows Properties | OS-native, limited tag display | Casual viewing of common tags |
| Adobe Lightroom | Professional photo management, full metadata editing | Photography workflow, IPTC and EXIF editing |
Limitations or considerations
The tool parses EXIF data from JPEG and TIFF files only. PNG files use a different metadata format (tEXt chunks and the eXIf chunk defined in the PNG specification) and are not supported by this parser. WebP files may contain EXIF in their RIFF container but are also not supported.
The EXIF tag dictionary includes the most common tags from IFD0, ExifIFD, and GPS IFD. Tags not in the dictionary are displayed with their hex tag number (e.g. `Tag_0xa432`) and raw value. For a complete tag reference, use exiftool or consult the CIPA DC-008-2021 specification.
The EXIF stripping feature re-encodes the image as JPEG with 95% quality. This may slightly reduce image quality compared to the original. The stripped image also loses any embedded color profile (ICC profile) and thumbnail. For lossless stripping, use exiftool with the `-all=` flag.
The tool does not parse MakerNote data (manufacturer-specific EXIF tags stored in a proprietary binary format). MakerNotes can contain detailed camera settings but require manufacturer-specific parsers.
The maximum file size is 30 MB. Larger files may cause the browser to run out of memory during parsing. For very large images, use a desktop tool.
The tool does not modify the original file. Stripping creates a new image that you must download separately.
Frequently asked questions
What is EXIF metadata and why should I care about it?
EXIF (Exchangeable Image File Format) metadata is embedded in JPEG and TIFF files by cameras and phones. It includes camera settings, timestamps, and potentially GPS coordinates. While useful for photography, GPS data in EXIF can reveal your home address or workplace. Always strip EXIF data before sharing photos if you want to protect your location privacy.
Do social media platforms strip EXIF data automatically?
Most major platforms (Facebook, Instagram, Twitter, WhatsApp) strip EXIF data when you upload photos through their apps or websites. However, sharing photos directly via email or messaging apps may preserve EXIF data. This tool lets you strip EXIF before sharing to be safe.
Can this tool read EXIF from PNG files?
No. PNG files use a different metadata format (tEXt chunks and the eXIf chunk) rather than the JPEG APP1 segment that this tool parses. For PNG metadata, use exiftool or a PNG-specific parser. The tool will report 'No EXIF metadata found' for PNG files.
How accurate are the GPS coordinates in EXIF?
GPS coordinates in EXIF are typically accurate to within a few meters, depending on the device's GPS lock at the time the photo was taken. The tool displays coordinates with 6 decimal places, which corresponds to approximately 10cm precision. However, the actual accuracy depends on the GPS hardware and signal conditions.
Does stripping EXIF reduce image quality?
The tool re-encodes the image as JPEG at 95% quality, which may cause a very slight quality reduction. The visual difference is usually imperceptible. For lossless EXIF removal, use exiftool with the `-all=` flag, which modifies the file structure without re-encoding the image data.
Conclusion
EXIF metadata is a double-edged sword: valuable for photographers, but a privacy risk when sharing photos. This tool lets you view and strip EXIF data entirely in your browser, with no image data uploaded to a server. For comparing images visually, see the Image Hash Comparator. For audio analysis, see the Spectrogram Viewer. For encoding image data as text, use the Base64 Encode/Decode.