2026-09-17, 04:31 PM
(This post was last modified: 2026-09-17, 04:33 PM by joshuaboniface. Edited 1 time in total.)
We've seen a few incidences recently of folks having their media deleted because of a misconfigured Cache (or Transcodes) directory, and I wanted to make this PSA because we're not truly sure exactly why this misconfiguration keeps happening. It could be a bad guide somewhere, or just general parallel thinking. So I wanted to make this PSA to serve as a warning to anyone thinking about changing these: don't, unless you have a very good reason, and if you do, know what it means and be careful with the paths you set!
What are these directories?
The Cache directory (in your dashboard as "Cache" and, relatedly, "Image Cache") is a directory where Jellyfin stores temporary files for caching: things like metadata provider information on your media, cover images, and the like, to avoid re-downloading it again in the future. This data is somewhere between transient and permanent, but it will be cleaned up by scheduled tasks on occasion.
The Transcodes directory (in your dashboard as "Transcodes") is a directory where Jellyfin stores the temporary video files used during transcoding for client playback. It is also cleaned up regularly.
What happened?
We've seen several cases of this over the years, and a few more very recently, with this following general shape:
* Someone stores media at a path like
* The decide to set one of the Cache or Transcodes folders to
* A cleanup job within Jellyfin runs, which targets
* The cleanup job sees the unmanaged files under
* The user's media is now gone.
Again, this is not a hypothetical: there have been multiple instances of this happening over the years, and almost every case can be traced back to setting one of these folders to a parent directory of the actual media content.
What should you do?
Ideally, do not change these directories unless you have a concrete reason for doing so. By default, they are subdirectories of the Jellyfin "Program Data" directory, which houses the main Jellyfin database and other meta files for the program, and this is where they are designed to live.
Now, I can guess at one of the most common reasons for wanting to change these: disk usage. These caches can grow to several GB in size on medium to large servers, and the idea of moving them to another larger, or faster, drive seems tempting.
But if you do...
Never, ever, set any of these as a direct parent of any other folder! Or, put another way, never set these to a directory that has other data you care about inside of it. The cleanup jobs will not discriminate, and does not differentiate files that Jellyfin wrote from other, unrelated files in these directories.
If you do want to put these files somewhere other than the default, create a new, dedicated directory for them. Something like, continuing the above example,
If you come across any guides, tutorials, videos, etc. violating this suggestion, please speak up loudly to help warn others about this issue. And if you're doing this yourself, or considering doing this, please follow these recommendations: your media will thank you.
What are these directories?
The Cache directory (in your dashboard as "Cache" and, relatedly, "Image Cache") is a directory where Jellyfin stores temporary files for caching: things like metadata provider information on your media, cover images, and the like, to avoid re-downloading it again in the future. This data is somewhere between transient and permanent, but it will be cleaned up by scheduled tasks on occasion.
The Transcodes directory (in your dashboard as "Transcodes") is a directory where Jellyfin stores the temporary video files used during transcoding for client playback. It is also cleaned up regularly.
What happened?
We've seen several cases of this over the years, and a few more very recently, with this following general shape:
* Someone stores media at a path like
D:\Media\Movies\... (note: this seems to be much more common on Windows than Docker/Linux/MacOS).* The decide to set one of the Cache or Transcodes folders to
D:\.* A cleanup job within Jellyfin runs, which targets
D:\ as a whole since it is the Cache/Transcodes directory.* The cleanup job sees the unmanaged files under
D:\Media and begins deleting them.* The user's media is now gone.
Again, this is not a hypothetical: there have been multiple instances of this happening over the years, and almost every case can be traced back to setting one of these folders to a parent directory of the actual media content.
What should you do?
Ideally, do not change these directories unless you have a concrete reason for doing so. By default, they are subdirectories of the Jellyfin "Program Data" directory, which houses the main Jellyfin database and other meta files for the program, and this is where they are designed to live.
Now, I can guess at one of the most common reasons for wanting to change these: disk usage. These caches can grow to several GB in size on medium to large servers, and the idea of moving them to another larger, or faster, drive seems tempting.
But if you do...
Never, ever, set any of these as a direct parent of any other folder! Or, put another way, never set these to a directory that has other data you care about inside of it. The cleanup jobs will not discriminate, and does not differentiate files that Jellyfin wrote from other, unrelated files in these directories.
If you do want to put these files somewhere other than the default, create a new, dedicated directory for them. Something like, continuing the above example,
D:\Jellyfin Data\Cache and D:\Jellyfin Data\Transcodes, keeping your media at D:\Media. Having that second level offers even more "protection" in a sense, and helps keep things organized, but what you pick is up to you. Don't set it to just D:\ whatever you do.If you come across any guides, tutorials, videos, etc. violating this suggestion, please speak up loudly to help warn others about this issue. And if you're doing this yourself, or considering doing this, please follow these recommendations: your media will thank you.

