AVIF metadata works the same way as in HEIC: the EXIF block and the XMP packet are separate items inside the file's meta box, and the color profile is a property of the image item. An AVIF file is an AV1 intra frame stored in the HEIF container, defined by the AV1 Image File Format specification (version 1.0.0, 19 February 2019, from the Alliance for Open Media) and constrained by the MIAF profile.
AVIF and HEIC side by side
| Property | AVIF | HEIC |
|---|---|---|
| Codec | AV1 | HEVC (H.265) |
| Major brand | avif | heic |
| Container | HEIF (ISO/IEC 23008-12) | HEIF (ISO/IEC 23008-12) |
| Typical source | Web export, CDN, converter | iPhone camera |
| EXIF and XMP | Exif item, mime item | Exif item, mime item |
The practical difference for metadata is where files come from. A HEIC is usually an original straight from a phone, with full camera EXIF and GPS. An AVIF is almost always a conversion, so its metadata is whatever the converter decided to copy, and it often describes a different image than the one in the file.
Where AVIF metadata sits
An 800x450 AVIF made by ImageMagick 6.9.12 from a Canon EOS RP JPEG has three items. Its ftyp lists avif, with mif1 and miaf as compatible brands:
$ exiftool -v2 photo.avif | grep -E 'Item [0-9]+: Type'
| | Item 1: Type=av01 Name= ContentType=
| | Item 2: Type=Exif Name= ContentType=
| | Item 3: Type=mime Name= ContentType=application/rdf+xmlItem 1 is the AV1 image. Item 2 is the EXIF, item 3 the XMP, and the sRGB ICC profile sits in a colr property. IPTC has no place in the format, and the IPTC fields of the source JPEG were dropped. The C2PA specification uses the same uuid box for AVIF as for HEIF, placed after ftyp and before mdat.
Stale values and dead weight
Converters copy metadata blocks wholesale, without updating them:
$ exiftool -G1 -s -ImageSize -ExifImageWidth -XMP-dc:Format photo.avif
[Composite] ImageSize : 800x450
[ExifIFD] ExifImageWidth : 3840
[XMP-dc] Format : image/jpeg
$ exiftool -all= photo.avif
Warning: ICC_Profile deleted. Image colors may be affected - photo.avif
1 image files updatedThe EXIF still claims a 3840-pixel width and the XMP still says JPEG. Worse, the file went from 72,581 bytes to 4,718 after the strip: more than 90% of this AVIF was metadata, mostly a 42 KB GIMP XMP packet, 15 KB of Canon maker notes and a 9 KB ICC profile. On a small web image that is the opposite of what AVIF is chosen for.
ExifTool leaves the Exif and XMP item entries in place with zero length after -all=, and ImageMagick still decoded the stripped file. In any converted image, trust the real dimensions over the EXIF image width and height.
Encoders decide what is kept
libavif's avifenc copies EXIF, XMP and ICC from the input by default. It has flags for each:
--ignore-exif,--ignore-xmpand--ignore-icc(or--ignore-profile) to skip a block--exif FILE,--xmp FILEand--icc FILEto supply your own
ImageMagick copies everything it can map. Image CDNs and build plugins vary, so check one output file with ExifTool before trusting a pipeline, especially for GPS.
Working with AVIF files
Our tools do not accept AVIF uploads. ExifTool reads and writes AVIF EXIF and XMP like any HEIF file:
exiftool -gps:all= -XMP-dc:Rights="© 2026 Jane Doe" photo.avifBrowser support is broad: per MDN, Chrome 85, Edge 121, Firefox 93 and Safari 16.1 display AVIF. Windows needs the AV1 Video Extension from the Microsoft Store to open AVIF.
Converting AVIF to JPEG to use a JPEG-only tool like our metadata editor is possible, but you give up transparency (JPEG has no alpha), bit depths above 8, and some quality from re-encoding. Since AVIF is mostly a delivery format, the better move is to fix metadata on the original JPEG or TIFF, then encode the AVIF from it.