Microsoft Edge Update
Control updater's communication with the Experimentation and Configuration Service
Supported on Microsoft Edge Update 1.3.145.1 and later
Shown as of 157.0.4341.42, 5 Nov 2026. See it in the latest templates.
What it does
In Microsoft Edge Update, the Experimentation and Configuration Service is used to deploy experimentation and configuration payloads. Experimentation payload consists of a list of early-in-development features that Microsoft is enabling for testing and feedback. Configuration payload consists of a list of recommended settings that Microsoft wants to deploy to optimize the user experience. If you set this policy to 'FullMode' (1), the full payload is downloaded from the Experimentation and Configuration Service. This includes both the experimentation and configuration payloads. If you set this policy to 'ConfigurationsOnlyMode' (2), only the configuration payload is downloaded. If you set this policy to 'RestrictedMode' (0), communication with the Experimentation and Configuration Service is stopped completely. If you don't configure this policy, on a managed device the behavior is the same as policy 'ConfigurationsOnlyMode'. If you don't configure this policy, on a device that isn't managed through domain policy or device management, the behavior is the same as policy 'FullMode'.
What it writes
- Hive
- HKEY_LOCAL_MACHINE
- Registry key
Software\Policies\Microsoft\EdgeUpdate
Options
| Option | Type | Registry value | Allowed values |
|---|---|---|---|
| Control updater's communication with Experimentation and Configuration ServiceRequiredDefault: Retrieve configurations and experiments (1) | Drop-down list (enum) | UpdaterExperimentationAndConfigurationServiceControl |
|
Configure and deploy
Choose a state and the option values; the output below is generated from the template for exactly that.
Enabled · Computer · template defaults
Registry file (.reg)
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\EdgeUpdate]
"UpdaterExperimentationAndConfigurationServiceControl"=dword:00000001
PowerShell
$ErrorActionPreference = 'Stop'
function Set-RegistryValue {
param(
[Parameter(Mandatory = $true)][string] $Path,
[Parameter(Mandatory = $true)][string] $Name,
[Parameter(Mandatory = $true)][string] $PropertyType,
[Parameter(Mandatory = $true)][object] $Value
)
if (-not (Test-Path -LiteralPath $Path)) {
New-Item -Path $Path -Force | Out-Null
}
New-ItemProperty -LiteralPath $Path -Name $Name -PropertyType $PropertyType -Value $Value -Force | Out-Null
}
function Remove-RegistryValue {
param(
[Parameter(Mandatory = $true)][string] $Path,
[Parameter(Mandatory = $true)][string] $Name
)
if (Test-Path -LiteralPath $Path) {
Remove-ItemProperty -LiteralPath $Path -Name $Name -Force -ErrorAction SilentlyContinue
}
}
function Clear-RegistryKeyValues {
param(
[Parameter(Mandatory = $true)][string] $Path
)
if (-not (Test-Path -LiteralPath $Path)) {
return
}
foreach ($propertyName in (Get-Item -LiteralPath $Path).Property) {
Remove-ItemProperty -LiteralPath $Path -Name $propertyName -Force -ErrorAction SilentlyContinue
}
}
# Policy: Control updater's communication with the Experimentation and Configuration Service
# Name: Pol_ECSControl
# Scope: Machine
# State: Enabled
# Source: msedgeupdate.admx
Set-RegistryValue -Path 'Registry::HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\EdgeUpdate' -Name 'UpdaterExperimentationAndConfigurationServiceControl' -PropertyType 'DWord' -Value 1
- The OMA-URI is an inferred ADMX-backed Policy CSP candidate derived from the source ADMX file name and policy name.
- Some Microsoft policies use built-in Policy CSP pages whose area names don't match the ADMX file name, so verify the candidate against Microsoft Learn before deployment.
ADMX profile candidate (OMA-URI)
./Device/Vendor/MSFT/Policy/Config/ADMX_msedgeupdate/Pol_ECSControlADMX SyncML candidate
<SyncML xmlns="SYNCML:SYNCML1.2">
<SyncBody>
<Replace>
<CmdID>1</CmdID>
<Item>
<Meta>
<Format>chr</Format>
<Type>text/plain</Type>
</Meta>
<Target>
<LocURI>./Device/Vendor/MSFT/Policy/Config/ADMX_msedgeupdate/Pol_ECSControl</LocURI>
</Target>
<Data><enabled/>
<data id="Part_ECSControl" value="1"/></Data>
</Item>
</Replace>
<Final/>
</SyncBody>
</SyncML>Intune remediation scripts
Detection
$ErrorActionPreference = 'Stop'
$reasons = [System.Collections.Generic.List[string]]::new()
function Test-RegistryValueExists {
param(
[Parameter(Mandatory = $true)][string] $Path,
[Parameter(Mandatory = $true)][string] $Name
)
if (-not (Test-Path -LiteralPath $Path)) {
return $false
}
return $null -ne (Get-ItemProperty -LiteralPath $Path -Name $Name -ErrorAction SilentlyContinue)
}
function Test-RegistryValueEquals {
param(
[Parameter(Mandatory = $true)][string] $Path,
[Parameter(Mandatory = $true)][string] $Name,
[Parameter(Mandatory = $true)][string] $Kind,
[Parameter(Mandatory = $true)][object] $Expected
)
if (-not (Test-Path -LiteralPath $Path)) {
return $false
}
$valueObject = Get-ItemProperty -LiteralPath $Path -Name $Name -ErrorAction SilentlyContinue
if ($null -eq $valueObject) {
return $false
}
$actual = $valueObject.$Name
switch ($Kind) {
'String' { return [string]$actual -ceq [string]$Expected }
'ExpandString' { return [string]$actual -ceq [string]$Expected }
'DWord' { return [uint32]$actual -eq [uint32]$Expected }
'QWord' {
$actualBits = if ($actual -is [uint64]) { $actual } else { [BitConverter]::ToUInt64([BitConverter]::GetBytes([int64]$actual), 0) }
$expectedBits = if ($Expected -is [uint64]) { $Expected } else { [BitConverter]::ToUInt64([BitConverter]::GetBytes([int64]$Expected), 0) }
return $actualBits -eq $expectedBits
}
'MultiString' {
$actualArray = @($actual)
$expectedArray = @($Expected)
if ($actualArray.Count -ne $expectedArray.Count) { return $false }
for ($index = 0; $index -lt $actualArray.Count; $index++) {
if ([string]$actualArray[$index] -cne [string]$expectedArray[$index]) { return $false }
}
return $true
}
'Binary' {
$actualArray = [byte[]]$actual
$expectedArray = [byte[]]$Expected
if ($actualArray.Length -ne $expectedArray.Length) { return $false }
for ($index = 0; $index -lt $actualArray.Length; $index++) {
if ($actualArray[$index] -ne $expectedArray[$index]) { return $false }
}
return $true
}
default { return [string]$actual -ceq [string]$Expected }
}
}
# Policy: Control updater's communication with the Experimentation and Configuration Service
# Name: Pol_ECSControl
# Scope: Machine
# State: Enabled
# Source: msedgeupdate.admx
$isMatch = Test-RegistryValueEquals -Path 'Registry::HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\EdgeUpdate' -Name 'UpdaterExperimentationAndConfigurationServiceControl' -Kind 'DWord' -Expected 1
if (-not $isMatch) {
$reasons.Add('Value mismatch: HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\EdgeUpdate\UpdaterExperimentationAndConfigurationServiceControl') | Out-Null
}
if ($reasons.Count -eq 0) {
Write-Output 'Compliant'
exit 0
}
$reasons | ForEach-Object { Write-Output $_ }
exit 1
Remediation
$ErrorActionPreference = 'Stop'
function Set-RegistryValue {
param(
[Parameter(Mandatory = $true)][string] $Path,
[Parameter(Mandatory = $true)][string] $Name,
[Parameter(Mandatory = $true)][string] $PropertyType,
[Parameter(Mandatory = $true)][object] $Value
)
if (-not (Test-Path -LiteralPath $Path)) {
New-Item -Path $Path -Force | Out-Null
}
New-ItemProperty -LiteralPath $Path -Name $Name -PropertyType $PropertyType -Value $Value -Force | Out-Null
}
function Remove-RegistryValue {
param(
[Parameter(Mandatory = $true)][string] $Path,
[Parameter(Mandatory = $true)][string] $Name
)
if (Test-Path -LiteralPath $Path) {
Remove-ItemProperty -LiteralPath $Path -Name $Name -Force -ErrorAction SilentlyContinue
}
}
function Clear-RegistryKeyValues {
param(
[Parameter(Mandatory = $true)][string] $Path
)
if (-not (Test-Path -LiteralPath $Path)) {
return
}
foreach ($propertyName in (Get-Item -LiteralPath $Path).Property) {
Remove-ItemProperty -LiteralPath $Path -Name $propertyName -Force -ErrorAction SilentlyContinue
}
}
# Policy: Control updater's communication with the Experimentation and Configuration Service
# Name: Pol_ECSControl
# Scope: Machine
# State: Enabled
# Source: msedgeupdate.admx
Set-RegistryValue -Path 'Registry::HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\EdgeUpdate' -Name 'UpdaterExperimentationAndConfigurationServiceControl' -PropertyType 'DWord' -Value 1
History 47 retained releases
- 154.0.4258.3724 Sep 2026Registry key:
Software\Policies\Microsoft\EdgeUpdate· Value name:Not specified- Translations changed; choose a language above to compare its wording.
- 153.0.4234.4617 Sep 2026Registry key:
Software\Policies\Microsoft\EdgeUpdate· Value name:Not specified- Description
… Edge Update, the Experimentation and…
[removed: payload.][added: and configuration payloads.] Experimentation payload consists of a li…[removed: early in development ][added: early-in-development ]features that Microsoft is enabling for testing…[added: Configuration payload consists of a list of rec…]If you[removed: enable (1) this policy, experimentation][added: set this policy to 'FullMode' (1), the full] payload is downloaded from the Experimentation and Config…[added: This includes both the experimentation and configuration …] If you[removed: disable (0)][added: set this policy to 'ConfigurationsOnlyMode' (2), only the configuration payload is downloaded. If you set]…Whole description, marked
In Microsoft Edge Update, the Experimentation and Configuration Service is used to deploy experimentation
[removed: payload.][added: and configuration payloads.] Experimentation payload consists of a list of[removed: early in development ][added: early-in-development ]features that Microsoft is enabling for testing and feedback. [added: Configuration payload consists of a list of recommended settings that Microsoft wants to deploy to optimize the user experience. ]If you[removed: enable (1) this policy, experimentation][added: set this policy to 'FullMode' (1), the full] payload is downloaded from the Experimentation and Configuration Service.[added: This includes both the experimentation and configuration payloads.] If you[removed: disable (0)][added: set this policy to 'ConfigurationsOnlyMode' (2), only the configuration payload is downloaded. If you set] this[removed: policy,][added: policy to 'RestrictedMode' (0),] communication with the Experimentation and Configuration Service is stopped completely. If you don't configure this policy, on a managed device the behavior is [added: the ]same as policy[removed: 'disabled'.][added: 'ConfigurationsOnlyMode'.] If you don't configure this policy, on[removed: an unmanaged][added: a device that isn't managed through domain policy or] device [added: management, ]the behavior is [added: the ]same as policy[removed: 'enabled'.][added: 'FullMode'.] - A choice in “Control updater's communication with Experimentation and Configuration Service” is renamed
[was: Enable communication and download experiments (1)][now: Retrieve configurations and experiments (1)]Registry key:Software\Policies\Microsoft\EdgeUpdate· Value name:UpdaterExperimentationAndConfigurationServiceControl - “Control updater's communication with Experimentation and Configuration Service” gains the choice [added: Retrieve configurations only (2)]Registry key:
Software\Policies\Microsoft\EdgeUpdate· Value name:UpdaterExperimentationAndConfigurationServiceControl - Default for “Control updater's communication with Experimentation and Configuration Service”
[was: Enable communication and download experiments (1)][now: Retrieve configurations and experiments (1)]Registry key:Software\Policies\Microsoft\EdgeUpdate· Value name:UpdaterExperimentationAndConfigurationServiceControl
- Description
… Edge Update, the Experimentation and…
- 153.0.4234.3211 Sep 2026Registry key:
Software\Policies\Microsoft\EdgeUpdate· Value name:Not specified- Description
… Edge Update, the Experimentation and…
[removed: and configuration payloads.][added: payload.] Experimentation payload consists of a li…[removed: early-in-development][added: early in development] features that Microsoft is enabling for testin…[removed: Configuration payload consists of a list of rec…]If you[removed: set][added: enable (1)] this[removed: policy to 'FullMode' (1), the full ][added: policy, experimentation ]payload is downloaded from the Experimentation and Configuration Service.[removed: This includes both the experimentation and configuration payloads.]…Whole description, marked
In Microsoft Edge Update, the Experimentation and Configuration Service is used to deploy experimentation
[removed: and configuration payloads.][added: payload.] Experimentation payload consists of a list of[removed: early-in-development][added: early in development] features that Microsoft is enabling for testing and feedback.[removed: Configuration payload consists of a list of recommended settings that Microsoft wants to deploy to optimize the user experience. ]If you[removed: set][added: enable (1)] this[removed: policy to 'FullMode' (1), the full ][added: policy, experimentation ]payload is downloaded from the Experimentation and Configuration Service.[removed: This includes both the experimentation and configuration payloads.]If you[removed: set this policy to 'ConfigurationsOnlyMode' (2), only the configuration payload is downloaded. If you set ][added: disable (0) ]this[removed: policy to 'RestrictedMode' (0), ][added: policy, ]communication with the Experimentation and Configuration Service is stopped completely. If you don't configure this policy, on a managed device the behavior is[removed: the ]same as policy[removed: 'ConfigurationsOnlyMode'.][added: 'disabled'.] If you don't configure this policy, on[removed: a device that isn't managed through domain policy or ][added: an unmanaged ]device[removed: management, ]the behavior is[removed: the ]same as policy[removed: 'FullMode'.][added: 'enabled'.] - “Control updater's communication with Experimentation and Configuration Service” loses the choice
[removed: Retrieve configurations only (2)]Registry key:Software\Policies\Microsoft\EdgeUpdate· Value name:UpdaterExperimentationAndConfigurationServiceControl - A choice in “Control updater's communication with Experimentation and Configuration Service” is renamed
[was: Retrieve configurations and experiments (1)][now: Enable communication and download experiments (1)]Registry key:Software\Policies\Microsoft\EdgeUpdate· Value name:UpdaterExperimentationAndConfigurationServiceControl - Default for “Control updater's communication with Experimentation and Configuration Service”
[was: Retrieve configurations and experiments (1)][now: Enable communication and download experiments (1)]Registry key:Software\Policies\Microsoft\EdgeUpdate· Value name:UpdaterExperimentationAndConfigurationServiceControl
- Description
… Edge Update, the Experimentation and…
- 152.0.4191.9621 Sep 2026Registry key:
Software\Policies\Microsoft\EdgeUpdate· Value name:Not specified- Translations changed; choose a language above to compare its wording.
- 152.0.4191.8817 Sep 2026Registry key:
Software\Policies\Microsoft\EdgeUpdate· Value name:Not specified- Description
… Edge Update, the Experimentation and…
[removed: payload.][added: and configuration payloads.] Experimentation payload consists of a li…[removed: early in development ][added: early-in-development ]features that Microsoft is enabling for testing…[added: Configuration payload consists of a list of rec…]If you[removed: enable (1) this policy, experimentation][added: set this policy to 'FullMode' (1), the full] payload is downloaded from the Experimentation and Config…[added: This includes both the experimentation and configuration …] If you[removed: disable (0)][added: set this policy to 'ConfigurationsOnlyMode' (2), only the configuration payload is downloaded. If you set]…Whole description, marked
In Microsoft Edge Update, the Experimentation and Configuration Service is used to deploy experimentation
[removed: payload.][added: and configuration payloads.] Experimentation payload consists of a list of[removed: early in development ][added: early-in-development ]features that Microsoft is enabling for testing and feedback. [added: Configuration payload consists of a list of recommended settings that Microsoft wants to deploy to optimize the user experience. ]If you[removed: enable (1) this policy, experimentation][added: set this policy to 'FullMode' (1), the full] payload is downloaded from the Experimentation and Configuration Service.[added: This includes both the experimentation and configuration payloads.] If you[removed: disable (0)][added: set this policy to 'ConfigurationsOnlyMode' (2), only the configuration payload is downloaded. If you set] this[removed: policy,][added: policy to 'RestrictedMode' (0),] communication with the Experimentation and Configuration Service is stopped completely. If you don't configure this policy, on a managed device the behavior is [added: the ]same as policy[removed: 'disabled'.][added: 'ConfigurationsOnlyMode'.] If you don't configure this policy, on[removed: an unmanaged][added: a device that isn't managed through domain policy or] device [added: management, ]the behavior is [added: the ]same as policy[removed: 'enabled'.][added: 'FullMode'.] - A choice in “Control updater's communication with Experimentation and Configuration Service” is renamed
[was: Enable communication and download experiments (1)][now: Retrieve configurations and experiments (1)]Registry key:Software\Policies\Microsoft\EdgeUpdate· Value name:UpdaterExperimentationAndConfigurationServiceControl - “Control updater's communication with Experimentation and Configuration Service” gains the choice [added: Retrieve configurations only (2)]Registry key:
Software\Policies\Microsoft\EdgeUpdate· Value name:UpdaterExperimentationAndConfigurationServiceControl - Default for “Control updater's communication with Experimentation and Configuration Service”
[was: Enable communication and download experiments (1)][now: Retrieve configurations and experiments (1)]Registry key:Software\Policies\Microsoft\EdgeUpdate· Value name:UpdaterExperimentationAndConfigurationServiceControl
- Description
… Edge Update, the Experimentation and…
- 150.0.4078.8016 Jul 2026
- Already present in the first release ChangeIntel keeps.
41 later releases left it unchanged.
Template
- Internal name
Pol_ECSControl- Namespace
Microsoft.Policies.Update- Template file
msedgeupdate.admx- Release
- Microsoft Edge 157.0.4341.42 · file set
0c38d160a969619e…
Definition, editor controls and support
Definition
<policy class="Machine" displayName="$(string.Pol_ECSControl)" explainText="$(string.Explain_ECSControl)" key="Software\Policies\Microsoft\EdgeUpdate" name="Pol_ECSControl" presentation="$(presentation.Pol_ECSControl)" xmlns="http://schemas.microsoft.com/GroupPolicy/2006/07/PolicyDefinitions">
<parentCategory ref="Microsoft.Policies.Update:Cat_EdgeUpdate" />
<supportedOn ref="Microsoft.Policies.Update:Sup_EdgeUpdate1_3_145_1" />
<elements>
<enum id="Part_ECSControl" key="Software\Policies\Microsoft\EdgeUpdate" required="true" valueName="UpdaterExperimentationAndConfigurationServiceControl">
<item displayName="$(string.Name_ECSCommunicationDisabled)">
<value>
<decimal value="0" />
</value>
</item>
<item displayName="$(string.Name_ECSCommunicationEnabled)">
<value>
<decimal value="1" />
</value>
</item>
<item displayName="$(string.Name_ECSConfigurationsOnly)">
<value>
<decimal value="2" />
</value>
</item>
</enum>
</elements>
</policy>Editor controls
<presentation id="Pol_ECSControl" xmlns="http://schemas.microsoft.com/GroupPolicy/2006/07/PolicyDefinitions">
<dropdownList defaultItem="1" refId="Part_ECSControl">Control updater's communication with Experimentation and Configuration Service</dropdownList>
</presentation>Supported platforms and category
Microsoft.Policies.Update:category:Cat_EdgeUpdate
<category displayName="$(string.Cat_GoogleUpdate)" explainText="$(string.Explain_GoogleUpdate)" name="Cat_EdgeUpdate" xmlns="http://schemas.microsoft.com/GroupPolicy/2006/07/PolicyDefinitions">
</category>
Microsoft.Policies.Update:definition:Sup_EdgeUpdate1_3_145_1
<definition displayName="$(string.Sup_EdgeUpdate1_3_145_1)" name="Sup_EdgeUpdate1_3_145_1" xmlns="http://schemas.microsoft.com/GroupPolicy/2006/07/PolicyDefinitions" />
Microsoft.Policies.Update:category:Cat_EdgeUpdate
<category displayName="$(string.Cat_GoogleUpdate)" explainText="$(string.Explain_GoogleUpdate)" name="Cat_EdgeUpdate" xmlns="http://schemas.microsoft.com/GroupPolicy/2006/07/PolicyDefinitions">
</category>
<strings><string id="Microsoft.Policies.Update:Cat_GoogleUpdate">Microsoft Edge Update</string><string id="Microsoft.Policies.Update:Explain_GoogleUpdate">Policies to control the installation and updating of Microsoft Edge using Microsoft Edge Update.</string></strings>
Microsoft.Policies.Update:definition:Sup_EdgeUpdate1_3_145_1
<definition displayName="$(string.Sup_EdgeUpdate1_3_145_1)" name="Sup_EdgeUpdate1_3_145_1" xmlns="http://schemas.microsoft.com/GroupPolicy/2006/07/PolicyDefinitions" />
<strings><string id="Microsoft.Policies.Update:Sup_EdgeUpdate1_3_145_1">Microsoft Edge Update 1.3.145.1 and later</string></strings>