Image Formats · Guide
How to Make Any Photo Ultra HDR (Google Photos, Samsung, iPhone, Lightroom, or Online)
23 min read · September 20, 2026 · Mochify Engineering Team
You can convert an ordinary photo to Ultra HDR in about a minute, and the result is still a normal JPEG that opens everywhere: on an HDR screen the highlights push past white, and on any other screen you see the same picture you started with. The catch is that "convert a photo to HDR" means four different things on the internet, and three of them will hand you the wrong file. This guide sorts out which HDR you actually want, explains what a conversion does and does not do to your picture, and then walks through the real steps on Google Photos, Samsung and Xiaomi phones, iPhone, Lightroom, and an online converter, finishing with where the result will and will not display once you post it.
Which "HDR" you mean (and which results to ignore)
The HDR photo you want is an Ultra HDR (gain map) image: a standard JPEG with a small extra layer that tells an HDR display how much brighter each region may go. If you search "convert SDR to HDR" or "JPG to HDR converter", most of what ranks is something else, and it pays to recognize the three impostors before you upload anything.
Video converters. Topaz, Wondershare, UniFab, VanceAI and the AI-upscaling crowd own the phrase "SDR to HDR". They take video and output HDR10 or Dolby Vision clips. Useful if you have footage; useless for a photo.
Radiance .hdr file converters. Convertio, ChangeMyFile, AnyConv, Vertopal and the other convert-anything sites will happily turn a JPG into an "HDR" file. The HDR they mean is the 1980s Radiance RGBE format used as an environment map for 3D lighting in Blender and Maya, and ChangeMyFile's own page says so. Your phone cannot open it, Instagram will not take it, and it does not add brightness to anything. If a tool offers .hdr as the output extension, you are on the wrong page.
"HDR filter" apps. Photo editors have sold an "HDR effect" for fifteen years: crunched shadows, glowing edges, saturated skies. That is a look, applied to a normal image, and it displays identically on every screen. It has nothing to do with the format Google, Apple and Meta now call HDR photos, which is about a display showing real extra brightness. Some online tools blur the two, exporting a "tone-mapped JPG" and calling it HDR. It is not.
The real thing is defined by ISO 21496-1:2025, the gain map standard published in July 2025 and referenced by Android's Ultra HDR format, Apple's Adaptive HDR and Adobe Camera Raw. In plain terms: one file, two renditions. The base image is the normal photo. The gain map is a low-resolution brightness multiplier stored alongside it. A viewer that understands the map lifts the highlights; a viewer that does not simply shows the base. Our companion guide on why HDR photos look flat when shared covers the mechanism in depth. Here we care about making one.
What converting a photo to HDR actually does
Converting an SDR photo to Ultra HDR means computing a gain map for a picture that never had one, and that map is a plausible guess, not recovered data. This is the point every converter's marketing dances around, so it is worth being precise about it before you press the button.
When a phone captures an HDR photo, the map comes from the sensor: the camera saw highlights brighter than white, kept them, and stored the ratio between that scene and the standard-range picture. Apple's cameras have embedded gain maps since 2020, and iPhone HDR captures carry a headroom value "greater than 1 and up to 8 depending on the scene content" according to Apple's own WWDC session on Adaptive HDR. Pixel phones have captured Ultra HDR by default since the Pixel 8. Those files already have real headroom. Converting them is pointless; the job is to keep the map through editing and sharing.
An old JPEG, a screenshot, a scan, a stock image or anything that has been through a website has no such data. Whatever was brighter than white is gone; the pixels are clipped at 255. A converter, whether it is Google Photos, an AI tool or Mochify, has to infer where extra brightness would have been from what survived: the smooth bright regions, the local contrast, the shape of the highlights. Google describes its own machine-learning model in exactly these terms in its HDR photo editing research post: it "can produce a Gain Map given only an SDR image as input". Given only an SDR image is the operative phrase. The result looks convincing on an HDR screen. It is an effect, not measurement.
Three practical consequences follow. First, generated headroom is modest by design: Mochify's synthesized map, for example, targets about 1.5 stops above roughly three-quarters brightness, ramped in smoothly, while a real capture can carry several times that. Second, conversion cannot fix a blown sky or a black shadow; it lifts what is there and invents nothing new. Third, because the base image is untouched and the map rides alongside it, the file stays a standard JPEG. Android's Ultra HDR specification puts it plainly: "Legacy readers that don't support the new format read and display the conventional low dynamic range image" (Android Ultra HDR image format v1.1). Nothing you do here breaks the photo for anyone.
Google Photos on Android: the Ultra HDR slider
The fastest way to convert a photo to Ultra HDR on an Android phone is the Ultra HDR slider in the Google Photos editor, which works on existing photos, including ones taken years ago on a camera that never heard of gain maps. Google's help page gives the path in one line: open Google Photos, select a photo, tap Edit, then "use the Ultra HDR slider in the editor" (Google Photos Help: HDR photos). The slider sits with the other adjustment tools, alongside Brightness and Contrast, and you set its strength, so you choose how much headroom to invent. Save, and the photo is an Ultra HDR JPEG in your library and in your backup.
Two things Google's documentation says that people miss:
- The slider does not change your screen; the screen changes the slider. On Android 16 and later there is a system setting, Settings, then Display & touch, then Enhanced HDR brightness, with its own on/off and intensity. If that is off, Google says "the Ultra HDR slider still shows up in the Google Photos app. It won't change the photo's appearance." Google's page does not say whether the map is still saved in that state, so the safe move is to turn the setting on before you judge the result. If you are not sure the phone renders HDR at all, open the side-by-side check in the phone's browser; it answers that in one glance.
- Some edits will quietly save an SDR copy. Google Photos now preserves HDR through most edits, including Magic Eraser and Unblur, but its help page lists the exceptions: "certain filters", "incompatible formats", HDR output settings turned off, and Markup edits with the pen or highlighter. Do the Ultra HDR step last, and skip Markup on a photo you want to stay HDR.
The feature reached Android phones in April 2025 and, per Google's June 2025 update, edited HDR photos now keep their full range. Whether the slider has shipped in Google Photos for iPhone is something Google's help pages do not confirm as of September 2026, so treat it as an Android route.
Because Google Photos ships on Samsung, Xiaomi, OnePlus and every other Android phone, this route is not Pixel-only. If the slider is missing on your phone, update the app first; if it is still missing, the online route below does the same job from any browser.
Samsung and Xiaomi: capture is HDR, the toggles are for display
Samsung and Xiaomi phones capture HDR photos natively on recent models, but neither ships a built-in tool that converts an existing SDR photo to HDR; the HDR switches in their settings control how HDR photos are displayed, not whether a photo has a gain map. This trips a lot of people up, because the settings are named as if they add HDR.
Samsung Super HDR. Galaxy phones from the S24 series onward capture HDR stills and can share them to Instagram with the effect intact. The Super HDR switch is a display control. Samsung's own support page for One UI 7 puts it under the system settings, not the Gallery: "Open the Settings app on your smartphone (not the Gallery app). Tap on Advanced Features. Find and turn on the option Super HDR." On earlier One UI versions the same toggle lived inside the Gallery's own settings. Samsung's regional support note is explicit that if a file "lack[s] HDR data, enabling Super HDR won't affect display". So: Super HDR shows the headroom your camera already captured, everywhere from Gallery to Instagram, and turning it off is the fix when HDR content is blindingly bright at night, which is why One UI 7 made it system-wide. It does not convert anything.
Xiaomi Pro HDR display. Same shape. Xiaomi's support FAQ for the 14 Ultra explains that "the Pro HDR display is only supported in the Gallery APP" and that you enable it in the Gallery app's settings. Photos from the native camera carry the data; the toggle lets the Gallery render it. Third-party apps may not.
To convert an old photo on either brand, use the Google Photos slider above (Google Photos runs fine on Galaxy and Xiaomi devices) or an online converter. Once you have an Ultra HDR JPEG, the Super HDR or Pro HDR display setting is what makes it glow on the phone itself, and the quickest way to confirm the toggle is doing its job is the SDR versus Ultra HDR comparison in the phone's browser: brighter on the right means the phone is rendering the map.
iPhone: HDR by default, no converter for old photos
An iPhone captures HDR photos automatically and there is no built-in way to convert an older SDR photo to HDR in the Photos app, so the route for old pictures is a desktop editor or an online converter. Apple's current camera guide states that "By default, iPhone takes photos in HDR (for the rear camera and the front camera) when it's most effective", and a manual HDR switch exists only on the iPhone 11 models, iPhone SE (2nd generation) and iPhone 12 (Apple Support: Adjust HDR camera settings). Newer iPhones decide for you.
Under the hood, Apple's format is called Adaptive HDR. With iOS 18 Apple moved its cameras to gain maps that follow the same ISO standard as Android's Ultra HDR, and its engineers confirmed that "JPEG files also fully support Adaptive HDR" alongside HEIF, so an iPhone photo exported as JPEG can keep its headroom. iOS 18 and macOS 15 also taught Messages, Quick Look, Preview and Photos to display gain-map images, which is why an HDR photo texted between iPhones looks right. Safari 26 renders HDR images too, so the comparison on the converter page works as a display check on an iPhone running iOS 26.
Applying Apple's HDR effect to a picture that does not have one is exposed to developers as an API, not to you as a menu item. In practice that leaves three options for an old photo on an iPhone: open it in Lightroom mobile and use HDR Output (next section), upload it to an online converter from Safari, or move it to an Android device and use Google Photos. Note the format trap on the way out: iPhone photos are usually .HEIC. Mochify's converter accepts HEIC directly, and if you only need a plain JPEG copy, the HEIC to JPG converter is the right page; the pro-camera .HIF files from Canon, Sony and Fujifilm bodies are a different lane with their own HIF to JPG guide.
Lightroom and Camera Raw: HDR Output
Lightroom can turn an SDR photo into an HDR-output file with a gain map, but read the export list for the version you own, because Adobe documents different formats for Lightroom Classic and for Lightroom on mobile and desktop. In both, the model is the same: edit in HDR mode, then export with HDR output enabled. Adobe's Camera Raw documentation describes the file it writes as one that "combines both SDR and HDR renditions within a single image and interpolates between the two dynamically at display time", citing ISO 21496-1 (Adobe: Gain map in Camera Raw).
Lightroom (mobile and desktop, the cloud version). Open the photo, edit in HDR mode, then Share, Export as, and pick the file type. Adobe's export page lists JPG, AVIF, DNG and TIF, and describes JPG as a "widely compatible format that stores HDR data using gain map metadata", with the caveat that it "may display as SDR in non-compatible applications". That is the file you want for Instagram, Google Photos or a website.
Lightroom Classic. Press the HDR button in Develop, Basics (it needs Process Version 3 or later), then File, Export and check Enable HDR Output. Adobe's Classic page lists AVIF, JPEG XL, TIFF, PSD and PNG as the HDR-capable formats and recommends "AVIF or JPEG XL for sharing and web applications". If you need a gain-map JPEG from Classic, check the export dialog in your build rather than assuming it is there; Adobe's current documentation for Classic does not list it, while the mobile and desktop app's does.
One honesty note that applies here as much as to any converter: Lightroom's HDR mode gives you sliders that reach above white, and on a raw file with real highlight data that is recovery. On a JPEG that was clipped at capture, it is the same invention as everywhere else, just with you holding the brush.
Online converters: three checks before you upload
An online converter is the only route that works from any device, any browser and any file, but the category is full of tools that produce the wrong HDR, so run three checks before you trust one with a photo you care about. The checks take thirty seconds and rule out most of what ranks.
- Does it output an Ultra HDR JPEG, with a gain map? Look for the words "gain map", "Ultra HDR" or "ISO 21496-1" and a
.jpgoutput. If the output extension is.hdr,.exror.pic, it is a 3D-lighting format converter. If it only mentions "HDR effect", "filter" or "tone-mapped", it is a look, not a format. - Does it say what it invents? A tool that claims to "recover" or "reconstruct" the dynamic range of a single JPEG is describing synthesis in flattering words. The honest ones tell you the headroom is generated and roughly how much. Prefer those; you will understand what you are looking at when the result is brighter than you expected.
- What happens to your file? Photos leave your device for any server-side tool. Read the retention line. A tool that processes in memory and discards the file is a different proposition from one that stores uploads, and a tool that says nothing has answered the question.
Mochify's SDR to HDR converter passes all three by design, and the next section walks through it.
Mochify Workflow: convert a photo to Ultra HDR
Mochify's SDR to HDR page turns any supported photo into an Ultra HDR JPEG in one drop: it keeps a gain map that is already in the file and generates one when there is none, and it tells you which of the two it did. The page is a fixed-purpose converter, so there is nothing to configure beyond a Strip EXIF toggle that appears after upload.
Sort your sources.
Recent iPhone and Android captures usually carry a map already; camera JPEGs, older phone photos, scans, screenshots and anything downloaded from a website usually do not. You do not need to know which; the converter checks each file.
Finish destructive edits first.
Crop, straighten, brightness, sharpening, background removal and shadow work belong before this step, on the normal image. Resize, crop and rotate are safe on the HDR path and carry an existing map through untouched, but brightness, clarity, background removal and shadow generation switch the HDR path off and return a clean standard-range file, because the base image they change no longer matches the map.
Drop the files.
The page accepts JPG, JPEG, PNG, WebP, AVIF, HEIC, HEIF and HIF, up to 3 files at 20MB each without an account. Metadata, including GPS, is stripped by default; if you need camera data kept, turn the Strip EXIF toggle off before converting. The gain map survives either way.
Read which lane each file took.
A file that already carried a gain map is re-encoded verbatim; nothing is recomputed, because a derived map is measurably worse than the one the sensor produced. A plain SDR file gets a synthesized map: a smooth ramp that starts around three-quarters brightness and climbs to about 1.5 stops, tempered by local contrast so a bright sky lifts differently from a white shirt. Generated headroom is invented, not recovered, and the page says so rather than pretending otherwise. If encoding a map would cost more than it is worth for a particular image, you get the plain file back.
Check your own screen with the side-by-side.
The page shows the same photo as SDR and Ultra HDR directly under the uploader. If the two look identical, your screen or browser is not rendering HDR, and the photo you just made will look identical too, until you open it somewhere that does.
Only JPG output carries the map. Ask for JXL, AVIF, WebP or PNG and you get a standard-range file, since none of those can carry an Ultra HDR gain map on this path. The encoder is Google's jpegli throughout, which is what keeps the extra layer close to free: the map typically adds a low single-digit percentage to file size. The jpegli guide explains why that matters for every JPEG you ship.
Same thing from the API. One parameter on POST /v1/squish: hdr=true preserves an existing map only, hdr=generate preserves and synthesizes. The X-Mochify-HDR response header reads true, generated or false, so a script can log which lane each file took. Leave the parameter off and an existing map is dropped: the output is a plain SDR JPEG and the header reads false. The mochify command-line tool (1.6.0 and later) has the same two lanes as --hdr: bare --hdr preserves an existing map and does nothing to an SDR photo, --hdr generate also synthesizes one, and both need -t jpg; mochify photo.jpg -t jpg --hdr generate is the whole command. The Chrome extension runs the same HDR path, so a photo on a web page can take the same route as the page.
curl -X POST "https://api.mochify.app/v1/squish?type=jpg&hdr=generate" \
-H "Authorization: Bearer $MOCHIFY_KEY" \
--data-binary @photo.jpg \
-D headers.txt -o photo-hdr.jpg
grep X-Mochify-HDR headers.txt
# X-Mochify-HDR: generatedOn the HDR path only quality reaches the encoder; optimizeForWeb is accepted but has no effect. The API documentation has the full parameter list.
Will it look right where you post it?
An Ultra HDR photo only glows where the viewer renders gain maps, and as of September 2026 that means Google Photos, Apple Photos, Samsung Gallery, Instagram and Threads feed posts, Chromium browsers and Safari 26, but not Facebook, Flickr, Firefox, Instagram Stories or most website builders. Everywhere else you get the base image, which is the photo you started with, so nothing is lost; it just is not HDR there.
Where it works. Android 14 and later display Ultra HDR system-wide; iOS 18 and macOS 15 render gain maps in Photos, Messages, Quick Look and Preview. Instagram and Threads have supported HDR photos in feed posts since March 2024, per Meta's engineering announcement, when posted from the phone app; Stories do not show HDR and uploads from a desktop browser are unreliable. Google Messages keeps the map over RCS. Chrome and the other Chromium browsers display gain-map JPEGs, and WebKit added HDR image support in Safari 26.0 for iOS, iPadOS and macOS 26 (WebKit blog).
Where it does not. Facebook does not support HDR photos. Flickr converts uploads to 8-bit JPEG. Firefox has no gain-map support; the request has sat open since 2023. Squarespace strips the gain map on upload, as Adobe's Lightroom engineering lead confirmed in Squarespace's own forum, and other builders and CDNs that re-encode images are likely to do the same. For WhatsApp, Telegram, X, Pinterest and the rest, we have found no reliable published behavior, so send yourself a test image before you rely on it.
When it looks wrong. Two opposite complaints come up constantly, and they have opposite causes. "It looks flat and dull" means the viewer is showing the base image: wrong app, wrong browser, or a pipeline stripped the map. Rule out the screen first with the side-by-side check, then work through the rest; our guide to HDR photos that look flat when shared walks through each case. "It is blindingly bright" means the viewer is rendering the map on a screen turned up at night. Samsung answered that with the system-wide Super HDR switch in One UI 7, and Pixel phones on Android 16 have the Enhanced HDR brightness slider; both tame every app at once, including Instagram. If you are the one posting, remember a generated map is a choice: a smaller slider value in Google Photos, or Mochify's deliberately restrained 1.5 stops, reads as depth rather than glare on a phone in a dark room.
Ready to try it on a photo of your own? Convert a photo to Ultra HDR and use the side-by-side under the uploader to see whether your screen shows the difference.
Cheat Sheet: which route converts what
| Route | Converts an old SDR photo? | What you get | Notes |
|---|---|---|---|
| Google Photos (Android): Edit, Ultra HDR slider | Yes, strength you choose | Ultra HDR JPEG in your library | Works on any photo; keeps HDR through most edits; Markup and some filters save SDR |
| Samsung Super HDR (Settings, Advanced features) | No, display only | Renders existing HDR photos brighter | Camera captures HDR from the S24 series; switch off to stop glare at night |
| Xiaomi Pro HDR display (Gallery settings) | No, display only | Renders existing HDR photos in Gallery | Third-party apps may not render it |
| iPhone Photos app | No | HDR at capture by default | Manual switch only on iPhone 11, SE (2nd gen), 12; use Lightroom or an online tool for old photos |
| Lightroom (mobile/desktop cloud): HDR mode, Export, JPG | Yes | Gain-map JPG (also AVIF, TIF, DNG) | Adobe describes JPG as the compatible option |
| Lightroom Classic: Develop HDR, Export, Enable HDR Output | Yes | AVIF, JPEG XL, TIFF, PSD, PNG per Adobe's page | Check your build for JPEG; Adobe recommends AVIF or JXL for web |
| Mochify SDR to HDR converter | Yes, generated (about 1.5 stops) | Ultra HDR JPEG; existing maps preserved verbatim | 3 files / 20MB without an account; JPG output only; API hdr=generate; also on the CLI (--hdr generate with -t jpg) and the Chrome extension; back to SDR: JPG output with HDR off |
Generic "JPG to HDR" converter (.hdr output) | No | Radiance RGBE file for 3D lighting | Wrong HDR; phones and social apps cannot use it |
| "HDR filter" apps | No | A tone-mapped SDR image | A look, not a format; identical on every screen |
If your photo is already on your phone, the Google Photos slider is the shortest path. If it is anywhere else, or you have a batch, Mochify's SDR to HDR converter takes three files at a time without an account and tells you which lane each one took.
FAQ
Can you convert an SDR photo to HDR?
Yes. A converter computes a gain map, a small brightness multiplier stored alongside the normal image, and writes both into a standard JPEG called Ultra HDR. On an HDR display the highlights go brighter than white; on any other screen you see the original photo. Google Photos on Android, Lightroom's HDR Output and online converters such as Mochify's all do this in under a minute.
Does converting a photo to HDR recover detail that was lost?
No. If the original was clipped at capture, the detail is gone, and no tool recovers it. Conversion infers where extra brightness plausibly belongs from the highlights that survived and writes a modest map, which is why honest converters describe generated headroom as invented rather than restored. Only a photo captured in HDR, or edited from a raw file with real highlight data, carries measured headroom.
Is the Google Photos Ultra HDR slider real HDR?
It writes a real, standards-compliant gain map into the JPEG, so the file is a genuine Ultra HDR image that HDR screens and apps will render. What it is not is recovered data: the slider synthesizes headroom for a photo that never had any, at the strength you choose. That is exactly what any SDR-to-HDR conversion does.
How do I turn an Ultra HDR photo back into a normal JPEG?
On Mochify, run the file through as JPG without asking for HDR and it comes back as a plain standard-range JPEG: the gain map is dropped unless you request the HDR path, and the X-Mochify-HDR response header reads false so you can confirm it. Any output other than JPG comes back standard-range too, so converting the file to PNG or WebP drops the map, and so does any brightness, clarity, background removal or shadow edit, which return a clean SDR file. Google Photos saves an SDR copy if you apply certain filters or Markup edits. Keep the original if you might want the HDR version later.
Why does my HDR photo look too bright on Instagram, and can I turn HDR off?
Instagram renders gain maps in feed posts, so on an HDR phone at night a strong map can look like glare. As a viewer, turn down HDR system-wide: on Galaxy phones with One UI 7, Settings, Advanced features, Super HDR; on Pixels running Android 16, Settings, Display & touch, Enhanced HDR brightness. As the poster, use a gentler map: a lower slider value in Google Photos, or a converter that caps generated headroom at around 1.5 stops.
How do I know if my screen shows HDR photos?
Open the side-by-side comparison on Mochify's converter page, which shows the same photo as a standard JPEG and as an Ultra HDR JPEG. If the right-hand image is clearly brighter in the highlights, your screen and browser render gain maps. If both look the same, you are seeing the standard-range version: a non-HDR display, a browser without gain-map support such as Firefox, or a phone with its HDR display setting turned off.
Does JPEG support HDR?
Yes, since Ultra HDR. The gain map rides inside an ordinary JPEG next to the normal image, so the file opens everywhere and only HDR-aware viewers use the extra layer. That is different from AVIF and JPEG XL, which can store HDR in the pixels themselves, and from WebP and PNG, which cannot carry an Ultra HDR gain map in common use. The short version, including how to spot a converter that gives you the wrong kind of HDR file, is in Does JPEG support HDR?.
Does a gain map make the file much bigger?
No. The map is stored at a fraction of the image's resolution and compressed hard; Android's specification recommends storing it at a quarter of the width and height. On Mochify, where the whole pipeline uses the jpegli encoder, the map typically adds a low single-digit percentage to the file size.
Ready to try it on a photo of your own?
Convert a photo to Ultra HDR and use the side-by-side under the uploader to see whether your screen shows the difference.