[Feature] Automatic stacking #2479
Replies: 51 comments 84 replies
-
|
Can you check the EXIF data of those files and let us know whether there is a matching UUID or such between them? |
Beta Was this translation helpful? Give feedback.
-
|
I would also very much appreciate this and would be willing to work on it as soon as we come up with a design. All photos shot with my camera are typically JPEG+RAW. My typical workflow is that I import them and like to have the JPEG visible, but the RAW available for download. If I see particularly good photos (or ones which the camera did a poor job) I download the RAW, develop it into a JPEG and would like to upload that JPEG as the new image to show, keeping the attached RAW image. What would also be great is if I could attach profiles (XMP, PP3, ...) which are small (usually text) files containing the settings used to develop a RAW to the JPEG so that if something needs to be changed later or a new RAW development is needed, I can pick up from the development settings of the last JPEG. |
Beta Was this translation helpful? Give feedback.
-
|
I would also like to be able to manually stack photos. In case you use Immich to save drawings, there are slightly different pictures that I would like to stack them. PhotoPrism didn't do a good job of this, its AI couldn't handle the drawings so it required to rename the file before uploading, which was very annoying. Tysm. |
Beta Was this translation helpful? Give feedback.
-
|
I did some peeking into the EXIF data from a burst taken on an iPad and found that there is indeed a matching UUID called a I also found some documentation regarding Apple Tags here. Here's an example: 135A10E2-A933-42EF-B411-EB1FBA003C12.JPG and 2FD9EEAD-BA17-4813-9EBF-D44FFDAFA0C0.JPG Note that the My two cents is to only rely on UUIDs for matching and stacking photos - I've had issues with PhotoPrism stacking unrelated images due to similar filenames (e.g. A UUID would ensure that none of these conflicts happen, but would be limited to cameras that do write a |
Beta Was this translation helpful? Give feedback.
-
|
Semi related to , which also involves handling/using EXIF Burst info. |
Beta Was this translation helpful? Give feedback.
-
|
I'd also like to move my photo library to Immich but have a bunch of raw files next to jpeg files, which are currently displayed as 2 separate images. Would love to get this feature 🙏 |
Beta Was this translation helpful? Give feedback.
-
|
So back in my youthful photography career, I amassed an Aperture vault of 2TB of RAW, JPG, and Photoshop files. (That was pretty good back then) Aperture grouped all these copies/versions into Stacks and made it so easy to find and manage files. I've been waiting for somesort of stacking feature for years and this is the main reason I haven't fully adopted any online solution yet. It would be amazing to have versions grouped together. If you need more sorce/EXIF data to test, I can provide some more images. So a big +1 for this feature form me. Thanks for all your hard work. It's great watching this software evolve and grow over time. |
Beta Was this translation helpful? Give feedback.
-
|
A thing that has to be considered for this feature is how downloads should be handled. Or make it possible to choose from options:
|
Beta Was this translation helpful? Give feedback.
-
|
Not sure if this is implied, but please also allow grouping of files that are in different directories (import library). I have my raw files in a subdirectory to the edited ones. I.e. |
Beta Was this translation helpful? Give feedback.
-
|
Stacking RAW and JPEGs would be nice. I would make my library cleaner. |
Beta Was this translation helpful? Give feedback.
-
|
I am really loving this stack feature since my phone save the RAW+JPEG. Would it be possible to auto-stack those photos though? I have many many months of photos to go through and stack manually and it has become a major time-consuming adventure. The photos have the same name but different extensions. abc123.dng and abc123.MP.jpg |
Beta Was this translation helpful? Give feedback.
-
|
Also would love this stacked feature, I always shoot in JPG+RAF (Fujifilm RAW) so it would be nice to have all the files accessible as one inside of immich, like how Photoprism does it or Apple photos showing a RAW/JPG badge on top of the image when you view it in full size, then when you click on the information about it you can download the "original" which is the raw file |
Beta Was this translation helpful? Give feedback.
-
|
(pixel 7p, default app) i checked the exif, but there doesn't seem to be anything directly relating the RAW and JPEG, but the filenames are the same, other than the extension, wouldn't that be good enough? |
Beta Was this translation helpful? Give feedback.
-
|
and what about assigning each item a fingerprint for similarity detection (which is on the road map) and give an option to stack by similarity? Then this could be a setting and stacking could happen for different users by their own threshold. This should be additional to stacking by a burst id or some other id, detecting related pictures. |
Beta Was this translation helpful? Give feedback.
-
|
This is how photoprism is doing it according their documentation. |
Beta Was this translation helpful? Give feedback.
-
|
I don't know anything about anything, but I just wanted to pop in to +1 on the ability to stack raws+jpgs automatically. I basically want the Adobe Lightroom behavior: jpg and raw are treated as the same image, transparently. Ideally with a single I don't know if there is like a 'feature bounty' somewhere but I would be happy to chip in to pay to get this done. |
Beta Was this translation helpful? Give feedback.
-
Support for captureIdentifier (PhotoIdentifier/DocumentID) to group photo variants #stacking #versions #editsImmich today assigns a unique asset ID per file, which works well for ensuring file-level uniqueness. Without such a link, stacking currently depends on manual action or fragile heuristics — filenames can change, timestamps shift, and bursts or exports become hard to distinguish. That’s why identifiers like PhotoIdentifier (Apple/QuickTime) and XMP:DocumentID stand out: they are robust, persistent, and designed to survive edits and exports, making them ideal candidates for grouping versions of the same photo. ⸻ Proposed behaviorOn import (with XMP sidecar taking precedence if present), Immich should ingest a captureIdentifier in this priority order:
If two or more assets share the same captureIdentifier:
Database change:
⸻ Why not use other metadata IDs?Several existing fields are not reliably unique or stable enough:
⸻ Why PhotoIdentifier and DocumentID?
Both are true UUIDs:
They are deterministic, extremely collision-resistant, and widely used in real workflows. When these are missing, an autogenerated captureIdentifier ensures every asset still belongs to a capture group, even if only containing itself. ⸻ Example (exiftool)If helpful, I also shared a write-up of this idea here: #21118 |
Beta Was this translation helpful? Give feedback.
-
|
I just want to add some extra thoughts. I have been using Immich for the past year to compare it to PhotoPrism (I have been a long time PhotoPrism user and have a library of more then 100.000+ photos). However even with external auto-stack scripts Immich cannot replace PhotoPrism for me personally, even though I very much like everything else about Immich (it is truly well built and fast). The main culprit for me is the pretty bad support for RAW image file workflows. Not only is stacking RAW + JPEG not natively implemented, but the bigger issue is that even if you create these stacks through other means (manual or external script) the album view does not support stacks, the same is true for search and the locked folder (and 'explore' although in the 'explore' feature I kinda understand it, since it is supposed to show the raw folder structure). In PhotoPrism it seems to work all a bit more intuitive, as if from day one they thought about having the same image in multiple formats stored, it seems to be a core part of what PhotoPrism is. So maybe this is the wrong discussion to add this information to, but in my opinion auto-stacking itself is not so much an issue (since external scripts solve that very well), the bigger issue is how these stacks are being treated, shown and used (inconsistently) throughout Immich.
|
Beta Was this translation helpful? Give feedback.
-
|
Not sure if this specifically has been mentioned here yet; I would like to add on that another photo format that would be nice to have auto stacking for would be Google Pixel Pro Res Zoom photos, which auto stack (the original and processed photo) in Google Photos. |
Beta Was this translation helpful? Give feedback.
-
|
Is there any update on this one? Just curious if someone is looking at it. Or if the community has settled upon some external solution? |
Beta Was this translation helpful? Give feedback.
-
|
Please, follow this discussion here (#23397 We need to talk about real sidecar images (not metadata) raw+jpeg before Automatic stacking) as RAW+JPEG is not a stack thing. |
Beta Was this translation helpful? Give feedback.
-
|
For this feature, it would be very useful to have a setting that determines which of the files should be displayed. |
Beta Was this translation helpful? Give feedback.
-
|
I have a similar issue #24135 with jpg and dng files from Samsung s10. That if I use immich go to upload a folder, they show up as separate files not automatically stacked as 1 image. The main thing also is that it results in 2 separate xmp files being created such as .dng.xmp and .jpg.xmp rather than .xmp like normal. Which results in duplicate info about the same file. Immich should by default use .xmp rather than the other other option. |
Beta Was this translation helpful? Give feedback.
-
|
This is the EXIF for the JPG and the CR2 shot from my Cannon 80D, I can't see any UUID or alike, but I think if they're the same file name in the same folder and same photo taken time (within 2s - as CR2 can take longer to save) just one is .CR2 and the other is .JPG then that should stack, and ideally not suggest either for deletion as a duplicate of the other (I see this a lot in the immich duplicates tool). |
Beta Was this translation helpful? Give feedback.
-
|
Additionally it would be great if it could auto-stack my google photos imports, for edited photos where the only link is the file name say photo.jpg and photo-edited.jpg and again in the same folder and same photo taken date/time. |
Beta Was this translation helpful? Give feedback.
-
|
has there been any consensus on a direction for this? I wouldn't mind stacks to be both RAW+JPEG and also rapidly shot images. Google Photos does this, and you just need the single tumbnail with an icon indicating its a stack. if you are interested in the photo, see its a stack, you just click it to see what versions there are of it. I don't think its that serious. |
Beta Was this translation helpful? Give feedback.
-
|
On the Pixel 10 Pro there can be 3 photos for created at once when zooming in more than 30 times. google photos neatly groups them: |
Beta Was this translation helpful? Give feedback.
-
|
I'm really excited if this feature will be implemented! Naming of pixel: |
Beta Was this translation helpful? Give feedback.
-
|
i hate to look a gift horse in the mouth, immich is great, but why has this stack feature been implemented in API for over a year now and still hasn't made any progress in the GUI? raw+jpeg is supported on just about every smartphone with a decent camera, and every actual camera body made in the last few decades. if you use raw+jpeg, which anyone serious about photography does, you are punished by immich displaying doubles of every photo you take, forcing you to either rely on third party scripts, or abandon immich entirely. please, this really needs to be addressed. |
Beta Was this translation helpful? Give feedback.
-
|
Adding my grain of salt to the discussion. I also think it would be great if Immich could store RAW+JPEG files as a single pair. Here is the use-case. Some of my photos are taken on a pro camera. When I'm about to shoot truly meaningful moments, I switch RAW+JPEG. This gives me both a JPEG file, and the possibility to edit the picture later. I think it would be very convenient if these pairs were be stored at the same place, and managed as two parts of a single asset. Immich could display the JPEG, store the RAW (but not display it as a separate asset), and leave the possibility to download the RAW, delete it, or delete the whole pair. This topic has been mentioned before (e.g. here on Reddit), and some people store their JPEGs and RAWs separately. I don't want to do that, as I would prefer the benefits of having one master source of storage. This makes it easier to organize, keep the RAW and JPEG files in sync. I also don't do so much editing, so having Immich act as a storage service for the RAW files is perfect for me to see what I can do in a quick glance. I don't know how to implement this feature, but I think it would suit a lot of people who casually use a good camera. |
Beta Was this translation helpful? Give feedback.




Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
The feature
Immich has become really great and has some "killer features" in contrast to other solutions like librephotos or photoprism.
Still there is one feature missing i really liked in photoprism.
It's the Photostack.
When i e.g. shoot an Image with my Sony A6500 i can configure the camera to output RAW+JPEG.
The Files will be named ABC001.ARW and ABC001.JPEG (same name except file extension).
If i edit this image on Lightroom e.g. The result is exported as ABC001-1.JPEG (another iteration as ABC001-2.JPEG, etc.).
As far as i understand immich right now, I would have the same photo (example from above) 3 times in the timeline assumed that #2156 is resolved.
Instead, i would like to display only the latest iteration e.g. (...-2.JPEG) as thumbnail and have the option to show all versions in the detailed view.
This Feature would also apply to high frequency photos. Imagine you shoot a fast scene with multple shoots per second and you end up with 30 Photos. You don't want to have each frame separately in the timeline. Instead, those images could be stacked and shown as "single image" with the option to show them all in details.
Besides, thank you for this great work and product and have a nice weekend!
Regards
Platform
Beta Was this translation helpful? Give feedback.
All reactions