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
Options
ItemStored value
Always transfer2147483903
Transfer unless roaming2147483775
Transfer unless surcharge applies (when not roaming or overcap)2147483759
Transfer unless nearing limit (when not roaming or nearing cap)2147483751
Transfer only if unconstrained2147483681
Custom255
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
Options
ItemStored value
Always transfer255
Transfer unless roaming127
Transfer unless surcharge applies (when not roaming or overcap)111
Transfer unless nearing limit (when not roaming or nearing cap)103
Transfer only if unconstrained33
Custom255
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
Options
ItemStored value
Always transfer255
Transfer unless roaming127
Transfer unless surcharge applies (when not roaming or overcap)111
Transfer unless nearing limit (when not roaming or nearing cap)103
Transfer only if unconstrained33
Custom255
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
Options
ItemStored value
Always transfer255
Transfer unless roaming127
Transfer unless surcharge applies (when not roaming or overcap)111
Transfer unless nearing limit (when not roaming or nearing cap)103
Transfer only if unconstrained33
Custom255
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