TiWorker.exe — the Windows Modules Installer Worker — is Windows doing its own maintenance: installing updates, servicing components, enabling Windows features. When it runs hot, your CPU sits at 50–100%, the fan roars, and the laptop feels broken. Here’s the uncomfortable truth most guides skip: TiWorker running hot is usually Windows working correctly. The skill is telling “working” from “stuck” — and this guide is built around exactly that distinction.
You’ll learn how long to let it work, how to check what it’s actually doing, and the repair sequence that un-sticks it when it genuinely won’t finish.
Why this happens
- Legitimate post-update servicing: After Patch Tuesday or a feature update, TiWorker installs components and optimizes the store — hours of real work.
- Corrupted SoftwareDistribution cache: Damaged update files make TiWorker retry the same failed work in an endless loop.
- Damaged component store (WinSxS): Corruption in the servicing stack itself prevents operations from completing, so TiWorker never stands down.
- Stuck or partially installed update: An update that can’t finish keeps the worker engaged indefinitely.
- .NET optimization backlog: After updates, the .NET native image generator queues heavy compilation work through the servicing stack.
- Windows feature changes pending: Enabling/disabling features (Hyper-V, .NET Framework versions) triggers extended TiWorker activity.
- Insufficient disk space: Servicing needs working room; a nearly-full C: drive stalls operations mid-flight.
- Third-party interference: Overzealous “debloating” tools that damaged servicing components leave TiWorker spinning on broken dependencies.
How to fix it
Work through these in order — diagnose first, then act.
Fix 1: Check what it’s doing and give it a deadline
Open Task Manager → TiWorker.exe → right-click → Go to details, and check Windows Update (Settings → Windows Update) for pending or recently installed updates. If updates just installed, this is legitimate work: plug in, leave the laptop alone, and give it up to 3 hours. Set a timer. If CPU is still pinned after your deadline — or Update shows nothing pending and TiWorker is hot on every boot — it’s stuck, not working. For the broader family of installer-worker issues, see Windows Modules Installer high CPU .
- Check Windows Update status: pending, installing, or recently completed?
- If recent updates: plug in, leave idle, set a 3-hour deadline.
- If no updates pending and TiWorker is hot → it’s stuck.
- Record your finding; it determines the next step.
Fix 2: Let pending updates fully complete
If updates are pending or mid-install, the worst thing you can do is interrupt. Go to Settings → Windows Update and let everything download and install, rebooting when asked — repeatedly, until Update reports fully up to date. TiWorker often spikes hardest during the finalization phase. Only after Update is clean and the machine has rebooted twice should you judge whether the problem persists. Interrupting servicing mid-flight is how corrupted states (and stuck workers) are born.
- Settings → Windows Update → install everything pending.
- Reboot when prompted; check for more updates; repeat.
- Continue until Update reports fully up to date after a reboot.
- Observe TiWorker for an hour of idle time.
Fix 3: Clear the corrupted update cache
Stop the Windows Update service (admin Terminal: net stop wuauserv and net stop bits), then rename C:\Windows\SoftwareDistribution to SoftwareDistribution.old. Restart the services (net start wuauserv, net start bits). This forces Windows to rebuild its update cache from scratch, breaking the retry loop that keeps TiWorker spinning on damaged files. Check for updates afterward — it will re-scan cleanly. This is the single most effective fix for the “stuck at high CPU with nothing pending” pattern.
- Admin Terminal:
net stop wuauservthennet stop bits. - Rename
C:\Windows\SoftwareDistribution→SoftwareDistribution.old. net start wuauservandnet start bits.- Check for updates; observe TiWorker behavior.
Fix 4: Repair the component store with DISM
Admin Terminal, in order: DISM /Online /Cleanup-Image /ScanHealth to assess, then DISM /Online /Cleanup-Image /RestoreHealth to repair. This fixes the WinSxS component store that TiWorker itself operates on — a damaged store is a classic reason the worker can never finish. Follow with sfc /scannow and reboot. The scan takes 15–30 minutes; let it complete uninterrupted. If DISM reports it repaired corruption, there’s a good chance your TiWorker problem is solved. Microsoft documents these tools on the Windows support site
.
- Admin Terminal:
DISM /Online /Cleanup-Image /RestoreHealth. - Then run
sfc /scannow. - Reboot when finished.
- Monitor TiWorker at idle for an hour.
Fix 5: Free disk space for servicing
Check C: free space — servicing needs room for staging, and under 15–20GB free, operations stall and retry. Run Disk Cleanup as admin with system files (Windows Update Cleanup especially), enable Storage Sense, and move large personal files off C: if needed. After freeing space, trigger a manual update check to let any stalled servicing resume with room to work. This is a mechanical fix for a mechanical problem, and it’s frequently the missing piece when DISM alone didn’t help. Deeper disk guidance: Windows Modules Installer high CPU variants .
- Check C: free space; target 20GB+ free.
- Disk Cleanup (admin) → Clean up system files.
- Enable Storage Sense; move large files off C:.
- Manually check for updates to resume stalled servicing.
Fix 6: Run the Windows Update troubleshooter
Settings → System → Troubleshoot → Other troubleshooters → Windows Update → Run. The troubleshooter resets update components, fixes service registrations, and clears common stuck states automatically. It’s less thorough than the manual cache clear, but it catches service-configuration issues the manual steps miss — and it takes two minutes. Run it after the manual repairs as a final sweep, then reboot and check for updates once more.
- Settings → System → Troubleshoot → Other troubleshooters.
- Run the Windows Update troubleshooter; apply its fixes.
- Reboot.
- Check for updates; observe TiWorker.
Fix 7: In-place upgrade repair for a broken servicing stack
If TiWorker is still pinned after all of the above, the servicing stack itself is damaged beyond DISM’s ability to repair — usually from interrupted updates or aggressive debloating tools. Download Windows 11 media from the official download page , run setup, and keep files and apps. This reinstalls the entire servicing stack cleanly. It’s a 1–2 hour process but it resolves TiWorker issues that nothing else touches, because it replaces the worker’s own infrastructure.
- Download official Windows 11 installation media.
- Run setup → Keep personal files and apps.
- Complete the in-place upgrade (1–2 hours).
- Verify TiWorker idles normally afterward.
Closing
TiWorker high CPU is a patience problem first and a repair problem second: most instances are legitimate servicing that finishes if you let it, and the stuck ones yield to the cache-clear and DISM sequence in that order. The mistake to avoid is treating the worker as the enemy — it’s Windows maintaining itself. Fix what’s blocking it, give it room to work, and it goes quiet on its own.
