Windows Update error 0x80070422
Windows Update error 0x80070422 appears the moment you open Settings › Update & Security and click Check for updates, and Windows stops with a message that a required service could not be started. The number is the system's code for “service disabled”: its Win32 form is ERROR_SERVICE_DISABLED (1058). In plain terms, Windows Update tried to launch its own background service and found it turned off or unable to start, so the update job never began at all.
What it means
Windows Update is not a single program. It relies on a small group of services — most importantly the Windows Update service (wuauserv) and the Background Intelligent Transfer Service (bits) — to scan, download and install packages. When you press Check for updates, the Settings app asks wuauserv to start. If that service's startup type has been set to Disabled, or if it is set to Manual but something keeps it from starting, the request fails and Windows records 0x80070422.
The code is generic: it is returned whenever a service Windows needs is disabled, so more than one component can trigger it. Alongside wuauserv and bits, the Windows Update Medic Service (WaaSMedicSvc) and Delivery Optimization can be involved. The reason a service ends up switched off is often an optimisation utility, a debloat script, or a managed policy that disabled these services to “speed up” the PC and never restored them.
It is worth knowing that Windows protects some of these services and may refuse to re-enable them through the Services console, reporting Access is denied. When that happens the change has to be made through the registry or an elevated command. The encouraging part is that this is one of the simpler update errors to resolve, because the cause is usually a setting rather than damaged files.
Common causes
- The Windows Update service
wuauservis stopped and set to Disabled. - The Background Intelligent Transfer Service
bitsis disabled, so updates cannot download. - A third-party “optimiser” or privacy tool switched the update services off.
- A managed policy, migration script or registry tweak left the services disabled.
- The Windows Update Medic Service failed and reset the update service state.
How to fix it
- Set the services to start. Open an elevated Command Prompt (right-click Start and choose Terminal (Admin) or Command Prompt (Admin)) and run:
sc config wuauserv start= demand sc config bits start= delayed-auto sc start wuauserv sc start bits - Confirm in the Services console. Press
Win+R, typeservices.mscand check that Windows Update and Background Intelligent Transfer Service are not set to Disabled. If a service is greyed out, edit the registry: openregedit, go toHKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\wuauserv, set theStartvalue to3(Manual), then reboot. - Rebuild the update store so the client starts fresh:
net stop wuauserv net stop bits ren C:\Windows\SoftwareDistribution SoftwareDistribution.old net start wuauserv net start bits - Run the built-in troubleshooter. Go to Settings › System › Troubleshoot › Other troubleshooters, then Run next to Windows Update.
- Repair system files. In an elevated prompt run
sfc /scannow, thenDISM /Online /Cleanup-Image /RestoreHealth, and restart.
How to prevent it
Avoid “debloat” and service-tweaking utilities that promise a faster PC by turning off Windows Update. The small speed gain is not worth a machine that silently stops receiving security patches. If the PC is managed, ask your administrator to confirm that no policy is disabling the update services; on a home PC, check whether any third-party cleaner runs on a schedule and re-disables them after every boot.
It also pays to keep the update services at their defaults. Windows Update is designed to run on demand, starting only when needed, so a service that looks “stopped” is normal as long as its startup type is not Disabled. Leave wuauserv on Manual and bits on Automatic (Delayed Start). Finally, keep a current backup or restore point so that if an update breaks something you can roll back instead of reaching for a disabling script.