Windows Update gets stuck at 0%, hangs on "Checking for updates," fails with cryptic error codes, or simply refuses to install. This guide walks through the fixes that actually work, ordered from easiest to most involved. For a related guide, see Can't Delete a File? How to Fix Permission and In-Use Errors on Windows and Mac.
Quick Checks Before You Start
- Wait it out. Large updates can sit at a percentage for 30–60 minutes with no visible progress. If the disk activity light blinks, let it run.
- Restart once. A simple reboot clears pending file operations and often lets the update continue.
- Check disk space. You need at least 10–15 GB free on the system drive. Open Settings > System > Storage and clear temporary files if needed.
- Disconnect non-essential peripherals. USB drives, printers, and docks sometimes interfere with driver updates.
Run the Built-In Windows Update Troubleshooter
This is the safest first step and resolves many common service or corruption issues automatically.
Windows 11
- Open Settings (Win + I).
- Go to System > Troubleshoot > Other troubleshooters.
- Click Run next to Windows Update.
- Follow any on-screen prompts. Restart when prompted.
Windows 10
- Open Settings > Update & Security > Troubleshoot > Additional troubleshooters.
- Select Windows Update and click Run the troubleshooter.
- Apply any fixes found and restart.
Restart Windows Update Services
If the troubleshooter doesn't help, the background services that handle updates may be stuck.
- Press Win + R, type
services.msc, and press Enter. - Locate each service below, right-click it, and choose Restart (or Start if not running):
- Windows Update (
wuauserv) - Background Intelligent Transfer Service (
BITS) - Cryptographic Services (
CryptSvc) - Windows Installer (
msiserver)
- Windows Update (
- Set each service's Startup type to Automatic (right-click > Properties).
- Close Services and check for updates again.
Clear the Update Cache (SoftwareDistribution and Catroot2)
Corrupted download files are a frequent cause of stuck updates. Clearing these folders forces a fresh download.
- Open Command Prompt as administrator:
- Press Win, type cmd, right-click Command Prompt, choose Run as administrator.
- Run these commands one at a time, pressing Enter after each:
net stop wuauserv net stop bits net stop cryptsvc net stop msiserver ren C:\Windows\SoftwareDistribution SoftwareDistribution.old ren C:\Windows\System32\catroot2 catroot2.old net start wuauserv net start bits net start cryptsvc net start msiserver - Restart your PC and check for updates.
Note: Renaming instead of deleting preserves the folders in case you need to roll back, but they can be safely removed after a successful update.
Run System File Repair (SFC and DISM)
Corrupted system files can block updates. Run both tools for best coverage.
- Open Command Prompt as administrator (see above).
- Run DISM first (requires internet connection):
DISM /Online /Cleanup-Image /RestoreHealthWait for completion (can take several minutes).
- Then run SFC:
sfc /scannow - Restart and try Windows Update again.
- Note the KB number from the update history or error message (e.g., KB5034441).
- Go to catalog.update.microsoft.com.
- Search for the KB number.
- Download the version matching your architecture (x64 for most modern PCs, ARM64 for Snapdragon devices).
- Run the downloaded
.msufile and follow the installer. - Restart when prompted.
- Download ResetWUEng.cmd from Microsoft's GitHub repository.
- Right-click the file and choose Run as administrator.
- Follow the prompts. The script stops services, renames folders, re-registers DLLs, and restarts services.
- Restart your PC and check for updates.
- Download the Windows 11 Installation Assistant (or Windows 10 Media Creation Tool).
- Run the tool and choose Upgrade this PC now.
- Select Keep personal files and apps.
- Let the process complete. This can take 30–90 minutes.
- 0x80070002 / 0x80070003 — Missing or corrupted update files. Clear SoftwareDistribution cache.
- 0x8007000E — Out of memory. Close apps, add RAM, or increase virtual memory.
- 0x80073712 — Component store corruption. Run DISM /RestoreHealth.
- 0x80244022 / 0x8024401C — Connection to update server failed. Check firewall, proxy, or VPN.
- 0xC1900101 — Driver conflict during feature update. Update BIOS and chipset drivers first.
- Checking for hardware issues (failing drive, bad RAM) with
chkdsk /fand Windows Memory Diagnostic. - Temporarily uninstalling third-party antivirus or disk encryption software.
- Contacting Microsoft Support or your device manufacturer if the PC is under warranty.
Manually Download and Install the Stalled Update
If a specific update fails repeatedly, download it directly from the Microsoft Update Catalog.
Reset Windows Update Components via Script (Advanced)
If the manual cache clear didn't work, Microsoft's official reset script automates a deeper cleanup.
In-Place Upgrade Repair Install (Last Resort)
This reinstalls Windows while keeping your files, apps, and settings. It resolves deep component store corruption that the above steps can't fix.
Warning: Back up important data first. While this process preserves files, unexpected power loss or hardware issues can still cause data loss.
Common Error Codes and What They Mean
When to Contact Support
If none of the above steps work after two attempts, consider:
Bottom Line
Most stuck updates clear with the troubleshooter, a service restart, or clearing the SoftwareDistribution folder. If those fail, DISM/SFC and manual KB installation cover the majority of remaining cases. The in-place upgrade is a reliable last resort that avoids a full clean install. Start at the top, work down, and you'll almost certainly get updates moving again.