Error 0x800f0900 lives in the engine room of Windows Update: the Component-Based Servicing (CBS) store, the database that tracks every Windows component, its version, and its files. When that database gets corrupted — manifests damaged, metadata inconsistent — updates can’t install because Windows can no longer verify the integrity of what it’s doing. The installer gives up with 0x800f0900.
On 24H2, this tends to surface during cumulative updates or when enabling Windows features. The repair path is well-established: DISM exists precisely to heal the component store, and when DISM needs help, a Windows ISO provides it. Work the list below and the store will be healthy again.
Why this happens
- Interrupted updates or repairs. A DISM run or update killed halfway through leaves the component store half-written — manifests updated but files not staged, or vice versa. The inconsistency then blocks everything after it.
- Disk errors in the WinSxS area. The component store lives in
C:\Windows\WinSxS. Bad sectors or file-system corruption there damage exactly the metadata this error complains about. - Third-party cleaners stripping WinSxS. “Debloating” tools and aggressive disk cleaners that delete component-store files to save space destroy the manifests Windows needs. The few gigabytes saved are never worth the resulting corruption.
- Failed feature updates. Major version upgrades rewrite large parts of the component store. If one fails midway and rolls back imperfectly, the store is left in the inconsistent state that produces 0x800f0900 on subsequent updates.
- Malware or antivirus damage. Malware targeting system files, or antivirus quarantining store components it misidentified, both corrupt the store’s bookkeeping.
- Manifest mismatches after manual tweaks. Manually deleting files from WinSxS, editing the registry’s component keys, or using unofficial “lite” Windows builds creates inconsistencies no automatic tool can fully reconcile.
How to fix it
Work through these in order — start with Fix 1 and only move on if the problem is still there.
Fix 1: Run DISM RestoreHealth
The purpose-built fix — let it do its job before anything exotic.
- Press Win + X and open Terminal (Admin).
- First assess:
DISM /Online /Cleanup-Image /ScanHealth. This reports whether the store is actually corrupted — no point repairing a healthy store. - If corruption is found, run:
DISM /Online /Cleanup-Image /RestoreHealth. Stay online and give it 20–30 minutes without closing the terminal. - Follow with
sfc /scannowto verify system files against the repaired store, then restart and retry the update.
Fix 2: Run DISM with an ISO source
When the store is too damaged to repair itself from Windows Update, hand DISM pristine files.
- Download the Windows 11 24H2 ISO from the official download page — it must match your installed build (Settings > System > About).
- Double-click the ISO to mount it and note the drive letter (for example
E:). - Check the image index:
dism /Get-WimInfo /WimFile:E:\sources\install.wim— note the number for your edition. - Run the repair (adjust drive letter and index):
DISM /Online /Cleanup-Image /RestoreHealth /Source:WIM:E:\sources\install.wim:1 /LimitAccess - On success, run
sfc /scannow, restart, and retry the update. This ISO-source repair is also the answer to its close cousin error 0x800f081f if you ever meet that one.
Fix 3: Reset the Windows Update components
A broken update pipeline can both cause and perpetuate store corruption — fix the pipeline too.
- In Terminal (Admin), stop the services:
net stop wuauservnet stop cryptSvcnet stop bitsnet stop msiserver - Rename the caches:
ren C:\Windows\SoftwareDistribution SoftwareDistribution.oldren C:\Windows\System32\catroot2 catroot2.old - Restart the services:
net start wuauservnet start cryptSvcnet start bitsnet start msiserver - Retry
DISM /Online /Cleanup-Image /RestoreHealth— with a clean pipeline, the default repair source may now work even if it failed before.
Fix 4: Run chkdsk on the system drive
If disk errors caused the corruption, repair the disk or it’ll corrupt the store again.
- In Terminal (Admin), run
chkdsk C: /f /r. - Type
Ywhen asked to schedule for next restart, then reboot and let it run fully — over an hour on large drives. - After chkdsk completes, re-run the DISM repair from Fix 1. Repairs done on a still-damaged disk don’t stick; repairs done after chkdsk do.
- If chkdsk reports many bad sectors, check the drive’s SMART health (
wmic diskdrive get status) — recurring store corruption on a failing drive means the drive needs replacing, not more repairs.
Fix 5: Uninstall the update that triggered it, then reinstall cleanly
Sometimes one specific update’s payload conflicts with your store state.
- Go to Settings > Windows Update > Update history > Uninstall updates and remove the most recent update.
- Restart, then run the DISM ISO-source repair (Fix 2) to get the store fully healthy.
- Download the update manually from the Microsoft Update Catalog
via its KB number and install the
.msudirectly. - Installing onto a repaired store avoids the mismatch that triggered 0x800f0900 in the first place. Manual catalog installs also bypass the download-failure error 0x80240034 .
Fix 6: Remove the offending cleaner or debloater
If a third-party tool caused this, stop it from causing it again.
- Think back: did you run a “PC cleaner,” “debloater,” or “Windows lite” tool before the errors started? If so, uninstall it via Settings > Apps > Installed apps.
- Check whether it has an “undo” or “restore” function — some keep backups of what they removed.
- After removal, run the DISM repair again to heal whatever the tool damaged.
- Going forward, let Windows manage WinSxS itself — the built-in Storage Sense and
dism /online /cleanup-image /startcomponentcleanuphandle cleanup safely without breaking manifests.
Fix 7: In-place upgrade as the definitive repair
When the store is beyond DISM’s reach, reinstall Windows over itself.
- Mount the 24H2 ISO and run setup.exe.
- Choose Keep personal files and apps — the upgrade rebuilds the entire component store from the ISO’s pristine files while preserving everything of yours.
- Allow 30–60 minutes for the upgrade to complete.
- Run Windows Update afterward. With a factory-fresh component store, 0x800f0900 has nothing left to complain about — this resolves it essentially every time.
Closing
Error 0x800f0900 is Windows’ bookkeeping going wrong, and like all bookkeeping problems, it’s fixed by reconciling against a trusted source — which is exactly what DISM with an ISO does. The one habit I’d change after fixing this: stop letting third-party cleaners touch the WinSxS folder. Windows’ component store looks like wasted space, but it’s the spare-parts department for the entire operating system. Delete the spare parts and the next repair fails — which is precisely how many people meet 0x800f0900 in the first place.
