Instagram dulling photos is almost always a colour profile problem, and it happens before the app does anything else to your file. Your photo leaves your editor tagged Display P3 or Adobe RGB. Instagram works in sRGB. When that tag gets lost or converted on the way in, every saturated colour in the frame slides toward grey. Export in sRGB first and most people never see the problem again. Compression and sizing take their own cut afterwards, and iPhone HDR files carry a separate problem of their own, so what follows walks your file from the editor to the feed and shows you exactly where the colour goes.
Table of Contents
The colour space your file leaves in decides how it lands
Here is the part almost nobody explains properly, and it is worth two minutes of your life.
A colour in a photo is stored as a number. That number only means something once you know which colour space it belongs to. Adobe RGB can describe a wider range of colours than sRGB, so a deep red that hits 255 in sRGB sits at roughly 219 in Adobe RGB. Same red on the screen, completely different number inside the file.
Now strip the tag that says “these numbers are Adobe RGB”. The next piece of software along assumes sRGB, because almost everything assumes sRGB. It reads 219 as sRGB 219, which is a noticeably duller red than the one you spent twenty minutes getting right. Repeat that across every colour in the frame and you get precisely the effect people describe: flat, and somehow lower in contrast than the version sitting in your camera roll.
Display P3 does the same thing in a milder way. P3 is the capture default on every recent iPhone and most modern Macs, which is why photographers who have never touched a colour setting in their lives still run into this.
Not sure which space your file is in? On a Mac, open it in Preview and press Command I for the inspector, where the colour profile is listed. On Windows, right click the file, choose Properties, then Details. If it says anything other than sRGB, you have found your answer without guessing.
The fix is one dropdown.
- Lightroom and Lightroom Classic: in the export panel, set Colour Space to sRGB.
- Photoshop: Edit, then Convert to Profile, then sRGB IEC61966-2.1. Do that on the export and leave your master file alone.
- Capture One: open the process recipe and set the ICC profile to sRGB.
- Phone editors: most hand back whatever the camera captured, so run the finished image through an export or converter that lets you choose sRGB before you post.
The usual advice at this point is to push saturation and vibrance up before exporting so the photo survives the flattening. You were expecting me to agree, right? Please do not do that. You would be pre-distorting a perfectly good file to compensate for a conversion you can simply stop causing, and the day Instagram tightens its handling you will own a library full of over-cooked exports with nowhere to go.
A bigger upload comes out looking worse than a correctly sized one
Instagram will not display your feed photo wider than 1080 pixels. Hand it a 3000 pixel wide file and the app resizes it down itself, then re-encodes the result as a lossy JPEG. That resize is automatic and tuned for speed. Do the resize yourself in an editor that actually cares about it, upload at 1080 wide, and Instagram has far less work to do and far less opportunity to smear your fine detail into porridge.
These are the export sizes worth saving as presets.
| Where it appears | Export at | Ratio |
|---|---|---|
| Feed, portrait (the one to default to) | 1080 x 1350 | 4:5 |
| Feed, square | 1080 x 1080 | 1:1 |
| Feed, horizontal | 1080 x 566 | 1.91:1 |
| Story, Reel and Reel cover | 1080 x 1920 | 9:16 |
One catch trips people up, and it is recent. Instagram moved its profile grid to a 3:4 preview in 2025. A 1080 by 1350 post gets clipped on its left and right edges when it appears as a grid tile, roughly thirty pixels a side, so keep faces and text away from the outer edges. You can export at 1080 by 1440 to fill the grid tile with no crop at all, but that ratio falls outside what Instagram’s publishing tools accept, so it works when you post by hand in the app and fails through most schedulers.
iPhone HDR shots land flat for a completely different reason
This one has nothing to do with compression or colour space. Recent iPhones save an HDR photo as an ordinary image plus a gain map, which is a set of instructions telling a capable screen how much extra brightness to add and where. Your Photos app reads the gain map and shows you the bright version. Anything that cannot read it shows you the plain image underneath, which looks darker and duller than what you were admiring ten seconds earlier.
Instagram added HDR photo support in March 2024 and it genuinely works, with conditions. Native camera captures carrying a gain map display in HDR. Where it falls over is predictable once you know the rule.
- Photos from third party camera apps frequently carry no gain map at all.
- Panoramas and many portrait mode shots do not carry one either.
- Applying Instagram’s own filters during upload drops the result to standard range.
- Uploading through a desktop web browser usually loses it.
- Stories do not support HDR photos.
So when your feed post looks lifeless next to the same photo in your camera roll, check whether you are comparing an HDR render against a standard one. If you are, no amount of export tweaking closes that gap. Edit the standard range version until it looks right on its own terms, then post that.
Screenshots and re-saves stack loss on top of loss
Every trip through Instagram re-encodes your image. One trip is survivable. The trouble starts when the file has already been through the mill somewhere else.
A screenshot is your screen’s rendering of an already compressed image, captured at whatever pixel dimensions your phone happens to have, usually with the colour profile gone. Post that and Instagram compresses a compression. Saving somebody’s post and reposting it does the same thing. A photographer once ran the same picture through download and repost ninety times in a row and watched it dissolve into coloured mush. Your version of that is smaller and slower, but it is the same mechanism.
Always go back to the original camera file or your editor’s export. Never to a screenshot, a WhatsApp forward, a picture pulled out of the feed, or anything that has already been through another app’s compressor.
Two settings on your phone quietly downgrade the upload
Open Instagram, go to Settings and activity, then find Data usage and media quality under Your app and media. Data saver tells the app to compress outgoing media harder. The high quality upload option tells it to wait and send the full version instead of firing off a lighter one the moment you tap Share. Menu names shift between app versions, so look for the wording rather than a fixed path.
Your connection matters more than people expect. On a weak cellular signal the app will often ship a reduced version so your post goes live now rather than in four minutes. Post over Wi-Fi when the photo actually matters. Leave the app open until the upload finishes, and check the result on a second device before you decide Instagram is at fault.
One serious note before you go looking for shortcuts. Search this problem and you will find apps and websites promising uploads with no compression, asking you to sign in with your Instagram username and password. Do not give either to them. A password hands an unknown party full control of the account, including your direct messages and any business assets linked to it, and Instagram treats posting activity from tools it does not recognise as suspicious, which is a fast route to a restricted account. If you want a scheduling tool, choose one that sends you to Instagram’s own login screen, where you approve access explicitly and can revoke it later from your security settings.
Work through it in this order
- Re-export the same photo as an sRGB JPEG at 1080 pixels wide and post it. If the colour comes back, you are finished and everything below is optional.
- If the result looks dark rather than dull, you are probably watching an HDR file lose its gain map. Compare against the standard range version before blaming the upload.
- Confirm the file you are uploading is an original export that has not been screenshotted or saved out of another app along the way.
- Switch data saver off, switch high quality uploads on, and run the test again on Wi-Fi.
Most photos come back at step one. The genuinely satisfying part is that once your export preset is right, you never have to think about any of this again.