Windows Modules Installer Worker (TiWorker.exe) camping at 30–80% CPU in Task Manager sends a lot of people down a malware rabbit hole. It’s not malware — it’s Windows Update doing its job. TiWorker is the engine that installs updates, optional features, and system components: decompressing packages, resolving dependencies, writing files. That work is legitimately CPU-intensive, and on a big feature update it can run hot for hours.
The key skill here is telling “working” from “stuck.” A TiWorker that’s making progress will finish and go quiet on its own — interrupting it is how you get corrupted updates. A TiWorker that’s been spinning for days with the update progress bar frozen is stuck, and there are clean, safe ways to unstick it. This guide shows you how to tell the difference and what to do in each case. For broader update-related slowness, see Runtime Broker high CPU after updates ; for general speedups, speeding up a slow Windows 11 laptop .
Why this happens
- Feature update installing: 24H2-class updates keep TiWorker busy for 1–3 hours — normal.
- Cumulative update finalizing: Monthly updates trigger 15–60 minutes of component installation.
- Stuck or looping update: A corrupted download makes TiWorker retry the same work endlessly.
- Corrupted SoftwareDistribution cache: Damaged update files cause repeated failed install attempts.
- Component store (WinSxS) cleanup: Post-update cleanup tasks invoke TiWorker outside visible updates.
- Optional features installing: Language packs, .NET versions, and features-on-demand install via TiWorker silently.
- Driver updates via Windows Update: Driver packages install through the same pipeline, extending TiWorker’s run time.
How to fix it
Work through these in order — diagnose first, then act.
Fix 1: Check whether an update is actually in progress
The most important diagnostic — don’t interrupt real work.
- Open Settings > Windows Update — look for “Downloading,” “Installing,” or a pending restart. Any of these means TiWorker is legitimately working.
- Check the percentage: if it’s moving (even slowly), let it cook. Go make coffee.
- Open Settings > Windows Update > Update history — a recently installed update may still be finalizing components in the background.
- Check Advanced options > Optional updates — pending driver or feature installs also drive TiWorker.
- Rule of thumb: if Windows Update shows activity within the last few hours, TiWorker gets a pass. Only proceed to fixes if it’s been stuck for many hours or days.
Fix 2: Let it finish under good conditions
If it’s working, help it finish faster instead of fighting it.
- Plug in the laptop — Windows throttles update installation on battery, stretching a 30-minute job into hours.
- Close heavy applications to free CPU and disk for the installer.
- Stay connected to stable internet — interrupted downloads restart and extend the process.
- Don’t reboot mid-install unless Windows explicitly asks — a forced reboot during component installation is the #1 cause of stuck updates.
- Set Active hours (Settings > Windows Update > Advanced options) so future updates install overnight instead of during your workday.
Fix 3: Run the Windows Update troubleshooter
For updates that seem stalled.
- Go to Settings > System > Troubleshoot > Other troubleshooters.
- Click Run next to Windows Update and follow the prompts — it resets update services and fixes common corruption automatically.
- Restart after it completes, then check Settings > Windows Update for movement.
- This resolves a surprising number of “TiWorker stuck at 50% for two days” cases.
- Microsoft’s guided help for update problems is at Microsoft Support .
Fix 4: Reset the SoftwareDistribution cache
The classic fix for corrupted update downloads that keep TiWorker looping.
- Open Terminal as administrator.
- Run these commands in order, pressing Enter after each:
net stop wuauservnet stop cryptSvcnet stop bitsnet stop msiserver - Rename the cache folders:
ren C:\Windows\SoftwareDistribution SoftwareDistribution.oldren C:\Windows\System32\catroot2 catroot2.old - Restart the services:
net start wuauservnet start cryptSvcnet start bitsnet start msiserver - Go to Settings > Windows Update > Check for updates — Windows rebuilds the cache and re-downloads cleanly. TiWorker should now make steady progress.
Fix 5: Repair the component store with DISM and SFC
When TiWorker struggles with damaged system components.
- In an elevated Terminal, run:
DISM /Online /Cleanup-Image /RestoreHealth— this repairs the component store TiWorker works from. It takes 10–20 minutes. - Then run:
sfc /scannowto fix protected system files. - Restart, then check Windows Update again.
- If DISM itself fails, the component store is badly damaged — consider the in-place upgrade in Fix 7.
- These two commands fix a wide class of “update installs to 90% then rolls back” loops that keep TiWorker churning.
Fix 6: Install the stuck update manually
Bypass the broken automatic pipeline.
- In Settings > Windows Update > Update history, note the KB number of the failing update (e.g., KB5037771).
- Go to the Microsoft Update Catalog , search the KB number, and download the version matching your system (x64 for most laptops).
- Run the downloaded
.msufile — the standalone installer often succeeds where Windows Update loops. - Restart when prompted and verify in Update history that it shows as installed.
- Manual installs don’t fix the underlying Windows Update problem, but they get the security patch applied — then run the troubleshooter (Fix 3) to heal the pipeline.
Fix 7: In-place upgrade repair (last resort)
Refresh Windows while keeping everything.
- Download the Windows 11 Installation Assistant or ISO from the Windows 11 download page .
- Run setup from within Windows and choose Keep personal files and apps.
- This reinstalls all system components — including the entire update pipeline — while preserving your files and programs. It takes 30–90 minutes.
- Afterward, TiWorker behavior should be completely normal.
- This is the definitive fix for update systems damaged beyond what DISM can repair.
Closing
Windows Modules Installer Worker high CPU is Windows Update working — until it isn’t. Check for real progress first, give legitimate installs the plugged-in time they need, and only reach for the cache reset and repair tools when TiWorker is clearly stuck. Nine times out of ten, patience or a SoftwareDistribution reset ends the story.
