Service Host: Local System high CPU usage means a Windows service host is busy, but the group name does not identify the cause. Open Task Manager, expand the busy entry, and match its process ID to the services inside it before choosing a fix. If Windows or a Store app is actively updating, let that work finish and restart when requested. If the load returns while the PC is idle, use the service name and the action that triggers it to narrow the problem. Do not disable the whole Local System group or delete svchost.exe.
The same label can lead to very different repairs. An update making progress, an app repeatedly failing, and an unwanted program running in the background should not all receive the same “turn off services” treatment.
What is Service Host: Local System?
svchost.exe, displayed as Service Host, loads Windows services. Local System describes one of the service-host groupings; Local System (Network Restricted) is another normal group label, not a malware detection or a warning that your internet connection has been blocked. Microsoft groups services according to their security requirements. [1]
Windows versions and configurations can show services separately or together. That is why an older screenshot may show a large Local System group while your PC lists several individually named Service Host entries. You do not need to recreate the old grouping to troubleshoot it.
1. Identify the busy process and its services
- Press Ctrl + Shift + Esc and open Processes. Sort by CPU while the slowdown is happening. On older Task Manager layouts, select More details first.
- Expand the busy Service Host: Local System entry and write down the displayed service names. Check the actual busy row: a similarly named Local Service or Network Service group may be a different process.
- Right-click the host and select Go to details, where available. Record its PID (process ID). From the matching row in Details, use Go to service(s) to highlight the services hosted by that process.
- Keep the time and trigger with the PID: for example, “starts when opening one app,” “during a download,” or “continues after updates finish.” Match the current PID again after a restart; it can change.
If you prefer a command, open Command Prompt and run tasklist /svc /fi "PID eq 1234", replacing 1234 with the PID you just recorded. This lists the services associated with that process; it does not stop anything. Microsoft documents both the service-list option and the PID filter. [2]
A list of services is not a CPU breakdown. If several services share one PID, every highlighted service is a member of the host—not necessarily the one consuming processor time. Avoid blaming the first name in the list or stopping members one by one at random.
For an optional closer look on Windows 11, Microsoft’s Process Explorer can show the selected process, its properties and loaded components. Obtain it from the official source in References. Its current download lists Windows 11 and later as supported client systems; Windows 10 readers can use Task Manager and tasklist for the identification steps above. Do not use the tool’s kill or suspend controls as a generic fix. [3]
2. Follow the resource and service that are actually busy
A PC can feel slow with modest CPU use because storage, memory or the network is the bottleneck. Sort the relevant Task Manager column before applying a CPU fix:
- CPU stays high: track the identified service and the action that starts the load. A brief burst during an installation is different from repeated idle activity that leaves the desktop unresponsive.
- Disk stays busy while CPU is low: open
resmonfrom Win + R and inspect the Disk tab during the slowdown. Look for the process doing the I/O. Do not disable SysMain merely because an old guide associates every Local System problem with Superfetch. - Network use is the main symptom: match the PID in Resource Monitor’s Network tab and compare sending with receiving. The Service Host network-usage guide explains how to identify update traffic and choose the appropriate bandwidth control.
- Memory grows repeatedly: note the exact process and whether its usage continues rising under the same workload. High memory use is not interchangeable with high CPU, and a large group total alone does not identify a leak.
Once a service or process is identified, use the matching branch instead of applying every repair:
- State Repository Service: use the State Repository high-CPU guide to match the load to app launches, package failures and app repair.
- Diagnostic Policy Service: follow the Diagnostic Policy Service guide to find what repeatedly starts diagnostics.
- WSAPPX or Microsoft Store installation activity: check the Store download queue. The WSAPPX troubleshooting guide separates progressing app deployment from a stuck app.
- System interrupts is the busy row: it is a different diagnostic branch. Use the System interrupts high-CPU guide to investigate devices and drivers.
- Windows Update or a transfer service: check the update or app queue for progress, a pending restart and a specific error. A service name alone does not prove that the transfer is stuck.
3. Test the trigger before changing Windows
Save your work, finish any pending restart, and compare a short idle period with the action that normally causes the spike. Keep other activity similar and change one thing at a time. If an update advances and eventually finishes, recheck afterward. If the same update repeatedly fails, record its error code and troubleshoot that failure rather than permanently disabling Windows Update.
Example: Task Manager shows a busy Local System host containing several services. Opening one Store app brings the spike back, and closing it lets the load settle. That is a useful lead toward the app or work it requests from Windows; it does not prove that every service in the host is faulty. Update or repair that app, repeat the same launch, and compare the result. If the spike also occurs without the app, broaden the investigation.
Search Windows for View reliability history to see whether an app failure or installation lines up with the time you recorded. Focus on repeatable events close to the slowdown. An old warning elsewhere in the log is not automatically its cause.
If the problem began after installing a particular optional app, first close or update that app and retest. Do not turn off security software, networking services, RPC or DCOM dependencies to obtain a quieter CPU graph. On a managed work PC, give IT the service names, PID, timestamps and repeatable trigger.
4. Repair Windows if other components also fail
Use system repair when persistent service problems accompany broken Windows features, repeated component errors or broader instability. It is not a substitute for identifying an app that simply needs an update.
Open Terminal (Admin) or Command Prompt (Admin). Run DISM.exe /Online /Cleanup-Image /RestoreHealth and wait for successful completion. Then run sfc /scannow and let verification reach 100%. Microsoft specifies DISM before SFC in its repair instructions. [4]
Record any error or repair result, restart, and repeat the original test. If DISM fails, follow that error instead of repeatedly launching the next command. If CPU remains high, retain the service/PID evidence for further diagnosis; do not download replacement Windows executables or apply unrelated registry “fixes.”
When to check for malware
High CPU and the words Local System are not evidence of infection by themselves. A malware check becomes more relevant when the slowdown follows an unknown installer or fake update, security warnings recur, or other unwanted changes appear alongside it. An unwanted program can also create work for legitimate Windows components.
In that situation, download and install Gridinsoft Anti-Malware, update its database, run a Full Scan, review the results, remove detected threats and restart. A full scan is more useful than deleting one suspicious-looking process: a remaining service, scheduled task or bundled component may restart unwanted activity.
If the process path is wrong, the name imitates a Windows component, or high CPU started after an unknown installer, scan for hidden miners, services, startup entries, and bundled components.
Run a malware checkIf you specifically suspect a lookalike executable, the svchost.exe safety guide explains that separate question. Do not delete C:\Windows\System32\svchost.exe to fix resource usage. A scan with no threats detected does not guarantee that every possible threat is absent or explain a Windows performance fault.
After the restart, repeat the same app or update action and compare the same resource column. If the load still returns, continue with the identified service’s repair path. The useful outcome is a working PC with the cause addressed, not merely a service stopped long enough to lower the graph.
References
- Microsoft. “Service host grouping in Windows 10.” Microsoft Learn, updated February 24, 2023; accessed September 30, 2026. Service host architecture.
- Microsoft. “tasklist.” Microsoft Learn, updated February 3, 2023; accessed September 30, 2026. Service and process filters.
- Mark Russinovich. “Process Explorer.” Microsoft Sysinternals, September 10, 2026; accessed September 30, 2026. Official download and supported systems.
- Microsoft. “Using System File Checker in Windows.” Microsoft Support, accessed September 30, 2026. Windows system-file repair sequence.

