SmoothFPS
Back to Guides
Educational Guide

Shader Compilation Stutter Explained: Why Games Freeze on New Effects

Shader compilation stutter occurs when your GPU compiles shader programs in real-time during gameplay, causing brief freezes (50-500ms) the first time you encounter new visual effects, areas, or character models. This is especially severe in DX12 and Vulkan games, where pipeline state objects (PSOs) must be compiled on first use. Once compiled, shaders are cached and the stutter disappears — which is why the problem only happens in new areas or first matches.

Shader stutter has become significantly worse since the industry shifted from DX11 to DX12. In DX11, the driver pre-compiled shaders automatically. In DX12, this responsibility falls on the game engine — and many games do it poorly, causing the notorious 'first-run stuttering' that plagues even high-end PCs.

Want to minimize shader stutter?

Start General Fix Wizard
Try These First (2 Minutes)

If you just want to try something quick before reading the full guide:

  1. Steam users: Steam → Settings → Shader Pre-Caching → turn ON both options → restart Steam
  2. NVIDIA users: NVIDIA Control Panel → Manage 3D Settings → Shader Cache Size → change to 10 GB or Unlimited
  3. AMD users: AMD Adrenalin → Settings → Graphics → Shader Cache → On
  4. In-game: If your game shows "Compiling Shaders" or "Optimizing" at launch — don't skip it. Let it finish.

These won't eliminate shader stutter entirely (read "The Reality" below for why), but they significantly reduce it.

Still stuttering? Keep reading for the full breakdown and advanced fixes

TL;DR
  • Shaders are GPU programs that render graphics effects.
  • First-time stutters happen because shaders compile when first encountered.
  • DX12/Vulkan compile on-demand; DX11 pre-compiles at launch.
  • It often goes away on second playthrough as caches build.

What Are Shaders?

Shaders are small programs that run on your GPU to determine how things are rendered — lighting, shadows, reflections, particle effects, material surfaces, and more. Every visual effect you see in a game is produced by one or more shaders.

Shaders are written in a high-level language (HLSL for DirectX, GLSL for OpenGL) and must be compiled into machine code that your specific GPU can execute. This compilation takes time — typically 10-100ms per shader, but it adds up when hundreds are needed.

Key concept: Shader compilation is a CPU task, not a GPU task. While the CPU compiles, the GPU waits — causing the visible stutter.

Symptoms of Shader Stutter

  • First-time freezes: Brief hitches when seeing a new explosion, lighting effect, or enemy type for the first time
  • Traversal stutter: Random freezes when exploring new areas of a game world
  • Goes away on replay: The same areas run smoothly on second playthrough
  • Worse after driver updates: New drivers may invalidate shader caches, requiring recompilation (see driver shader cache management for details)
  • Common in DX12/Vulkan: These APIs use just-in-time compilation
Key identifier: If stuttering is worse on first playthrough and improves over time, it's likely shader-related. CPU/GPU bottlenecks don't have this pattern.

Is Your Problem Actually Shader Stutter?

Not all stuttering is shader-related. Use this table to narrow it down:

Shader StutterCPU BottleneckStorage StutterDriver Issue
WhenFirst time seeing new effect/areaBusy scenes, many NPCsLoading new areas, fast travelRandom, any time
PatternGets better over timeConsistent in heavy scenesUntil moved to SSDUnpredictable
DurationBrief hitch (50-200ms)Sustained low FPS0.5-2 second freezeVaries
After driver updateGets temporarily worseNo changeNo changeOften starts here
DX11 vs DX12Much better in DX11Similar in bothSimilar in bothMay differ
Hardware fix?Barely — even RTX 4090 gets itYes — better CPU helpsYes — SSD fixes itNo — need clean install
Your stutter matches "Shader Stutter"? → You're in the right place. Keep reading.

Why DX12 is Worse Than DX11 for Shader Stutter

DirectX 11

  • Compiles ALL shaders at game launch
  • Longer loading screens (30 sec - 5 min)
  • Smooth gameplay once loaded
  • Driver can cache and optimize

DirectX 12

  • Compiles shaders "just-in-time"
  • Fast initial loading
  • Stutters when new shaders needed
  • More developer responsibility

DX12 gives developers more control but also more responsibility. Well-optimized DX12 games (like Doom Eternal) pre-compile shaders and run smoothly. Poorly-optimized ones (like early Elden Ring) compile on-the-fly and stutter badly.

Commonly Affected Games

Elden Ring

Notorious traversal stutters

Hogwarts Legacy

Heavy shader compilation

Starfield

DX12-only, frequent hitches

Call of Duty (MW2/Warzone)

Shader install on updates

Most UE5 Games

Unreal Engine 5 struggles with this

Red Dead Redemption 2

Known for PC stutter issues

How to Minimize Shader Stutter

The 8 fixes at a glance (detailed steps below):

  1. Enable Steam Shader Pre-Caching
  2. Increase NVIDIA Shader Cache Size (10 GB or Unlimited)
  3. Enable AMD Shader Cache
  4. Let in-game shader pre-compilation finish
  5. Switch to DX11 when available
  6. Cap your frame rate
  7. Delete corrupted shader cache (last resort)
  8. Clean install GPU drivers (DDU)

Shader stutter is ultimately an engine-level problem — but there ARE things you can do to significantly reduce it. These fixes are ordered by impact.

Fix 1: Enable Steam Shader Pre-Caching

Impact: High1 min

Steam can download pre-compiled shaders from Valve's servers so your PC doesn't compile them from scratch. This is the single most effective thing you can do for Steam games.

1

Open Steam → click Steam menu (top-left) → Settings

2

Click "Shader Pre-Caching" in the left sidebar

3

Enable both options:

  • Enable Shader Pre-Caching
  • Allow background processing of Vulkan shaders
4

Restart Steam

5

Let Steam download shader caches before playing

Note: This primarily helps Vulkan/OpenGL games. DX12 games benefit less, but it's still worth enabling.

Fix 2: Increase NVIDIA Shader Cache Size

Impact: High2 min

NVIDIA limits shader cache to 1 GB by default. Increasing it means more compiled shaders are kept.

1

Right-click Desktop → NVIDIA Control Panel

2

Go to Manage 3D Settings → Global Settings

3

Scroll to "Shader Cache Size"

4

Change from default to 10 GB (or Unlimited)

5

Click Apply

Cache locations (stored on disk — a slow drive can worsen load times; see storage stuttering):
DX: C:\Users\[You]\AppData\Local\NVIDIA\DXCache
GL: C:\Users\[You]\AppData\Local\NVIDIA\GLCache

Fix 3: Enable AMD Shader Cache

Impact: High2 min
1

Open AMD Adrenalin Software

2

Go to Settings → Graphics

3

Find "Shader Cache" → set to On

4

If available, set "Shader Cache Size" to a higher value

Cache locations:
DX: C:\Users\[You]\AppData\Local\AMD\DxCache
Vulkan: C:\Users\[You]\AppData\Local\AMD\VkCache

Fix 4: Let In-Game Pre-Compilation Finish

Impact: Very High5-30 min

Many modern games pre-compile shaders at first launch. You'll see messages like "Compiling Shaders..." or "Optimizing Game..."

Do NOT skip or cancel this.

This process exists specifically to prevent in-game stutter. Yes, it's slow. Yes, it's worth waiting.

Games that do this: Call of Duty, Fortnite, Destiny 2, Returnal, Hi-Fi Rush, Horizon Zero Dawn, Atomic Heart

Fix 5: Switch to DX11 (When Available)

Impact: Very High1 min

DX11 pre-compiles everything at launch instead of mid-gameplay. Switching to DX11 often eliminates shader stutter completely.

How to switch:

  • In-game: Graphics → Renderer/API → DirectX 11
  • Steam: Right-click game → Properties → Launch Options → add -dx11
  • Some games: Need to edit a config/INI file

Trade-off: You lose DX12 features like ray tracing. For many players, the stutter-free experience is worth it. Check our game settings optimization guide for more API and quality trade-offs.

Fix 6: Cap Your Frame Rate

Impact: Medium2 min

Capping FPS reduces the perception of shader stutter. At high FPS, each missed frame is more noticeable.

How to cap:

  • NVIDIA: Control Panel → Manage 3D Settings → Max Frame Rate
  • AMD: Adrenalin → Graphics → Frame Rate Target Control
  • RTSS (RivaTuner): Most precise method
  • In-game: Use the game's built-in limiter

Fix 7: Delete Corrupted Shader Cache (Last Resort)

Impact: Low5 min
Only do this if you suspect cache corruption

After a failed driver update, game crash, or visual glitches. Deleting healthy caches makes stutter worse temporarily.

NVIDIA: Delete contents of C:\Users\[You]\AppData\Local\NVIDIA\DXCache and \GLCache

AMD: Delete contents of C:\Users\[You]\AppData\Local\AMD\DxCache

Steam: Steam → Settings → Shader Pre-Caching → "Delete Shader Cache"

Fix 8: Clean Install GPU Drivers (DDU)

Impact: Medium15 min

Old driver fragments can interfere with shader compilation. A clean install wipes everything and starts fresh.

1

Download latest driver from NVIDIA or AMD (don't install yet)

2

Download DDU (Display Driver Uninstaller)

3

Boot into Safe Mode

4

Run DDU → select "Clean and restart"

5

After restart, install the downloaded driver

For the complete process, see our Driver Issues Guide.

Common myths about shader stutter

Myth

"A faster GPU will fix shader stutter."

Reality

Shader compilation is CPU-bound. A faster CPU helps more, but even top hardware experiences shader stutter — it's an engine/pipeline issue.

Myth

"Reinstalling the game fixes shader stutter."

Reality

This actually makes it worse by clearing cached shaders, forcing recompilation. Only reinstall for actual corruption issues.

Myth

"Lowering graphics settings prevents shader stutter."

Reality

Lower settings may use different shaders, but you still experience compilation stutter for whichever shaders are used. Settings don't affect compilation time. However, lowering texture quality can help with asset streaming stutter (textures loading mid-gameplay) — that's a different problem from shader compilation. See the Streaming Fix Wizard for that.

Myth

"More VRAM prevents shader stutter."

Reality

VRAM stores compiled shaders, but doesn't affect compilation speed. The bottleneck is CPU compile time, not storage.

The Reality About Shader Stutter

✓

There ARE things you can do.

The fixes above (especially Steam pre-caching, increasing shader cache size, and using DX11 mode) significantly reduce shader stutter for most players.

!

But some stutter is engine-level.

If a game doesn't pre-compile shaders properly, no amount of user tweaking will fully eliminate first-time hitches. This is the developer's responsibility.

⌛

It improves with time.

The more you play, the fewer new shaders you encounter. Second playthroughs are usually smooth.

🎮

DX11 mode is a valid choice.

If a game offers DX11/DX12 toggle, DX11 eliminates shader stutter at the cost of some features.

💾

Don't clear shader caches unnecessarily.

Shader caches are your friend. Clearing them makes stuttering worse temporarily.

Not sure this is actually your issue?

Upload your HWiNFO log — if shader compilation stutter is the cause, the analyzer confirms it in under a minute with your real sensor data.

Frequently Asked Questions

Why does shader stutter only happen the first time?

Shaders need to be compiled into GPU-specific machine code before they can run. The first time your GPU encounters a new shader (new area, new effect, new character), it must compile it in real-time, causing a brief freeze. After compilation, the result is saved to a shader cache on disk. Next time you see the same shader, it loads instantly from cache — no stutter.

How do I fix shader compilation stutter?

Three approaches: 1) Let the game pre-compile — many games show 'Building shaders' on first launch, let it finish completely, 2) For NVIDIA, enable 'Threaded Optimization' in NVIDIA Control Panel and let the NVIDIA shader cache build up over 2-3 play sessions, 3) For persistent stutter, delete the shader cache folder (forcing a clean rebuild) — NVIDIA: %localappdata%/NVIDIA/DXCache, AMD: %localappdata%/AMD/DxcCache.

Why does shader stutter only happen the first time I see something?

Shaders are small GPU programs that render specific visual effects. When you encounter a new effect for the first time, the GPU must compile that shader from source code into machine code. Once compiled, it's cached and reused — so the same effect won't stutter again in that session (or sometimes ever, if the cache persists).

Why is DX12 worse for shader stutter than DX11?

DX11 pre-compiles all shaders during game launch (causing longer loading screens but smooth gameplay). DX12 uses 'pipeline state objects' that are compiled just-in-time as needed. This reduces initial load times but causes stutters when new shaders are needed during gameplay.

Will better hardware fix shader stutter?

Somewhat. Faster CPUs compile shaders more quickly, reducing stutter duration. However, shader compilation is fundamentally a CPU task that blocks the GPU — so even the fastest hardware will still experience some hitching. The solution is better shader caching, not raw performance.

Why do some games have shader 'pre-caching' or 'compiling' screens?

Games like Destiny 2, Fortnite, and Call of Duty now pre-compile shaders before gameplay. This mimics DX11 behavior — longer initial wait, but smoother gameplay. It's the best current solution and more games are adding it.

Does clearing my shader cache help or hurt?

Clearing shader cache forces recompilation of everything, causing temporary stuttering until caches rebuild. Only clear caches when troubleshooting specific issues or after driver updates. Healthy shader caches improve performance; don't clear them routinely.

Why does Elden Ring stutter so much on PC?

Elden Ring uses DX12 without adequate pre-compilation. Combined with FromSoftware's engine and lack of Steam shader cache distribution, it compiles shaders on-demand while exploring. The game was also a console-focused port with less PC optimization.

Can I switch from DX12 to DX11 to avoid shader stutter?

Some games offer this option (like Fortnite, World of Warcraft). DX11 mode eliminates shader stutter but may reduce visual quality or performance in GPU-bound scenarios. It's a valid trade-off if shader stutter bothers you more than slightly lower settings.

Why does Steam download shader caches for some games?

Steam's shader pre-caching downloads compiled shaders from Valve's servers. These are shaders already compiled by other users with similar hardware. This system dramatically reduces first-time shader stutter for supported games.

Next step

While shader stutter is often engine-level, there are still optimizations you can try:

Start General Fix Wizard