Allow Microsoft to collect information about how I use Lync



Registry locations


Allowed registry values

·         0 – Lync will not send Customer Experience Improvement Program information to Microsoft

·         1 – Lync will send Customer Experience Improvement Program information to Microsoft

Registry value type


Default setting

0: Microsoft does not collect usage information for Lync


To begin with, please don’t panic: at Microsoft we are not keeping track of who you send instant messages to, nor are we keeping tabs on what you say in those instant messages. However, through our voluntary Customer Experience Improvement Program we are trying to gain a better understanding of the ways in which people use Microsoft Lync. (For example, on average, how many contacts do people have on their Contact List?)


In other words, no personal information of any kind is transmitted when you participate in the CEIP program; in fact, there’s no way to trace any collected data back to you or your computer. It’s merely an attempt to collect statistical information that will help make the next version of Microsoft Lync even better, and even more responsive to your needs. And hey, if Microsoft says there’s nothing to worry about then there’s nothing to worry about. Right?


OK, we’re not that naïve: we realize that some people might be hesitant about taking part in this program. And that’s fine: like we said participation is voluntary, and is entirely under your control. In fact, you can indicate whether you want in or out (and can change your mind at any time) simply by selecting or deselecting the Allow Microsoft to collect information about how I use Lync check box:



If you’d rather not use the GUI, you can opt in or out by modifying the HKCU\SOFTWARE\Microsoft\Communicator\CEIPEnabled registry value. Set this value to 1 to opt into the CEIP program or set it to 0 to opt out of the program. (Which, by the way, is the default value: by default you do not participate in the CEIP program.)


See? We told you there was no need to panic.


Now, one thing for administrators to keep in mind is this: if you change the CEIPEnabled value in the registry, users can always got into the Options dialog box and change it right back. That’s just how registry settings like this work. If you’d prefer that no one in your organization gets involved in the CEIP program, what you need to do is set the EnableSQMData property in the appropriate client policy (or policies) to False. For example:


Set-CsClientPolicy –Identity global –EnableSQMData $False


If you do that, the option to join the CEIP program will be unavailable, and users will not be able to do anything about that:



Note. Interestingly enough, you can’t require users to participate in the program. You can set the EnableSQMData property in a client policy to True; however, that won’t force people to take part in the CEIP program. Instead, each user who wants to will still have to opt-in to the program.


If you’re curious about whether or not a user has opted into the program, you should first check to see if opt-in has been prohibited by their client policy. If it hasn’t, you can then use a Windows PowerShell script like the one we’re about to show you, a script that retrieves the current value of CEIPEnabled on the local computer. If you’d rather retrieve this value from a remote computer, simply set the value of the variable $computer to the name of that remote computer. For example:


$computer = “”


Here’s how you can check a user’s opt-in status:


$computer = “.”


$registry = [Microsoft.Win32.RegistryKey]::OpenRemoteBaseKey(“CurrentUser”, $computer)

$key = $registry.OpenSubKey(“SOFTWARE\Microsoft\Communicator”, $True)



$value =$key.GetValue(“CEIPEnabled”,$null)

if ($value -eq 1) {$value = “Yes”}

if ($value -eq 0) {$value = “No”}


Write-Host “Allow Microsoft to collection information about how I use” `

    “Lync: $value”


In addition to retrieving the value of the CEIPEnabled registry value you can also modify that value. The following script enrolls a user in the CEIP program; that’s done by setting CEIPPreference to 1. To remove a user from the CEIP program, set CEIPEnabled to 0:




The script itself looks a little like this:


$computer = “.”


$registry = [Microsoft.Win32.RegistryKey]::OpenRemoteBaseKey(“CurrentUser”, $computer)

$key = $registry.OpenSubKey(“SOFTWARE\Microsoft\Communicator”, $True)






Skip to main content