How to share HDR photos on Instagram or Threads
Many of you have asked how you can share HDR photos like I do on my Instagram (IG) or Threads posts. If you aren’t familiar, I hear comments like this almost daily from people who’ve seen a good HDR display for the first time:
“I finally upgraded (to an HDR-capable iPhone), and holy s***, now I see what you’re talking about!“ – Hamid S
The vast majority (80%+) of people viewing IG will see your images on HDR-capable display because most people view IG on smart phones, and most phones since 2020 have great HDR displays. This gives you a way to share much more life-like images which show the full color and dynamic range from your RAW files. In this tutorial, you’ll learn the exact workflow using Web Sharp Pro (WSP) to get consistently great results on IG.
At the same time, you may or may not have an HDR computer monitor. If you use an Apple computer, it is very likely you have support (the M1 and later MacBook Pros have outstanding HDR displays). And there are many other great HDR monitors (see my recommendations), or you can use most TVs for a great HDR monitor. But even if that isn’t your scenario, you can create enhanced HDR images for IG even if you do not have an HDR monitor. To demonstrate that, this HDR export was created and exported from a computer using a standard monitor with no HDR support.
There are many potential ways to use WSP to prepare images for HDR display on IG. You can work from an SDR image, from an HDR image, or even provide your own SDR and HDR pair (you can completely customize the gain map). I’ll share more on these workflows in the near future (the current version is functionally a full “v6” preview and I’ll be releasing many more tutorials soon now that all the key features are ready).
First, we’ll just cover the workflow starting from an SDR image. This workflow which is great if you want to both print and support HDR display, work from images already edited for SDR, or just prefer SDR editing workflows. This makes it a simple but powerful way to enhance your images in just a few seconds.
And in this second video, you’ll learn how to completely control both the HDR and SDR rendition of the gain map. You can simply export your images from Lightroom Classic as smart object layers and set up a 1-click solution in Web Sharp Pro. You can also use any approach you like if you create a 32-bit HDR with the bottom layer or bottom group named SDR (the bottom layer should use only the SDR range and will be set as the base image of the gain map).
It is very important to control the SDR base image, as it directly impacts the quality of any viewer who does not have the full HDR headroom encoded in your image. Some viewers will not have any HDR support on Instagram (old phones, in low power mode, viewing in bright ambient light, clicked a link on an Android device, etc). And even though most viewers have HDR support on their phone, it is typically 1.5-3 stops of HDR headroom (based on device, brightness setting, and ambient light). So the HDR they see will often use your SDR base image of your gain map to some degree, in order to adapt to the limits of the viewer’s device. Any of the workflows supported by Web Sharp Pro give you complete control of the SDR experience to properly ensure everyone sees the best possible version of your art, no matter what capabilities the viewer has.
Workflow to get consistent HDR results on IG:
The workflow for consistently great HDR photos on IG is:
- Export the image through WSP
- Select any of the included “Instagram” templates in WSP. Not only does this ensure the correct size / cropping, it also enables encoding specifically required for HDR support on IG (there are many valid HDR encodings which will not show as HDR on IG, so this is very important).
- Settings / File / HDR Format should be set to “JPG (w/gain map)“. *
- If your image is not already an HDR (32-bit) image, enable Settings / File / “enhance SDR to HDR“.
- If you are enhancing an SDR, it is ideal to also enable Settings / File / “leave image open”. This allows you to customize the HDR results by painting on the layer mask (or adjusting the top group’s opacity) before clicking the green “SAVE” button in WSP to complete the export.
- If you wish to demonstrate the HDR benefit, you may optionally enable the option to add SDR / HDR labels.
- Upload the exported JPG via the IG website via computer browser
- You may alternatively upload from an Android phone, but DO NOT upload via an iPhone. You can safely view HDR on iPhone, but images uploaded on an iPhone currently get transcoded to a low quality image. These sort of device-specific behaviors are likely to go away as the ISO gain map format is widely adopted (at the moment we have a mix of standards, which creates these sort of issues at times).
- Click Create / Post, when drag and drop the images you exported from WSP. You may upload multiple images in the same post (I do this for split HDR panoramas).
- Note that you will likely not see HDR in the preview window, but the result after upload will show as HDR if you use a supporting browser.
- In the first IG upload preview, click the icon at bottom left and change from the default 1:1 crop to “original“. This is mandatory on every new upload, as the cropping does not support HDR at this time.
- Note: Avoid mixing images sizes in the same post. Any image which is not the same dimensions as the first image will be cropped and therefore lose HDR (even changing the height by 1 pixel would trigger this). As a result, only the first image and those with the same dimensions would show as HDR in a single carousel post (the first image is always safe in this scenario).
As long as you take care to follow these key steps (the bold items), you will have an HDR result on IG. See the troubleshooting steps below if you have any questions.
* The JPG (w/gain map) format is supported on Windows and Apple Silicon. If you have an old Intel Mac (anything before M1), you can export a gain map using the “via ACR” workflow for sharing in general, but you likely will not see HDR results if you upload that image format to IG. You may alternatively upload a simple AVIF from some devices and will see HDR, but I strongly recommend you avoid that option. When you upload an image without a gain map, the SDR base image will be auto-generated and the results are generally of low quality. This will affect the quality of experience for most viewers. Most phones have 1.5-3 stops of HDR headroom and will often need adaptation from your full HDR. And there is no HDR support on old devices, when viewing outdoors, low power mode, etc. The base SDR image is very important if you want to ensure everyone sees a great result. On the phone version of Lightroom, you can also share directly to Instagram. When you do this, a JPG gain map is auto-generated uses a luminosity-only gain map (ie you won’t have control of the gain map, and there may be color errors as the HDR often needs a saturation boost and possibly hue correction when being generated from the SDR base image – this is similar to the automatic gain map generated when you capture an image on your phone and share it without editing). If you use these methods, you should expect that about 1/3rd of your audience sees some loss of quality and and another 1/3rd may see a low quality result. A full color gain map where you control the SDR is the only way to ensure everyone sees a great result.
Workflow to get consistent HDR results on Threads:
You can also share HDR on Threads, but devices supported for uploading are very different. iPhone and Pixel work for uploading. But computers do NOT work, and neither does the Samsung S24 (so not all Android are the same and I can only confirm that the Pixel 8 Pro will upload).
As with IG, all HDR capable devices (including computers and S24) appear to show HDR once uploaded on a supporting device.
The workflow is generally very similar to the IG workflow above. Just be sure to choose one of the included “Threads” templates.
==> IMPORTANT: To see successful HDR posts, you will either need WSP v6 (not yet available) or can set up a template as noted below.
- Like IG, Threads needs very specific encoding for success, so I need to submit an update to Adobe to enable this in my templates.
- However, you may get it to work with WSP v6 by manually creating your own template (under settings / quick export editor). You must include the name “Instagram” in the template (this is not a typo, the purpose is to trick WSP into using the required encoding used by both Instagram and Threads). I recommend you just set a fixed width of 2160 (just leave the height blank).
Other approaches:
The workflows above focus on Web Sharp Pro because (1) it works consistently, (2) allows full control of the base SDR to ensure optimal results on any display, and (3) optimizes the encoding of the gain map. I recognize that not everyone will prefer to use Photoshop or my software, so I want to acknowledge there are other options. However, all of them create significant quality concerns and I cannot recommend these approaches.
To quickly sum up other options which offer some level of support: AVIF can be uploaded from iPhone and Lightroom mobile has an option to share directly (it will clip >2.2 stops). Neither of these allow control of the SDR base image (LR has controls but they are ignored with this sharing option and exporting a gain map won’t work as Instagram does not accept the encoding used by Adobe that way, even though it is valid). Both also use a low quality map (will cause loss of sharpness in HDR and color errors).
See “great HDR a great SDR in the gain map” to see examples of why the gain map is so important to ensure great results. Both Instagram and Adobe have been constantly improving, and I would expect many of these concerns will be addressed in due time (though a gain map with full control of the SDR base image will always yield the best results).
None of this is a concern using the workflows above using Web Sharp Pro, but it is important to understand what can happen with other approaches. Even if the result looks ok on your device, it may not for others. So it is very important to soft proof results when first using a new platform to know what others will see.
Confirming success upload (how to confirm an image is HDR):
Given the specific requirements for uploading (no cropping, specific devices, etc) and the fact that the preview during upload may not show HDR, it is certainly very confusing. If you follow the workflow above (use WSP with the IG template and JPG w/gain map then upload from a computer using “original ratio”), it will work. But it’s certainly nice to have confidence you succeeded.
There are a couple quick ways to confirm success:
- View the IG website in an HDR capable browser (Chrome, Edge, Brave, or Opera) vs one that is not yet capable (FireFox, Safari) on a computer which supports HDR. If you see a much better result in “Chrome” than “FireFox”, it worked.
- Upload both the HDR and SDR version of the image. Then view it on a computer to see if the HDR version is clearly better. You can also check on a phone, but not if that phone was used to upload the image (as the IG app may show you the source image from cache rather show you the version which is live on IG).
- in the iOS version of the IG and Threads app, you may simply click and hold the long white bar at the bottom of the app to dim any HDR to SDR.
- This is not available in the Android app. In older versions of Android (or perhaps just Samsung OneUI), you’ll see HDR clipped to SDR when you click the three vertical bars icon to switch apps. However, Android 16 (or at least Pixel devices) always show HDR even when app switching, so you can’t test for HDR this way.
Troubleshooting:
See my HDR troubleshooting page for the most comprehensive and up to date info.
If you are able to see HDR on any device, the upload was successful. The following are good ways to confirm your upload worked (you must have HDR support on the device to test this however):
- Use WSP’s option to add labels and see if the “HDR” label shows in the post. Note that IG and Threads in some cases convert the gain map to an HDR and tone map down. So you may see true HDR, but if you can read the “HDR” label created by WSP then the upload was definitely accepted as an HDR.
- Open the same post in a browser that supports HDR (Chrome) and in one that does not (FireFox or Safari).
There are various potential scenarios where a specific device may not have HDR support.
You may not see HDR on your smart phone if any of the following apply:
- You are using an Android device and got to the image from a link. This appears to be a bug in the Android app. Just navigate to the same image manually in the app and you should see HDR.
- the phone is old or otherwise lacks HDR support. Most phones since late 2020 have support. You’ll need iOS 17+ or Android 14+.
- viewing outside (the iPhone ambient light sensor may disable HDR outdoors to prioritize SDR content).
- low power mode.
- using the iOS IG app and have disabled HDR (turn off settings / “disable display of HDR media” – then force quit and restart the app).
- using any web browser on iOS. WebKit does not currently support HDR photos (and this is used by all iOS browsers – not just Safari), so use the iOS IG app.
- using iOS and Settings / Accessibility / “reduce white point” is enabled.
- there are occasional reports of a bug which may be resolve by restarting a phone.
You may not see HDR on a computer if the display, operating system, or browser does not support HDR. See these HDR tests and the troubleshooting on that same page for computer monitors. An HDR-capable computer is not required to create or upload HDR images to IG, but it is certainly ideal if possible.