Windows command guide
Repair BITS Service and Stuck Windows Update Jobs
BITS sits quietly underneath Windows Update and other background transfer workflows. When its queued jobs become stale or the service state is unhealthy, updates can appear frozen even though the main Windows Update interface does not clearly explain why. This page focuses on that transport layer instead of resetting the whole update stack first.
This guide is written around the specific symptom-command match for repair bits service and stuck update jobs, not as a generic dump of terminal lines. That makes the page more useful for real troubleshooting and reduces the chance of running the wrong repair step.
sc query bits
net stop bits
net start bits
bitsadmin /reset /allusers
sc query bits
Best place to run it
Elevated Command Prompt is the right execution context for this page. Because this repair touches protected Windows state, a normal unelevated shell can return misleading access errors or partial results.
Fast repair workflow
- Start from the exact symptom on this page: Windows Update downloads stay idle for too long
- Run the service or app repair line exactly as shown: sc query bits net stop bits net start bits bitsadmin /reset /allusers sc query bits.
- This workflow is tuned for this repair, so avoid mixing it with unrelated repair commands too early.
- Re-open the affected app, service, or feature and check whether the same component still fails.
- If the issue persists, check service state, dependencies, package integrity, or event logs before doing a broader repair.
Copyable wrapper script
Use this wrapper when you want the page command inside a clearer script block with start and finish prompts.
@echo off
echo Run this CMD sequence in an elevated Command Prompt.
echo Starting targeted repair sequence...
sc query bits
net stop bits
net start bits
bitsadmin /reset /allusers
sc query bits
echo.
echo Review the output before closing this window.
pause
Verification commands after the repair
These follow-up commands help you check whether the repair actually changed the Windows state that matters, instead of assuming success from a single line.
sc query type= service state= all | findstr /I RUNNING
What problem this workflow is trying to solve
It targets downloads that appear stuck because Background Intelligent Transfer Service jobs are stale, jammed, or attached to a bad service state.
- Windows Update downloads stay idle for too long.
- Transfers seem queued but make no visible progress.
- You suspect the transfer layer is jammed even though the wider system still works.
How the workflow works
The commands check BITS, restart the service, clear queued jobs for all users, and verify the service state afterward so you can see whether the transfer layer recovered.
When it makes sense to run it
Use it when the download mechanism appears stuck and you want a more focused transport-layer repair before doing a full Windows Update reset.
Before you run this command
- Open an elevated Command Prompt or PowerShell window before running sc query bits net stop bits net start bits bitsadmin /reset /allusers sc query bits.
- Confirm that the symptom really matches this guide, especially if you are seeing signs such as: windows update downloads stay idle for too long.
- Identify the exact Windows component that is failing before you use sc query bits net stop bits net start bits bitsadmin /reset /allusers sc query bits, so you do not reset unrelated parts of the system.
What result to expect
After running sc query bits net stop bits net start bits bitsadmin /reset /allusers sc query bits, compare the result against the symptom that brought you here. The most useful checkpoint is whether windows update downloads stay idle for too long becomes less frequent, changes form, or produces a clearer error message. A command page is stronger when it helps you verify a real change instead of just assuming the line must have worked.
How to verify that it worked
The best verification step after sc query bits net stop bits net start bits bitsadmin /reset /allusers sc query bits is to repeat the action that previously triggered the problem. If transfers seem queued but make no visible progress still appears in exactly the same way, the command probably was not the whole answer and you should move to the next targeted check instead of assuming the page is finished.
Why administrator rights matter here
This command changes a Windows service, package, or built-in app component. Run it in an elevated shell so Windows can apply the repair instead of only returning an access or privilege error.
Before you run it
Clearing all BITS jobs removes active queued background transfers for all users. That is often acceptable on a home PC but should be considered carefully on shared or managed systems.
When this is probably the wrong fix
This is not the right first fix for every generic crash. Use it when the failing part is a Windows service, built-in app package, indexing component, print queue, audio stack, or similar subsystem.
What to do if it does not help
If sc query bits net stop bits net start bits bitsadmin /reset /allusers sc query bits does not improve windows update downloads stay idle for too long, move to the next repair step that matches the same symptom family instead of piling on random commands. The best follow-up depends on whether the failure is mainly about a Windows service, package, or built-in app component.
Frequently asked questions
Should I use sc query bits net stop bits net start bits bitsadmin /reset /allusers sc query bits for this exact Windows symptom?
Use it when the behavior on your PC lines up with the repair target on this page: It targets downloads that appear stuck because Background Intelligent Transfer Service jobs are stale, jammed, or attached to a bad service state.
What should I check right after sc query bits net stop bits net start bits bitsadmin /reset /allusers sc query bits?
Check whether the original trigger still reproduces the same failure. For this page, a useful checkpoint is whether windows update downloads stay idle for too long becomes less frequent, changes form, or points you toward a more specific next step.
When should I not rely on sc query bits net stop bits net start bits bitsadmin /reset /allusers sc query bits alone?
This is not the right first fix for every generic crash. Use it when the failing part is a Windows service, built-in app package, indexing component, print queue, audio stack, or similar subsystem.