Guide

What is Ultra HDR? The gain map, explained

Recent Android phones hide a second image inside every photo, and most editing tools destroy it without a word. Here is how Ultra HDR works and how to keep it.

The short answer

An Ultra HDR photo is a normal JPG carrying a hidden passenger: a gain map, a second small image that tells HDR screens how much brighter each region of the photo should glow. On an HDR display, sunsets, lamps, and reflections get genuinely brighter, closer to how the scene actually looked. On an older screen or app, the file behaves like any other JPG.

That backward compatibility is the format's clever trick, and its trap: because the file reads as a plain JPG, most tools that touch it, editors, converters, resizers, quietly write a new JPG without the gain map. Nothing warns you. The photo just loses its pop, permanently.

How a gain map works

Inside one .jpg file there are effectively two pictures. The first is the base image, a standard (SDR) rendition that anything can display. The second is the gain map: a low-resolution brightness recipe that says, per region, how far beyond normal white the display should push. An HDR screen combines the two live; everything else ignores the map and shows the base image.

This design is why Ultra HDR spread so fast compared to earlier HDR photo attempts: no one had to change anything to keep displaying the files. It has since been standardized internationally, and support keeps widening across browsers, galleries, and photo services.

Where Ultra HDR photos come from

Ultra HDR shipped with Android 14. Pixel phones capture it by default since the Pixel 8, recent Samsung Galaxy flagships do the same, and other manufacturers are following. If your phone is a recent Android flagship, most of your camera roll is probably Ultra HDR already; you never opted in, and the file names give no hint.

Where the HDR silently dies

The gain map survives only if a tool knows to carry it. In practice it is destroyed by:

  • Most editors and converters. They decode the base JPG, process it, and encode a new file. The gain map never makes the trip.
  • Metadata stripping. The gain map rides along with the photo's metadata and secondary payload, so stripping removes it. This is arguably correct behavior (strip means strip), but it is worth knowing.
  • Some messaging apps and upload pipelines that recompress images on the way through.
  • Screenshots of the photo, which capture only what your screen showed.

None of these announce the loss. The output opens fine, looks normal, and simply is not HDR anymore.

Processing photos without losing HDR

Imgport treats the gain map as part of the photo. On Android 14 and newer, Ultra HDR survives every JPG conversion, resize, and compression, and it is transformed in lockstep with the image: a rotated photo gets its gain map baked upright, a resized photo gets a matching scaled map. Keeping the original metadata (a Pro option) preserves HDR too.

The honest boundaries: PNG and WebP outputs are standard (SDR) because those formats have no gain map container. Strip metadata removes the gain map along with everything else. Watermarked photos drop it deliberately, because the map describes the original pixels and would tint the mark. And on devices below Android 14, outputs are the standard rendition, with a note on the Configure screen instead of a silent downgrade: "Some of these photos have HDR brightness. Keeping it needs Android 14 or newer, so they'll save as standard photos on this device."

If keeping HDR matters for a batch, the rule of thumb is simple: stay in JPG, skip the strip and watermark operations for those photos, and let the app carry the map.

Should you care?

If you view photos on a recent phone, yes, more than you would guess: the difference on an HDR screen is not subtle, and it is exactly the kind of quality that vanishes in routine file handling. If your photos are headed for print or older screens, the SDR rendition is all anyone will see anyway, and there is nothing to protect. Either way, it is better to lose the gain map by choice than by accident. For the wider format picture, see the format guide.

Ultra HDR, answered

The questions people ask when a photo suddenly loses its glow.

A normal JPG with a second, hidden image inside it: a gain map that tells HDR screens how much brighter each part of the photo should glow. On an HDR display the highlights get genuinely brighter; on everything else the file behaves like a plain JPG. That backward compatibility is the clever part, and also why the HDR half is so easy to destroy without noticing.

Ultra HDR arrived with Android 14. Google Pixel phones since the Pixel 8 capture it by default, recent Samsung Galaxy flagships do too, and other manufacturers are adopting it. If you have a recent Android flagship, there is a good chance most of your photos are already Ultra HDR without you having done anything.

Because the tool re-encoded the JPG and threw away the gain map. Since an Ultra HDR file reads as a perfectly normal JPG, most editors and converters do not know the gain map exists; they process the base image and write a new file without it. The photo still looks fine, but the HDR brightness is gone for good, with no warning.

No. PNG and WebP have no container for a gain map, so those outputs are the standard (SDR) version of the photo. If keeping HDR matters, stay in JPG. Imgport is explicit about this boundary instead of dropping the brightness silently.

You cannot tell from the file name; it is still a .jpg. The reliable tell is viewing it in an app that supports HDR on an HDR screen: Google Photos, for example, shows the extra brightness and typically labels the photo HDR. Side by side with an edited copy, the difference in highlights is usually obvious.

Convert, resize, and compress without losing HDR.

Ultra HDR survives every JPG operation on Android 14 and newer. Fully offline, free for everyday use.