Background Intelligent Transfer Service (BITS) is a Windows component that transfers files to and from the network in the background, utilizing only idle network bandwidth. It is the engine behind many Windows updates and Application update flows , and it is available to programs and administrators through APIs, PowerShell, and other command-line tools. In this article, let’s explore the Background Intelligence Transfer Service in detail. Let’s get started.
Key Functions of the Background Intelligent Transfer Service
The functionalities of BITS include the following operations.
- Background Intelligent Transfer Service schedules file transfers when the system is not actively using the network. If the PC is turned off or the internet connection is interrupted, then BITS can resume the download and upload process from where it stopped.
- Many Microsoft Services, including the Microsoft Store and Windows Update, rely on BITS for their functionality.
- BITS is network-friendly as it uses Intelligent throttling , which means it adjusts speed automatically without interfering with Streaming, Browsing, Gaming, etc.
- For Developers, the Background Intelligent Transfer Service can be used to schedule file transfers for background syncing services, such as OneDrive and Microsoft Defender.
BITS has evolved significantly over the years and is crucial for various Windows-related services, including Windows Update, Windows Server Update Services, System Center, Diagnostic Uploads, Telemetry Uploads, Microsoft Defender updates, and more.
How to Control BITS on Windows 11?
On Windows 11, there are several ways to access the Background Intelligent Transfer Service on Windows 11, both GUI and CLI.
- Open Background Intelligent Transfer Service using Services.msc
- Use BITS using the Command Prompt
- Access Background Intelligent Transfer Service using Windows PowerShell
- Configure and run BITS using BITSadmin
Let’s check out the above methods in detail.
Getting Started with BITS on Windows 11 using Services
- To Access BITS on Windows 11 via
services.msc, Go to the Run Command using the keyboard shortcut WinKey + R. - In the Run, execute the following command
services.msc
- You can locate Background Intelligent Transfer Services from the list of services.
- Now, you can find various information related to BITS, such as Status , Start Type , Log On As , and more.
- Right-click on the BITS, and you can find more options such as Start , Stop , Delayed Start , Properties , All Tasks , and more.
- The BITS Properties option provides access to various configurations related to BITS. The following are those options.
Exploring Background Intelligent Transfer Services Properties

Background Intelligent Transfer Service Properties
- Right-click on Background Intelligent Transfer Service and click Properties.
- The BITS Properties dialog will now appear. Here, you can find various tabs with different configurations. The Tabs include General , Log On , Recovery , and Dependencies.
- Let’s explore the options in each tab.
General Tab – BITS
In the General tab , we can find information such as the Service Name , Display Name , Path to Execute , StartUp Type , Service Status , and Start Parameters.
- The Start-up type includes options to specify how it can be started on your Windows 11. The options are Automatic , Manual , Automatic (Delayed), and Disabled.
- With Service Status , you can Start , Stop , Pause , and Resume BITS services on Windows 11.
- The next option is Start Parameters. If BITS is actively running, then this option will be disabled. To explore the options of the Start Parameters, we will have to STOP BITS. Modern Services does not use Start Parameters, as it is a very old Windows Feature. Unless the Service is specifically coded to accept parameters, Start Parameters serve no purpose. We recommend leaving the field empty.
Log On Tab
In the Log On Tab, you can choose between Local System Account or This Account. This tab includes an option called “ Allow Service to Interact with Desktop “. For security reasons, Microsoft isolated services from the user desktop starting with Windows Vista. Services usually run with Local System high privileges, and if they interact with the Desktop, then a malicious app or user may send clicks or keystrokes to take over the service. To avoid this, starting with Windows Vista onwards, Services run on Session 0, and Users run on Session 1. However, this option remains to this date just for backward compatibility.
Important : We strongly recommend not enabling this option, as it can create a potential security vulnerability by allowing high-privilege services to interact directly with the user desktop.
Recovery Tab
- In the Recovery Tab, you can specify the Computer’s response when the service fails. First Failure , Second Failure , Subsequent Failure , Reset Fail Count after , and Restart Service after. These options configure the behavior of Background Intelligent Transfer Services in the event of a Service Failure.
- Other options include Enabling Actions for stops with errors , running a Program , and Specifying Command-Line Parameters.
Dependencies Tab
Some Services depend on other services , system drivers , or load order groups. If a system component is stopped or is not running properly, dependent services can be affected. In this tab, you can view both the services that depend on system components and the system components that rely on services. For example, the Background Intelligent Transfer Service depends on the DCOM Server Process Launcher and the RPC Endpoint Mapper , which are components of the ** Remote Call Procedure**.
Control BITS using Command Prompt on Windows 11
While Microsoft recommends PowerShell to manage the Background Intelligent Transfer Service, there are several commands to control BITS using the Command Prompt.
| Command | Functions |
| net start bits | Start BITS on Windows 11 |
| net stop bits | Stop BITS on Windows 11 |
| sc query bits | Check BITS Status. sc stands for Service Controller |
| sc config bits start= disabled | Disable BITS. This is not recommended, as it may cause issues with Windows Update and Microsoft Store Downloads. This option is intended for testing and troubleshooting purposes. |
| sc config bits start= demand | Windows will not start BITS at boot time. However, any apps that require BITS can start it automatically when needed. |
| sc config bits start= auto | Configures BITS to start automatically every time Windows boots. |
How to Access Background Intelligent Service using Windows PowerShell?
Windows PowerShell provides the most powerful and modern way to manage the Background Intelligent Transfer Service on Windows 11. Unlike the older CLI tools, such as bitsadmin , PowerShell utilizes a dedicated BITS module that is officially supported , offering cleaner automation , improved error handling , and object-based output. Some of the useful commands to handle BITS using PowerShell are as follows.
Note : To Handle Background Intelligent Transfer Service using Windows PowerShell, it is recommended to run PowerShell with Elevated Privileges.
| Command | Function |
| Get-BitsTransfer | List and inspect BITS jobs |
| Start-BitsTransfer | Create and start a download or upload job |
| Suspend-BitsTransfer | Pause a job |
| Resume-BitsTransfer | Resume a suspended job |
| Complete-BitsTransfer | When a job is fully finalized, we must complete it using this command |
| Remove-BitsTransfer | Delete a job |
| Set-BitsTransfer | Change job properties, such as priority |
Configure and run BITS using BITSadmin
BITSadmin is a legacy command-line tool used to manage Background Intelligent Transfer Service (BITS) jobs in Windows. Microsoft has officially deprecated it and recommends PowerShell for the Background Intelligent Transfer Service. For explanation purposes, we are listing the important BITSadmin commands.
| Command | Function |
| bitsadmin /list | Lists all BITS jobs created by the current user. |
| bitsadmin /monitor | Opens a live, continuously updating display of all BITS jobs. Shows real-time progress, retries, and errors. |
| bitsadmin /create (JobName) | Creates a new empty BITS job and returns a Job ID. |
| bitsadmin /transfer (JobName) (URL) | Performs a full one-shot transfer in a single command. |
| bitsadmin /resume (JobName) | Starts or resumes a job. If the job was paused or interrupted (network failure, reboot), this command continues the transfer. |
| bitsadmin /suspend (JobName) | Pauses a running job. This command is useful when you want to temporarily stop a transfer without deleting it. |
| bitsadmin /cancel (JobName) | Cancels and deletes the job entirely. Any partially downloaded files are removed. Ideal for removing stuck or unwanted transfers. |
| bitsadmin /reset | This is a powerful command and should be used only when BITS is corrupted or heavily stuck. Deletes all BITS jobs from every user on the system. |
| bitsadmin /setreplyfile (JobName) (LocalFile) | Specifies a file where the server will write a response after a BITS upload. |
How to Run the Background Intelligent Transfer Service Troubleshooter using Windows Settings?
Windows 11 provides a GUI way to access and run the BITS Troubleshooter. Here are the steps. Instead of trying to stop or pause BITS on your own using the above methods, Winsides.com recommends users to use the built-in Background Intelligent Transfer Service Troubleshooter to diagnose issues related to BITS in the first place. Here are the steps.
- Go to the Windows Settings using the keyboard shortcut WinKey + R.
- In the Windows Settings, from the left pane , click on System.
- Navigate to the Troubleshooters option.
- Under Options , open Other Troubleshooters.
- You can find the Background Intelligent Transfer Service under Other options. Click on Run to start BITS Troubleshooter on Windows 11.

Run BITS Troubleshooter on Windows 11
- You can then follow the screen options and complete the process.
Frequently Asked Questions
Why is BITS Running even when I am not downloading anything?
It is normal for BITS to run occasionally even when you are not manually downloading anything. BITS runs in the background to process Windows Updates Checks, Downloading Update Metadata, Store App Updates, Diagnostic Uploads, and more.
Does BITS affect Gaming or Streaming Performance?
Background Intelligent Transfer Service does not affect Gaming or Streaming Performance as it automatically throttles itself and backs off when we are watching High Resolution Video, Browser Downloads, Playing Games, Streaming Contents, and more.
Should I Disable BITS on Windows 11? Is it Safe to Disable BITS?
It is not recommeneded to disable BITS on Windows 11 unless you fully understand the consequences. Disabling BITS on Windows 11 can break Windows Update, Store Downloads, Microsoft Defender Updates, Telemetry Uploads, and more which are crucial for the stable system. Disabling BITS on Windows 11 is only for testing and troubleshooting purposes.
Does BITS use CPU?
Background Intelligent Transfer Service almost use no CPU and it only coordinates Transfers. Actual download work is handled by the networking stack. CPU usage remains extremely low unless you are querying jobs or processing many simultaneous transfers.
What happens if a BITS Job gets stuck?
When a BITS Job gets stuck, it can cause update problems. It is recommended to use the Troubleshooter in the Windows Settings, and address the issues.
Take Away
Background Intelligent Transfer Service on Windows 11 is one of the most essential yet often overlooked components of Windows 11. It silently powers many of the operating system’s most important features by handling downloads and uploads in a reliable, efficient, and bandwidth friendly way.
Have Queries?
We hope you are satisfied with our article on BITS and if you have any queries , kindly let us know in the comment section. For more interesting articles, stay tuned to Winsides.com. Happy Computing! Peace Out!












Top comments (0)