EN / RU
Home / Reference

Shader cache

Updated: 2026-08-24

A shader cache is a folder of pre-compiled GPU programs that a game or a driver saved so it would not have to compile them again. It is derived data: deleting it costs you some stutter the next time you play, and nothing else.

What it actually holds

A shader is a small program that runs on your graphics card. It ships with the game in a portable form and has to be compiled for your exact GPU and driver version before it can run, which is slow — slow enough that compiling on demand is what you feel as stutter during the first few minutes of a new game.

So the result gets written to disk. Play the same level again and the compiled version is read back instead of rebuilt. That is the whole mechanism, and it is why the second hour of a game runs smoother than the first.

There is more than one of these caches, which is the usual source of confusion. Steam keeps its own, your graphics driver keeps its own, and on Linux Mesa keeps another. They do not know about each other.

Where it lives

Steam, Windows<Steam>\steamapps\shadercache\<appid>
Steam, Linux and Steam Deck~/.local/share/Steam/steamapps/shadercache/<appid>
NVIDIA, DirectX%LOCALAPPDATA%\NVIDIA\DXCache
NVIDIA, OpenGL and Vulkan%LOCALAPPDATA%\NVIDIA\GLCache
AMD%LOCALAPPDATA%\AMD\DxCache
Intel%LOCALAPPDATA%\Intel\ShaderCache
Windows DirectX, all vendors%LOCALAPPDATA%\D3DSCache
Mesa, Linux and Steam Deck~/.cache/mesa_shader_cache

The Steam folders are named by numeric app id, not by game, which is why opening one tells you nothing. shadercache\620 is Portal 2 — but only if you already know that.

Is it safe to delete?

Yes. Every one of these folders is rebuilt automatically the next time it is needed. Nothing in a shader cache is a save file, a setting, a mod or installed game content — it is all recomputable from things you still have.

The cost is a one-time recompile. You will get the first-few-minutes stutter back on the next launch of each affected game, and on Steam Deck a shader set that Steam had pre-downloaded will be fetched again over the network.

Do not confuse shadercache with compatdata. They sit next to each other in the same folder on Linux and the Steam Deck, and compatdata holds the game's virtual Windows drive — which for a great many games is where the save files are. Deleting that one is not safe.

Why it grows without limit

The cache is not tied to whether the game is still installed. Uninstall a 90 GB game and the install folder goes, but the shader cache keyed to its app id is routinely left behind — along with the driver-side cache, which never had any idea a game was uninstalled in the first place.

Nothing prunes these. On a machine that has been gaming for a few years the total runs to tens of gigabytes, spread across folders named after numbers, and it sits on the system drive by default.

Act on it

Vapor Storage Manager lists every shader cache folder on the machine, resolves the app ids to real game names through Steam, and marks the ones whose game is no longer installed. It removes only what you select.

Download Vapor Storage Manager