Set default download behavior for BITS jobs on costed networks: registry value ForegroundTransferPolicy and 7 moreComputerHKLM\Software\Policies\Microsoft\Windows\BITS\TransferPolicy
- Policy ID
- BITS_SetTransferPolicyOnCostedNetwork
- Scope
- Computer Configuration
- Supported on
- Windows 8 or Windows Server 2012 or Windows RT or computers with BITS 5 installed.
- Source
- Administrative Templates (.admx) for Windows 11 2026 Update (26H2) (version 1.0)
- Category
- Network › Background Intelligent Transfer Service (BITS)
Registry
ForegroundTransferPolicy
REG_DWORDComputer- Enabled value
- Depends on the option value
- Element
- Foreground
| Item | Stored value |
|---|---|
| Always transfer | 2147483903 |
| Transfer unless roaming | 2147483775 |
| Transfer unless surcharge applies (when not roaming or overcap) | 2147483759 |
| Transfer unless nearing limit (when not roaming or nearing cap) | 2147483751 |
| Transfer only if unconstrained | 2147483681 |
| Custom | 255 Software\Policies\Microsoft\Windows\BITS\TransferPolicy\ForegroundTransferPolicy = (delete value) |
Apply with .reg · CMD · PowerShell
.reg
Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\Windows\BITS\TransferPolicy] ; Options (use only one) ; Always transfer "ForegroundTransferPolicy"=dword:800000ff ; Transfer unless roaming "ForegroundTransferPolicy"=dword:8000007f ; Transfer unless surcharge applies (when not roaming or overcap) "ForegroundTransferPolicy"=dword:8000006f ; Transfer unless nearing limit (when not roaming or nearing cap) "ForegroundTransferPolicy"=dword:80000067 ; Transfer only if unconstrained "ForegroundTransferPolicy"=dword:80000021 ; Custom "ForegroundTransferPolicy"=dword:000000ff "ForegroundTransferPolicy"=-
CMD
:: Options (use only one) :: Always transfer reg add "HKLM\Software\Policies\Microsoft\Windows\BITS\TransferPolicy" /v "ForegroundTransferPolicy" /t REG_DWORD /d 2147483903 /f :: Transfer unless roaming reg add "HKLM\Software\Policies\Microsoft\Windows\BITS\TransferPolicy" /v "ForegroundTransferPolicy" /t REG_DWORD /d 2147483775 /f :: Transfer unless surcharge applies (when not roaming or overcap) reg add "HKLM\Software\Policies\Microsoft\Windows\BITS\TransferPolicy" /v "ForegroundTransferPolicy" /t REG_DWORD /d 2147483759 /f :: Transfer unless nearing limit (when not roaming or nearing cap) reg add "HKLM\Software\Policies\Microsoft\Windows\BITS\TransferPolicy" /v "ForegroundTransferPolicy" /t REG_DWORD /d 2147483751 /f :: Transfer only if unconstrained reg add "HKLM\Software\Policies\Microsoft\Windows\BITS\TransferPolicy" /v "ForegroundTransferPolicy" /t REG_DWORD /d 2147483681 /f :: Custom reg add "HKLM\Software\Policies\Microsoft\Windows\BITS\TransferPolicy" /v "ForegroundTransferPolicy" /t REG_DWORD /d 255 /f reg delete "HKLM\Software\Policies\Microsoft\Windows\BITS\TransferPolicy" /v "ForegroundTransferPolicy" /f
PowerShell
# Common: create the key New-Item -Path 'HKLM:\Software\Policies\Microsoft\Windows\BITS\TransferPolicy' -Force | Out-Null # Options (use only one) # Always transfer New-ItemProperty -Path 'HKLM:\Software\Policies\Microsoft\Windows\BITS\TransferPolicy' -Name 'ForegroundTransferPolicy' -PropertyType DWord -Value 2147483903 -Force | Out-Null # Transfer unless roaming New-ItemProperty -Path 'HKLM:\Software\Policies\Microsoft\Windows\BITS\TransferPolicy' -Name 'ForegroundTransferPolicy' -PropertyType DWord -Value 2147483775 -Force | Out-Null # Transfer unless surcharge applies (when not roaming or overcap) New-ItemProperty -Path 'HKLM:\Software\Policies\Microsoft\Windows\BITS\TransferPolicy' -Name 'ForegroundTransferPolicy' -PropertyType DWord -Value 2147483759 -Force | Out-Null # Transfer unless nearing limit (when not roaming or nearing cap) New-ItemProperty -Path 'HKLM:\Software\Policies\Microsoft\Windows\BITS\TransferPolicy' -Name 'ForegroundTransferPolicy' -PropertyType DWord -Value 2147483751 -Force | Out-Null # Transfer only if unconstrained New-ItemProperty -Path 'HKLM:\Software\Policies\Microsoft\Windows\BITS\TransferPolicy' -Name 'ForegroundTransferPolicy' -PropertyType DWord -Value 2147483681 -Force | Out-Null # Custom New-ItemProperty -Path 'HKLM:\Software\Policies\Microsoft\Windows\BITS\TransferPolicy' -Name 'ForegroundTransferPolicy' -PropertyType DWord -Value 255 -Force | Out-Null Remove-ItemProperty -Path 'HKLM:\Software\Policies\Microsoft\Windows\BITS\TransferPolicy' -Name 'ForegroundTransferPolicy'
ForegroundTransferPolicyCustom
REG_DWORDComputer- Enabled value
- Depends on the option value
- Element
- Foreground (Custom)
- Value type
- REG_DWORD
- Maximum value
- 2147483647
Apply with .reg · CMD · PowerShell
.reg
Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\Windows\BITS\TransferPolicy] ; Value names and types follow the ADMX. Replace <enter value> below with your own data "ForegroundTransferPolicyCustom"=dword:<enter value>
CMD
:: Value names and types follow the ADMX. Replace <enter value> below with your own data reg add "HKLM\Software\Policies\Microsoft\Windows\BITS\TransferPolicy" /v "ForegroundTransferPolicyCustom" /t REG_DWORD /d "<enter value>" /f
PowerShell
# Value names and types follow the ADMX. Replace <enter value> below with your own data New-Item -Path 'HKLM:\Software\Policies\Microsoft\Windows\BITS\TransferPolicy' -Force | Out-Null New-ItemProperty -Path 'HKLM:\Software\Policies\Microsoft\Windows\BITS\TransferPolicy' -Name 'ForegroundTransferPolicyCustom' -PropertyType DWord -Value '<enter value>' -Force | Out-Null
HighTransferPolicy
REG_DWORDComputer- Enabled value
- Depends on the option value
- Element
- High
| Item | Stored value |
|---|---|
| Always transfer | 255 |
| Transfer unless roaming | 127 |
| Transfer unless surcharge applies (when not roaming or overcap) | 111 |
| Transfer unless nearing limit (when not roaming or nearing cap) | 103 |
| Transfer only if unconstrained | 33 |
| Custom | 255 Software\Policies\Microsoft\Windows\BITS\TransferPolicy\HighTransferPolicy = (delete value) |
Apply with .reg · CMD · PowerShell
.reg
Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\Windows\BITS\TransferPolicy] ; Options (use only one) ; Always transfer "HighTransferPolicy"=dword:000000ff ; Transfer unless roaming "HighTransferPolicy"=dword:0000007f ; Transfer unless surcharge applies (when not roaming or overcap) "HighTransferPolicy"=dword:0000006f ; Transfer unless nearing limit (when not roaming or nearing cap) "HighTransferPolicy"=dword:00000067 ; Transfer only if unconstrained "HighTransferPolicy"=dword:00000021 ; Custom "HighTransferPolicy"=dword:000000ff "HighTransferPolicy"=-
CMD
:: Options (use only one) :: Always transfer reg add "HKLM\Software\Policies\Microsoft\Windows\BITS\TransferPolicy" /v "HighTransferPolicy" /t REG_DWORD /d 255 /f :: Transfer unless roaming reg add "HKLM\Software\Policies\Microsoft\Windows\BITS\TransferPolicy" /v "HighTransferPolicy" /t REG_DWORD /d 127 /f :: Transfer unless surcharge applies (when not roaming or overcap) reg add "HKLM\Software\Policies\Microsoft\Windows\BITS\TransferPolicy" /v "HighTransferPolicy" /t REG_DWORD /d 111 /f :: Transfer unless nearing limit (when not roaming or nearing cap) reg add "HKLM\Software\Policies\Microsoft\Windows\BITS\TransferPolicy" /v "HighTransferPolicy" /t REG_DWORD /d 103 /f :: Transfer only if unconstrained reg add "HKLM\Software\Policies\Microsoft\Windows\BITS\TransferPolicy" /v "HighTransferPolicy" /t REG_DWORD /d 33 /f :: Custom reg add "HKLM\Software\Policies\Microsoft\Windows\BITS\TransferPolicy" /v "HighTransferPolicy" /t REG_DWORD /d 255 /f reg delete "HKLM\Software\Policies\Microsoft\Windows\BITS\TransferPolicy" /v "HighTransferPolicy" /f
PowerShell
# Common: create the key New-Item -Path 'HKLM:\Software\Policies\Microsoft\Windows\BITS\TransferPolicy' -Force | Out-Null # Options (use only one) # Always transfer New-ItemProperty -Path 'HKLM:\Software\Policies\Microsoft\Windows\BITS\TransferPolicy' -Name 'HighTransferPolicy' -PropertyType DWord -Value 255 -Force | Out-Null # Transfer unless roaming New-ItemProperty -Path 'HKLM:\Software\Policies\Microsoft\Windows\BITS\TransferPolicy' -Name 'HighTransferPolicy' -PropertyType DWord -Value 127 -Force | Out-Null # Transfer unless surcharge applies (when not roaming or overcap) New-ItemProperty -Path 'HKLM:\Software\Policies\Microsoft\Windows\BITS\TransferPolicy' -Name 'HighTransferPolicy' -PropertyType DWord -Value 111 -Force | Out-Null # Transfer unless nearing limit (when not roaming or nearing cap) New-ItemProperty -Path 'HKLM:\Software\Policies\Microsoft\Windows\BITS\TransferPolicy' -Name 'HighTransferPolicy' -PropertyType DWord -Value 103 -Force | Out-Null # Transfer only if unconstrained New-ItemProperty -Path 'HKLM:\Software\Policies\Microsoft\Windows\BITS\TransferPolicy' -Name 'HighTransferPolicy' -PropertyType DWord -Value 33 -Force | Out-Null # Custom New-ItemProperty -Path 'HKLM:\Software\Policies\Microsoft\Windows\BITS\TransferPolicy' -Name 'HighTransferPolicy' -PropertyType DWord -Value 255 -Force | Out-Null Remove-ItemProperty -Path 'HKLM:\Software\Policies\Microsoft\Windows\BITS\TransferPolicy' -Name 'HighTransferPolicy'
HighTransferPolicyCustom
REG_DWORDComputer- Enabled value
- Depends on the option value
- Element
- High (Custom)
- Value type
- REG_DWORD
- Maximum value
- 2147483647
Apply with .reg · CMD · PowerShell
.reg
Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\Windows\BITS\TransferPolicy] ; Value names and types follow the ADMX. Replace <enter value> below with your own data "HighTransferPolicyCustom"=dword:<enter value>
CMD
:: Value names and types follow the ADMX. Replace <enter value> below with your own data reg add "HKLM\Software\Policies\Microsoft\Windows\BITS\TransferPolicy" /v "HighTransferPolicyCustom" /t REG_DWORD /d "<enter value>" /f
PowerShell
# Value names and types follow the ADMX. Replace <enter value> below with your own data New-Item -Path 'HKLM:\Software\Policies\Microsoft\Windows\BITS\TransferPolicy' -Force | Out-Null New-ItemProperty -Path 'HKLM:\Software\Policies\Microsoft\Windows\BITS\TransferPolicy' -Name 'HighTransferPolicyCustom' -PropertyType DWord -Value '<enter value>' -Force | Out-Null
NormalTransferPolicy
REG_DWORDComputer- Enabled value
- Depends on the option value
- Element
- Normal
| Item | Stored value |
|---|---|
| Always transfer | 255 |
| Transfer unless roaming | 127 |
| Transfer unless surcharge applies (when not roaming or overcap) | 111 |
| Transfer unless nearing limit (when not roaming or nearing cap) | 103 |
| Transfer only if unconstrained | 33 |
| Custom | 255 Software\Policies\Microsoft\Windows\BITS\TransferPolicy\NormalTransferPolicy = (delete value) |
Apply with .reg · CMD · PowerShell
.reg
Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\Windows\BITS\TransferPolicy] ; Options (use only one) ; Always transfer "NormalTransferPolicy"=dword:000000ff ; Transfer unless roaming "NormalTransferPolicy"=dword:0000007f ; Transfer unless surcharge applies (when not roaming or overcap) "NormalTransferPolicy"=dword:0000006f ; Transfer unless nearing limit (when not roaming or nearing cap) "NormalTransferPolicy"=dword:00000067 ; Transfer only if unconstrained "NormalTransferPolicy"=dword:00000021 ; Custom "NormalTransferPolicy"=dword:000000ff "NormalTransferPolicy"=-
CMD
:: Options (use only one) :: Always transfer reg add "HKLM\Software\Policies\Microsoft\Windows\BITS\TransferPolicy" /v "NormalTransferPolicy" /t REG_DWORD /d 255 /f :: Transfer unless roaming reg add "HKLM\Software\Policies\Microsoft\Windows\BITS\TransferPolicy" /v "NormalTransferPolicy" /t REG_DWORD /d 127 /f :: Transfer unless surcharge applies (when not roaming or overcap) reg add "HKLM\Software\Policies\Microsoft\Windows\BITS\TransferPolicy" /v "NormalTransferPolicy" /t REG_DWORD /d 111 /f :: Transfer unless nearing limit (when not roaming or nearing cap) reg add "HKLM\Software\Policies\Microsoft\Windows\BITS\TransferPolicy" /v "NormalTransferPolicy" /t REG_DWORD /d 103 /f :: Transfer only if unconstrained reg add "HKLM\Software\Policies\Microsoft\Windows\BITS\TransferPolicy" /v "NormalTransferPolicy" /t REG_DWORD /d 33 /f :: Custom reg add "HKLM\Software\Policies\Microsoft\Windows\BITS\TransferPolicy" /v "NormalTransferPolicy" /t REG_DWORD /d 255 /f reg delete "HKLM\Software\Policies\Microsoft\Windows\BITS\TransferPolicy" /v "NormalTransferPolicy" /f
PowerShell
# Common: create the key New-Item -Path 'HKLM:\Software\Policies\Microsoft\Windows\BITS\TransferPolicy' -Force | Out-Null # Options (use only one) # Always transfer New-ItemProperty -Path 'HKLM:\Software\Policies\Microsoft\Windows\BITS\TransferPolicy' -Name 'NormalTransferPolicy' -PropertyType DWord -Value 255 -Force | Out-Null # Transfer unless roaming New-ItemProperty -Path 'HKLM:\Software\Policies\Microsoft\Windows\BITS\TransferPolicy' -Name 'NormalTransferPolicy' -PropertyType DWord -Value 127 -Force | Out-Null # Transfer unless surcharge applies (when not roaming or overcap) New-ItemProperty -Path 'HKLM:\Software\Policies\Microsoft\Windows\BITS\TransferPolicy' -Name 'NormalTransferPolicy' -PropertyType DWord -Value 111 -Force | Out-Null # Transfer unless nearing limit (when not roaming or nearing cap) New-ItemProperty -Path 'HKLM:\Software\Policies\Microsoft\Windows\BITS\TransferPolicy' -Name 'NormalTransferPolicy' -PropertyType DWord -Value 103 -Force | Out-Null # Transfer only if unconstrained New-ItemProperty -Path 'HKLM:\Software\Policies\Microsoft\Windows\BITS\TransferPolicy' -Name 'NormalTransferPolicy' -PropertyType DWord -Value 33 -Force | Out-Null # Custom New-ItemProperty -Path 'HKLM:\Software\Policies\Microsoft\Windows\BITS\TransferPolicy' -Name 'NormalTransferPolicy' -PropertyType DWord -Value 255 -Force | Out-Null Remove-ItemProperty -Path 'HKLM:\Software\Policies\Microsoft\Windows\BITS\TransferPolicy' -Name 'NormalTransferPolicy'
NormalTransferPolicyCustom
REG_DWORDComputer- Enabled value
- Depends on the option value
- Element
- Normal (Custom)
- Value type
- REG_DWORD
- Maximum value
- 2147483647
Apply with .reg · CMD · PowerShell
.reg
Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\Windows\BITS\TransferPolicy] ; Value names and types follow the ADMX. Replace <enter value> below with your own data "NormalTransferPolicyCustom"=dword:<enter value>
CMD
:: Value names and types follow the ADMX. Replace <enter value> below with your own data reg add "HKLM\Software\Policies\Microsoft\Windows\BITS\TransferPolicy" /v "NormalTransferPolicyCustom" /t REG_DWORD /d "<enter value>" /f
PowerShell
# Value names and types follow the ADMX. Replace <enter value> below with your own data New-Item -Path 'HKLM:\Software\Policies\Microsoft\Windows\BITS\TransferPolicy' -Force | Out-Null New-ItemProperty -Path 'HKLM:\Software\Policies\Microsoft\Windows\BITS\TransferPolicy' -Name 'NormalTransferPolicyCustom' -PropertyType DWord -Value '<enter value>' -Force | Out-Null
LowTransferPolicy
REG_DWORDComputer- Enabled value
- Depends on the option value
- Element
- Low
| Item | Stored value |
|---|---|
| Always transfer | 255 |
| Transfer unless roaming | 127 |
| Transfer unless surcharge applies (when not roaming or overcap) | 111 |
| Transfer unless nearing limit (when not roaming or nearing cap) | 103 |
| Transfer only if unconstrained | 33 |
| Custom | 255 Software\Policies\Microsoft\Windows\BITS\TransferPolicy\LowTransferPolicy = (delete value) |
Apply with .reg · CMD · PowerShell
.reg
Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\Windows\BITS\TransferPolicy] ; Options (use only one) ; Always transfer "LowTransferPolicy"=dword:000000ff ; Transfer unless roaming "LowTransferPolicy"=dword:0000007f ; Transfer unless surcharge applies (when not roaming or overcap) "LowTransferPolicy"=dword:0000006f ; Transfer unless nearing limit (when not roaming or nearing cap) "LowTransferPolicy"=dword:00000067 ; Transfer only if unconstrained "LowTransferPolicy"=dword:00000021 ; Custom "LowTransferPolicy"=dword:000000ff "LowTransferPolicy"=-
CMD
:: Options (use only one) :: Always transfer reg add "HKLM\Software\Policies\Microsoft\Windows\BITS\TransferPolicy" /v "LowTransferPolicy" /t REG_DWORD /d 255 /f :: Transfer unless roaming reg add "HKLM\Software\Policies\Microsoft\Windows\BITS\TransferPolicy" /v "LowTransferPolicy" /t REG_DWORD /d 127 /f :: Transfer unless surcharge applies (when not roaming or overcap) reg add "HKLM\Software\Policies\Microsoft\Windows\BITS\TransferPolicy" /v "LowTransferPolicy" /t REG_DWORD /d 111 /f :: Transfer unless nearing limit (when not roaming or nearing cap) reg add "HKLM\Software\Policies\Microsoft\Windows\BITS\TransferPolicy" /v "LowTransferPolicy" /t REG_DWORD /d 103 /f :: Transfer only if unconstrained reg add "HKLM\Software\Policies\Microsoft\Windows\BITS\TransferPolicy" /v "LowTransferPolicy" /t REG_DWORD /d 33 /f :: Custom reg add "HKLM\Software\Policies\Microsoft\Windows\BITS\TransferPolicy" /v "LowTransferPolicy" /t REG_DWORD /d 255 /f reg delete "HKLM\Software\Policies\Microsoft\Windows\BITS\TransferPolicy" /v "LowTransferPolicy" /f
PowerShell
# Common: create the key New-Item -Path 'HKLM:\Software\Policies\Microsoft\Windows\BITS\TransferPolicy' -Force | Out-Null # Options (use only one) # Always transfer New-ItemProperty -Path 'HKLM:\Software\Policies\Microsoft\Windows\BITS\TransferPolicy' -Name 'LowTransferPolicy' -PropertyType DWord -Value 255 -Force | Out-Null # Transfer unless roaming New-ItemProperty -Path 'HKLM:\Software\Policies\Microsoft\Windows\BITS\TransferPolicy' -Name 'LowTransferPolicy' -PropertyType DWord -Value 127 -Force | Out-Null # Transfer unless surcharge applies (when not roaming or overcap) New-ItemProperty -Path 'HKLM:\Software\Policies\Microsoft\Windows\BITS\TransferPolicy' -Name 'LowTransferPolicy' -PropertyType DWord -Value 111 -Force | Out-Null # Transfer unless nearing limit (when not roaming or nearing cap) New-ItemProperty -Path 'HKLM:\Software\Policies\Microsoft\Windows\BITS\TransferPolicy' -Name 'LowTransferPolicy' -PropertyType DWord -Value 103 -Force | Out-Null # Transfer only if unconstrained New-ItemProperty -Path 'HKLM:\Software\Policies\Microsoft\Windows\BITS\TransferPolicy' -Name 'LowTransferPolicy' -PropertyType DWord -Value 33 -Force | Out-Null # Custom New-ItemProperty -Path 'HKLM:\Software\Policies\Microsoft\Windows\BITS\TransferPolicy' -Name 'LowTransferPolicy' -PropertyType DWord -Value 255 -Force | Out-Null Remove-ItemProperty -Path 'HKLM:\Software\Policies\Microsoft\Windows\BITS\TransferPolicy' -Name 'LowTransferPolicy'
LowTransferPolicyCustom
REG_DWORDComputer- Enabled value
- Depends on the option value
- Element
- Low (Custom)
- Value type
- REG_DWORD
- Maximum value
- 2147483647
Apply with .reg · CMD · PowerShell
.reg
Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\Windows\BITS\TransferPolicy] ; Value names and types follow the ADMX. Replace <enter value> below with your own data "LowTransferPolicyCustom"=dword:<enter value>
CMD
:: Value names and types follow the ADMX. Replace <enter value> below with your own data reg add "HKLM\Software\Policies\Microsoft\Windows\BITS\TransferPolicy" /v "LowTransferPolicyCustom" /t REG_DWORD /d "<enter value>" /f
PowerShell
# Value names and types follow the ADMX. Replace <enter value> below with your own data New-Item -Path 'HKLM:\Software\Policies\Microsoft\Windows\BITS\TransferPolicy' -Force | Out-Null New-ItemProperty -Path 'HKLM:\Software\Policies\Microsoft\Windows\BITS\TransferPolicy' -Name 'LowTransferPolicyCustom' -PropertyType DWord -Value '<enter value>' -Force | Out-Null