Extra Tags

The extra tags provide extra features or extra information extracted or generated by ExifTool that is not directly associated with another tag group. The Group column lists the family 1 group name when reading. Tags with a "-" in this column are write-only.

Tags in the family 1 "System" group are referred to as "pseudo" tags because they don't represent real metadata in the file. Instead, this information is stored in the directory structure of the filesystem. The Writable System "pseudo" tags in this table may be written without modifying the file itself. The TestName tag is used for dry-run testing before writing FileName.

Tag Name WritableGroupValues / Notes
Adobe yes! Adobe (the JPEG APP14 Adobe segment. Extracted only if specified. See the JPEG Adobe Tags for more information)
BaseName no System (file name without extension. Not generated unless specifically requested or the API RequestAll option is set)
CanonDR4 yes!^ CanonVRD (the full Canon DPP version 4 DR4 block. This tag is generated only if specifically requested)
CanonVRD yes!^ CanonVRD (the full Canon DPP VRD trailer block. This tag is generated only if specifically requested)
Comment yes File (comment embedded in JPEG, GIF89a or PPM/PGM/PBM image)
CurrentIPTCDigest no File (MD5 digest of existing IPTC data. All zeros if IPTC exists but Digest::MD5 is not installed. Only calculated for IPTC in the standard location as specified by the MWG. ExifTool automates the handling of this tag in the MWG module -- see the MWG Composite Tags for details)
Directory yes! System (the directory of the file as specified in the call to ExifTool, or "." if no directory was specified. May be written to move the file to another directory that will be created if doesn't already exist)
EXIF yes! EXIF (the full EXIF data block from JPEG, PNG, JP2, MIE and MIFF images. This tag is generated only if specifically requested)
EmbeddedVideo no File  
Error no ExifTool (returns errors that may have occurred while reading or writing a file. Any Error will prevent the file from being processed. Minor errors may be downgraded to warnings with the -m or IgnoreMinorErrors option)
ExifByteOrder yes File (represents the byte order of EXIF information. May be written to set the byte order only for newly created EXIF segments)
'II' = Little-endian (Intel, II)
'MM' = Big-endian (Motorola, MM)
ExifToolVersion no ExifTool (the version of ExifTool currently running)
ExifUnicodeByteOrder yes - (specifies the byte order to use when writing EXIF Unicode text. The EXIF specification is particularly vague about this byte ordering, and different applications use different conventions. By default ExifTool writes Unicode text in EXIF byte order, but this write-only tag may be used to force a specific order. Applies to the EXIF UserComment tag when writing special characters)
'II' = Little-endian (Intel, II)
'MM' = Big-endian (Motorola, MM)
FileAccessDate no System (the date/time of last access of the file. Note that this access time is updated whenever any software, including ExifTool, reads the file)
FileAttributes no System (extracted only if specifically requested or the API SystemTags or RequestAll option is set. 2 or 3 values: 0. File type, 1. Attribute bits, 2. Windows attribute bits if Win32API::File is available)
[Value 0]
0x0 = Unknown
0x1000 = FIFO
0x2000 = Character
0x3000 = Mux Character
0x4000 = Directory
0x5000 = XENIX Named
0x6000 = Block
0x7000 = Mux Block
   0x8000 = Regular
0x9000 = VxFS Compressed
0xa000 = Symbolic Link
0xb000 = Solaris Shadow Inode
0xc000 = Socket
0xd000 = Solaris Door
0xe000 = BSD Whiteout
[Value 1]
Bit 9 = Sticky
Bit 10 = Set Group ID
   Bit 11 = Set User ID
[Value 2]
Bit 0 = Read Only
Bit 1 = Hidden
Bit 2 = System
Bit 3 = Volume Label
Bit 4 = Directory
Bit 5 = Archive
Bit 6 = Device
Bit 7 = Normal
   Bit 8 = Temporary
Bit 9 = Sparse File
Bit 10 = Reparse Point
Bit 11 = Compressed
Bit 12 = Offline
Bit 13 = Not Content Indexed
Bit 14 = Encrypted
FileBlockCount no System (extracted only if specifically requested or the API SystemTags or RequestAll option is set)
FileBlockSize no System (extracted only if specifically requested or the API SystemTags or RequestAll option is set)
FileCreateDate yes! System (the filesystem creation date/time. Windows/Mac only. In Windows, the file creation date/time is preserved by default when writing if Win32API::File and Win32::API are available. On Mac, this tag is extracted only if it or the MacOS group is specifically requested or the API RequestAll option is set to 2 or higher. Requires "setfile" for writing on Mac, which may be installed by typing xcode-select --install in the Terminal)
FileDeviceID no System (extracted only if specifically requested or the API SystemTags or RequestAll option is set)
FileDeviceNumber no System (extracted only if specifically requested or the API SystemTags or RequestAll option is set)
FileGroupID yes! System (extracted only if specifically requested or the API SystemTags or RequestAll option is set. Returns group ID number with the -n option, or name otherwise. May be written with either group name or number)
FileHardLinks no System (extracted only if specifically requested or the API SystemTags or RequestAll option is set)
FileInodeChangeDate no System (the date/time when the file's directory information was last changed. Non-Windows systems only)
FileInodeNumber no System (extracted only if specifically requested or the API SystemTags or RequestAll option is set)
FileModifyDate yes! System (the filesystem modification date/time. Note that ExifTool may not be able to handle filesystem dates before 1970 depending on the limitations of the system's standard libraries)
FileName yes! System (may be written with a full path name to set FileName and Directory in one operation. This is such a powerful feature that a TestName tag is provided to allow dry-run tests before actually writing the file name. See filename.html for more information on writing the FileName, Directory and TestName tags)
FilePath no System (absolute path of source file. Not generated unless specifically requested or the API RequestAll option is set. Does not support Windows Unicode file names)
FilePermissions yes! System (r=read, w=write and x=execute permissions for the file owner, group and others. The ValueConv value is an octal number so bit test operations on this value should be done in octal, eg. 'oct($filePermissions#) & 0200')
FileSequence no ExifTool (sequence number for each source file when extracting or copying information, including files that fail the -if condition of the command-line application, beginning at 0 for the first file. Not generated unless specifically requested or the API RequestAll option is set)
FileSize no System (note that the print conversion for this tag uses SI prefixes by default: 1 kB = 1000 bytes, etc. Set the API ByteUnit option to "Binary" to use binary prefixes instead: 1 KiB = 1024 bytes, etc.)
FileType no File (a short description of the file type. For many file types this is the just the uppercase file extension)
FileTypeExtension no File (a common lowercase extension for this file type, or uppercase with the -n option)
FileUserID yes! System (extracted only if specifically requested or the API SystemTags or RequestAll option is set. Returns user ID number with the -n option, or name otherwise. May be written with either user name or number)
ForceWrite yes - (write-only tag used to force metadata in a file to be rewritten even if no tag values are changed. May be set to "EXIF", "IPTC", "XMP" or "PNG" to force the corresponding metadata type to be rewritten, "FixBase" to cause EXIF to be rewritten only if the MakerNotes offset base was fixed, or "All" to rewrite all of these metadata types. Values are case insensitive, and multiple values may be separated with commas, eg. -ForceWrite=exif,xmp)
Geolocate yes - (this write-only tag may be used to write geolocation city, region, country code and country based in input GPS coordinates, or to write GPS coordinates based on geolocation name. See the Writing section of the Geolocation page for details. This tag is writable regardless of the API Geolocation option setting)
GeolocationBearing no ExifTool (compass bearing to GeolocationCity center. Geolocation tags are generated only if API Geolocation option is set)
GeolocationCity no ExifTool (name of city nearest to the current GPS coordinates)
GeolocationCountry no ExifTool (geolocation country name)
GeolocationCountryCode no ExifTool (geolocation country code)
GeolocationDistance no ExifTool (distance in km from current GPS to city)
GeolocationFeatureCode no ExifTool (feature code, see http://www.geonames.org/export/codes.html#P)
GeolocationPopulation no ExifTool (city population rounded to 2 significant digits)
GeolocationPosition no ExifTool (approximate GPS coordinates of city)
GeolocationRegion no ExifTool (geolocation state, province or region)
GeolocationSubregion no ExifTool (geolocation county or subregion)
GeolocationTimeZone no ExifTool (geolocation time zone name)
GeolocationWarning no ExifTool  
Geosync yes - (this write-only tag specifies a time difference to add to Geotime for synchronization with the GPS clock. For example, set this to "-12" if the camera clock is 12 seconds faster than GPS time. Input format is "[+-][[[DD ]HH:]MM:]SS[.ss]". Additional features allow calculation of time differences and time drifts, and extraction of synchronization times from image files. See the geotagging documentation for details)
Geotag yes - (this write-only tag is used to define the GPS track log data or track log file name. Currently supported track log formats are GPX, NMEA RMC/GGA/GLL, KML, IGC, Garmin XML and TCX, Magellan PMGNTRK, Honeywell PTNTHPR, Winplus Beacon text, and Bramor gEO log files. May be set to the special value of "DATETIMEONLY" (all caps) to set GPS date/time tags if no input track points are available. See geotag.html for details)
Geotime yes - (this write-only tag is used to define a date/time for interpolating a position in the GPS track specified by the Geotag tag. Writing this tag causes GPS information to be written into the EXIF or XMP of the target files. The local system timezone is assumed if the date/time value does not contain a timezone. May be deleted to delete associated GPS tags. A group name of "EXIF" or "XMP" may be specified to write or delete only EXIF or XMP GPS tags)
HardLink yes! - (this write-only tag is used to create a hard link with the specified name to the source file. If the source file is edited, copied, renamed or moved in the same operation as writing HardLink, then the link is made to the updated file. Note that subsequent editing of either hard-linked file by exiftool will break the link unless the -overwrite_original_in_place option is used)
ICC_Profile yes! ICC_Profile (the full ICC_Profile data block. This tag is generated only if specifically requested)
ID3Size no File (size of the ID3 data block)
IPTC yes! IPTC (the full IPTC data block. This tag is generated only if specifically requested)
ImageDataHash no File (Hash of image data. Generated only if specifically requested for JPEG, TIFF, PNG, CRW, CR3, MRW, RAF, X3F, IIQ, JP2, JXL, HEIC and AVIF images, MOV/MP4 videos, and some RIFF-based files such as AVI, WAV and WEBP. The hash algorithm is set by the API ImageHashType option, and is 'MD5' by default. The hash includes the main image data, plus JpgFromRaw/OtherImage for some formats, but does not include ThumbnailImage or PreviewImage. Includes video and audio data for MOV/MP4. The XMP-et:OriginalImageHash and XMP-et:OriginalImageHashType tags provide a way to store the this hash value and the hash type in the file.)
ImageHeight no File (the height of the image in number of pixels)
ImageWidth no File (the width of the image in number of pixels)
JPEGDigest no File (an MD5 digest of the JPEG quantization tables is combined with the component sub-sampling values to generate the value of this tag. The result is compared to known values in an attempt to deduce the originating software based only on the JPEG image data. For performance reasons, this tag is generated only if specifically requested or the API RequestAll option is set to 3 or higher)
JPEGImageLength no File (byte length of JPEG image without metadata. For performance reasons, this tag is generated only if specifically requested or the API RequestAll option is set to 3 or higher)
JPEGQualityEstimate no File (an estimate of the IJG JPEG quality setting for the image, calculated from the quantization tables. For performance reasons, this tag is generated only if specifically requested or the API RequestAll option is set to 3 or higher)
JUMBF no JUMBF (the C2PA JUMBF data block, extracted only if specifically requested)
MIMEType no File (the MIME type of the source file)
MaxVal no File (maximum pixel value in PPM or PGM image)
NewGUID no ExifTool (generates a new, random GUID with format YYYYmmdd-HHMM-SSNN-PPPP-RRRRRRRRRRRR, where Y=year, m=month, d=day, H=hour, M=minute, S=second, N=file sequence number in hex, P=process ID in hex, and R=random hex number; without dashes with the -n option. Not generated unless specifically requested or the API RequestAll option is set)
Now no ExifTool (the current date/time. Useful when setting the tag values, eg. "-modifydate<now". Not generated unless specifically requested or the API RequestAll option is set)
NumPlanes no File (number of color planes)
OtherImage no File (other JPEG-format embedded image)
PageCount no File (the number of pages in a multi-page TIFF document)
PreviewImage yes File (JPEG-format embedded preview image)
PreviewJXL no File (JXL-format embedded preview image)
PreviewPDF no File (PDF-format embedded preview image)
PreviewPNG no File (PNG-format embedded preview image)
PreviewTIFF no File (TIFF-format embedded preview image)
PreviewWMF no File (WMF-format embedded preview image)
ProcessingTime no ExifTool (the clock time in seconds taken by ExifTool to extract information from this file. Not generated unless specifically requested or the API RequestAll option is set. Requires Time::HiRes)
RAFVersion no File (RAF file version number)
ResourceForkSize no System (size of the file's resource fork if it contains data. Mac OS only. If this tag is generated the ExtractEmbedded option may be used to extract resource-fork information as a sub-document. When writing, the resource fork is preserved by default, but it may be deleted with -rsrc:all= on the command line)
SphericalVideoXML yes! GSpherical (the SphericalVideoXML block from MP4/MOV videos. This tag is generated only if specifically requested)
SymLink yes! - (this write-only tag is used to create a symbolic link with the specified name to the source file. If the source file is edited, copied, renamed or moved in the same operation as writing SymLink, then the link is made to the updated file. The link uses an absolute path unless it is created in the current working directory. Valid only for file systems that support symbolic links. Note that subsequent editing of the file via the symbolic link by exiftool will cause the link to be replaced by the edited file without changing the original unless the -overwrite_original_in_place option is used)
TestName yes! - (this write-only tag may be used instead of FileName for dry-run tests of the file renaming feature. Writing this tag prints the old and new file names to the console, but does not affect the file itself)
ThumbnailImage no File (JPEG-format embedded thumbnail image)
Trailer yes! File (the full JPEG trailer data block. Extracted only if specifically requested or the API RequestAll option is set to 3 or higher)
Validate no ExifTool (generated only if specifically requested. Requesting this tag automatically enables the API Validate option, imposing additional validation checks when extracting metadata. Returns the number of errors, warnings and minor warnings encountered. Note that the Validate feature focuses mainly on validation of EXIF/TIFF metadata)
'0 0 0' = OK
Warning no ExifTool (returns warnings that may have occurred while reading or writing a file. Use the -a or Duplicates option to see all warnings if more than one occurred. Minor warnings may be ignored with the -m or IgnoreMinorErrors option. Minor warnings with a capital "M" in the "[Minor]" designation indicate that the processing is affected by ignoring the warning)
XML no XML (the XML data block, extracted for some file types)
XMP yes! XMP (the XMP data block, but note that extended XMP in JPEG images may be split into multiple blocks. This tag is generated only if specifically requested)
XResolution no File (the horizontal pixel resolution)
YResolution no File (the vertical pixel resolution)
ZoneIdentifier yes! System (Windows only. Existence indicates that the file has a Zone.Identifier alternate data stream, which is used by some Windows browsers to mark downloaded files as possibly unsafe to run. May be deleted to remove this stream. Requires Win32API::File)

(This document generated automatically by Image::ExifTool::BuildTagLookup)
Last revised Mar 19, 2024

<-- ExifTool Tag Names