Metadata Editor

EXIF EditorEXIF ReaderRemove MetadataGuidesGlossaryAbout

TIFF file format: where the tags live and what converters lose

TIFF metadata at a glance

Full nameTagged Image File Format
Extensions.tif, .tiff
MIME typeimage/tiff
EXIFYes (ExifIFD pointer, tag 0x8769)
IPTCYes (tag 0x83BB, often also inside 0x8649)
XMPYes (tag 0x02BC)
C2PAYes (tag 0xCD41)
On metadata-editor.comMetadata can be read in the EXIF reader, edited in the EXIF editor and stripped with the metadata remover.

A TIFF file is a header followed by image file directories (IFDs), each a list of numbered tags. Metadata is not appended in separate blocks as in JPEG: EXIF, IPTC, XMP and the ICC profile are tags, or pointers stored in tags. EXIF itself borrows this layout, which is why the Exif segment of a JPEG contains a small TIFF file.

The first eight bytes

The header gives the byte order, the number 42, and the offset of the first IFD:

$ xxd -l 8 photo.tif
00000000: 4949 2a00 0800 0000                      II*.....

II means little-endian (Intel), MM big-endian (Motorola). Here the first IFD starts right after the header, at offset 8. Each IFD is an entry count, then 12-byte entries (tag ID, data type, value count, and either the value or an offset to it), then the offset of the next IFD, or zero if there is none. Anything longer than four bytes lives elsewhere in the file and is reached through its offset, so a TIFF reader is mostly a pointer follower.

Where TIFF metadata sits

Descriptive fields such as Artist, Copyright, ImageDescription, Make, Model and Software are plain tags in IFD0, next to the image structure tags. Everything else hangs off a pointer:

TagExifTool nameContents
0x8769ExifOffsetExifIFD: exposure, lens, capture dates
0x8825GPSInfoGPS IFD
0x02BCApplicationNotesXMP packet
0x83BBIPTC-NAAIPTC IIM datasets
0x8649PhotoshopSettingsPhotoshop resources, IPTC usually repeated here
0x8773ICC_ProfileColor profile
0x014ASubIFDChild images such as previews or raw data
0xCD41(unnamed in ExifTool 12.76)C2PA manifest store

The duplicate IPTC is real: in an ImageMagick TIFF, exiftool -v2 lists the same By-line and CopyrightNotice datasets once under 0x83BB and again under resource 0x0404 inside 0x8649. Edit one copy with a careless tool and readers disagree about the photographer.

Raw formats build on this. DNG is a TIFF extension, and Canon's CR2 uses TIFF headers and IFDs too.

Converting a JPEG to TIFF can drop the EXIF

ImageMagick 6.9.12 turned a 4 MB Canon EOS RP JPEG into an uncompressed 24.9 MB TIFF. XMP, IPTC and ICC made it across. The EXIF did not, not even Make and Model:

$ convert full.jpg photo.tif
$ exiftool -G1 -s -Make -Model -FNumber -XMP:CreatorTool -IPTC:By-line photo.tif
[XMP-xmp]       CreatorTool                     : GIMP 2.10
[IPTC]          By-line                         : Jane Doe

Copying the tags back from the source restores them, GPS included if the JPEG had any:

exiftool -tagsfromfile full.jpg -exif:all photo.tif

After that, -Make -Model -FNumber returned Canon, Canon EOS RP and 16.0. Run the same check on output from scanners and batch converters before archiving: a missing ExifIFD goes unnoticed until someone needs the capture date.

Pages, subfiles and BigTIFF

A multi-page TIFF is a chain of IFDs, one per page, described by SubfileType (0x00FE) and PageNumber (0x0129). ExifTool writes to IFD0 unless told otherwise. On a two-page file made with ImageMagick, exiftool -Artist="Jane Doe" changed page one only, and exiftool -IFD1:Artist="Jane Doe" was needed for page two. Fax archives and scanned documents are where this bites.

Classic TIFF uses 32-bit offsets, which caps a file at 4 GB. BigTIFF lifts that by using 43 instead of 42 in the header and 8-byte offsets throughout. Its header starts 49 49 2b 00 08 00 00 00, and ExifTool 12.76 reads it but refuses to write it:

Error: ExifTool does not support writing of BigTIFF images - bt.tif

For metadata on BigTIFF, write an XMP sidecar or use the software that produced the file.

Editing TIFF metadata here

TIFF is one of the two formats our metadata editor accepts, along with JPEG. It writes fields like Artist, Copyright and ImageDescription through ExifTool, so the pixel data is not recompressed, and the metadata remover strips a TIFF the same way it strips a JPEG. A full strip also removes the ICC profile, which matters more for TIFF than for most formats because print and archive files are often in wide-gamut spaces like Adobe RGB. Capture dates are editable too, in EXIF format; how to change the date taken explains which of the three dates to touch.

FAQ

Other formats

JPG file format: segments, metadata and what survives an export

How a JPG file stores metadata: Exif and XMP in APP1, ICC and MPF in APP2, IPTC in APP13, C2PA in APP11, and how to edit it without recompressing the image.

DNG file metadata: inside Adobe's open raw format

A DNG file is a TIFF-based raw format that keeps EXIF, IPTC and XMP inside the file. How DNG metadata is laid out, how to edit it, and what ProRAW adds.

CR2 file metadata: Canon raw layout, maker notes and sidecars

A CR2 file is Canon's TIFF-based raw format. Where its EXIF and Canon maker notes sit, why ExifTool cannot fully strip it, and how XMP sidecars handle edits.

Other Metadata Tools