Screenshots on macOS look desaturated compared to the native screenshot tool (missing/incorrect color profile)
Flameshot Version
v13.3.0 (88c951e)
Installation Type
Linux, MacOS, or Windows Package manager (apt, pacman, eopkg, choco, brew, ...), Using the ready-made package from Github Releases
Operating System type and version
macOS 15.7.1 (Darwin 24.6.0)
Description
Summary
On macOS, screenshots saved with Flameshot appear less saturated than screenshots created with the native macOS screenshot tool. Side-by-side comparisons show Flameshot PNGs are untagged (no embedded ICC profile), while the native tool embeds the active display profile (wide-gamut). On color-managed systems/apps this yields washed-out colors.
Expected Behavior
- Flameshot should assign/convert to a chosen output colorspace and embed the matching ICC profile (PNG
iCCP) so color-managed apps render the screenshot with the same appearance as on screen. - Visual parity with the native macOS screenshot.
Actual Behavior
- Flameshot PNGs contain no embedded ICC profile (
profileName: <nil>). - On wide-gamut displays, untagged images are treated as sRGB, leading to visibly desaturated output compared to the native screenshot, which is tagged with the active display profile (
LG HDR 5Kin this case).
Technical Analysis / Hypothesis
- macOS display pipeline often renders in a wide-gamut space (e.g., Display-P3 or an HDR-capable profile).
- Flameshot’s macOS path (Qt) appears to:
- read framebuffer/window pixels without a colorspace conversion, and
- save the PNG without embedding an ICC profile.
- The native tool either preserves the display profile or converts and embeds an appropriate profile, avoiding a gamut/appearance mismatch.
Steps to reproduce
-
On a P3/HDR-capable Mac display, open vivid UI/web content.
-
Capture the same region twice:
- with macOS (
⇧⌘4/ Screenshot.app), - with Flameshot.
- with macOS (
-
Inspect both PNGs in Preview (
Tools → Show Inspector → More Info → Color Profile) and via Terminal.
Observed metadata (from the attached samples):
# Flameshot.png
mdls -name kMDItemDisplayName -name kMDItemProfileName -name kMDItemColorSpace Flameshot.png
kMDItemColorSpace = "RGB"
kMDItemDisplayName = "Flameshot.png"
kMDItemProfileName = (null)
# Mac native screenshot.png
mdls -name kMDItemDisplayName -name kMDItemProfileName -name kMDItemColorSpace "Mac native screenshot.png"
kMDItemColorSpace = "RGB"
kMDItemDisplayName = "Mac native screenshot.png"
kMDItemProfileName = "LG HDR 5K"
Screenshots or screen recordings
No response
System Information
- Flameshot: v13.3.0 (88c951e)
- Qt: 6.9.3
- OS: macOS 15.7.1 (Darwin 24.6.0)
- Display: wide-gamut external monitor; native screenshots embed LG HDR 5K profile
- HDR: enabled on the display profile (wide-gamut); behavior reproducible regardless of content
Same issue here with an HDR monitor with wide-gamut color profile.
- Native macOS screenshot tool
- Flameshot