Discord Friend Sync is very straightforward and is designed to be respectful of your privacy. No data related to this feature ever leaves your computer unless you very clearly enable it - and subsequently disabling the feature deletes the data from our systems.
Friend sync includes two parts:
- The meat: Notifying you when one of your friends joins Discord.
- The potatoes: Displaying a service username on your Discord profile, such as your Battle.net or Steam username. This is off by default.
Let’s walk through how this works.
Friendship: Not That Complicated
The Discord desktop client now detects whether you have any of the supported services installed on your computer. If we detect at least one, Discord will prompt you to setup the sync process. On the setup screen there is a clear description that explains what the feature is and how to enable or not-enable it.
Currently the supported services are Battle.net, Steam, and Skype. We’ll probably add some more services later.
When you choose to enable the sync feature, Discord creates a unique one-way hash based on the user ID for each friend in the service’s list. These hashes along with your public user ID is sent to the Discord servers so that we can power the feature. Note that with this data we cannot figure out who your friends are unless they are also using Discord and have enabled friend sync, hence the one-way-ness of the process.
Now that Discord has these hashed user IDs, the magic can get to work! We will match them in our database with other Discord users’ hashed service IDs. If we detect a match between a hashed value from your synced friends list with another user’s hashed service ID, then it means that your friend is already using Discord. When this happens, we’ll send both of you a desktop and push notification to let you know. From the Friends -> Add Friend tab you can see the list of suggestions and “Add” or “Ignore” any of them. Pressing “Add” will just send a normal Discord friend request to the other person.
How To Disable Friend Sync (if you’ve turned it on already)
You can choose to disable the automatic service detection process from User Settings -> Connections by unchecking the ‘Automatically detect accounts from other platforms on this computer’ checkbox.
You can turn off the sync feature at any time from User Settings -> Connections. There you’ll see each of your connected services with a clearly labeled Disconnect button.
You can also uncheck the clearly labeled sync or display username aspects of the feature. If you choose to disable the ‘display username’ aspect, your username is not sent to other users in any data payload in addition to being hidden from your profile. However, it is still stored on in our server-side database. Disconnecting a service will delete your service username from our database.
When you disconnect a service or disable syncing, we will delete all of the one-way hashes stored in our database associated with your synced services. This means you will stop receiving notifications that your friends have joined Discord and your friends will stop receiving suggestions that you have joined Discord too. However, any friend suggestions already sent will remain.
And that’s it! We’re incredibly excited to share this feature with you so it’s easier to connect with the people you care about on Discord to play games. We hope you love it :-) As always, feel free to reach out to us via twitter @discordapp or via email at firstname.lastname@example.org if you have any questions.