The General Data Protection Regulation (GDPR) is a European Union law regulating the data privacy of EU citizens.
For more information about EU GDPR, see https://www.eugdpr.org
For information about Unity and GDPR, see https://unity3d.com/legal/gdpr
For Unity’s own privacy policy, see https://unity3d.com/legal/privacy-policy
Maintaining compliance with GDPR when you use Unity AnalyticsAbbreviation of Unity Analytics
See in Glossary is a shared responsibility. Unity collects data to help you improve the player experience with ads and gameplay. Some of that data includes personally identifiable information (PII) regulated under GDPR. Unity provides the tools to allow a player to opt out of the PII collection, and to manage the personal data that Unity collects about them, as required by the GDPR. Your responsibilities include adding an opt-out button to your app, and providing a link to Unity’s privacy policy from your own privacy policy.
When your app uses Unity Ads, Unity displays a notice to the player the first time an ad is shown on their phone giving them the option to opt in or out of personally identifiable information collection. Subsequent ads also display a button that users can use to manage their data privacy options. For more information about GDPR and the Unity Ads SDK, see GDPR Compliance.
If you use both Unity Ads and Analytics, the Unity Ads opt-out mechanism applies to both services.
If you do not use Unity Ads, but do use other Unity services, such as Unity AnalyticsA data platform that provides analytics for your Unity game. More info
See in Glossary, IAP, Multiplayer, or Performance Reporting, then you must use the Unity Analytics Data Privacy plug-inA set of code created outside of Unity that creates functionality in Unity. There are two kinds of plug-ins you can use in Unity: Managed plug-ins (managed .NET assemblies created with tools like Visual Studio) and Native plug-ins (platform-specific native code libraries). More info
See in Glossary to provide an opt-out choice to your players. The plug-in provides a button you can add to your game that opens a Unity web page where players can manage their privacy settings. Players manage their preferences on a per-game, per-device basis. Unity Analytics does not track whether the same player plays more than one game made with Unity, or plays the same game on multiple devices.
The above options cover any data collected by Unity for customizing Ads and player services. However, if you collect personally identifiable information data on your own, you are responsible for protecting and managing that data.
Best practices:
Solicit your own legal advice. Nothing in this document should be construed as legal advice.
Read and understand the Data Processing Addendum (DPA) [PDF]
List Unity as a third-party which collects data in your privacy policy, and include a link to Unity’s privacy policy in your privacy policy.
Do not send personally identifiable information to Unity Analytics in Standard or Custom Events.
Do not use the Analytics.SetUserGender()
or Analytics.SetUserBirthYear()
to send gender and age information to Unity Analytics. These APIs are deprecated.
If you do not use Unity Ads, then you must use the Unity Analytics Data Privacy plug-in to give your players control over Unity Analytics data collection.
The Data Privacy plug-in is part of the Unity Analytics Library package. You can use the Unity Package Manager (menu: Window > Package Manager) to double-check that the package is enabled in a project.
The plug-in does not support the following platforms:
The Unity Analytics service deletes personally identifiable information sent from games running on those platforms automatically. Contact DPO@unity3d.com if you have questions.
If your game displays ads from the Unity Ad network, the Unity Ads SDK already displays a data collection opt-out choice to the player, and configures Unity Analytics based on the player’s data privacy choice. You only need to use the Unity Analytics Data Privacy plug-in when you do not use the Unity Ads service.
Note: For versions of Unity prior to 2018.3, you must use the Unity Analytics Data Privacy Asset StoreA growing library of free and commercial assets created by Unity and members of the community. Offers a wide variety of assets, from textures, models and animations to whole project examples, tutorials and Editor extensions. More info
See in Glossary package from the Unity Asset Store. The Asset Store version can be used with Unity 4.7, 5.1+, 2017.1+, 2018.1, and 2018.2.
The Data Privacy plug-in includes a Unity UI(User Interface) Allows a user to interact with your application. Unity currently supports three UI systems. More info
See in Glossary button prefabAn asset type that allows you to store a GameObject complete with components and properties. The prefab acts as a template from which you can create new object instances in the scene. More info
See in Glossary, which you can place in a suitable location of your user interface. When a player clicks this button, it opens the Player Data Privacy page in a web browser. Players can opt-out of Unity’s data collection on this page as well as view the data that Unity has collected in the past. You can also provide your own user interface and open the Player Data Privacy page using the API.
Important: If a player has a browser pop-up blocker enabled, their browser can prevent the data privacy page from opening. Some browsers note that a page has been blocked, but others provide no notice at all. Consider adding a message in your user interface that warns players that a pop-up blocker might prevent the page from opening.
Method 1: Using Unity UI
If you do not already have a Canvas GameObjectThe fundamental object in Unity scenes, which can represent characters, props, scenery, cameras, waypoints, and more. A GameObject’s functionality is defined by the Components attached to it. More info
See in Glossary in the SceneA Scene contains the environments and menus of your game. Think of each unique Scene file as a unique level. In each Scene, you place your environments, obstacles, and decorations, essentially designing and building your game in pieces. More info
See in Glossary, add one. Unity automatically adds an EventSystem when you add the Canvas.
Drag the DataPrivacyButton prefab to the CanvasThe area that contains all UI elements in a scene. The Canvas area is shown as a rectangle in the Scene View. More info
See in Glossary GameObject in the Scene. Find the prefab in the Project windowA window that shows the contents of your Assets
folder (Project tab) More info
See in Glossary, in the Packages/Analytics Library/DataPrivacy folder.
Adjust the position, graphics, and text of the button to suit.
The button is already connected to the Data Privacy API, so that it opens the player’s personal data management page when the player clicks it. The page opens in a web browser.
Note: The version of the button prefab under the Packages folder is read-only. You can make changes to the instance of the button in the Scene hierarchy, but you cannot save those changes back to the original prefab.
Method 2: Using you own UI
To use your own user interface for the button, you can request the URL of the user’s data opt-out page and then open that URL in a browser or web view:
Create your own UI control that informs the player of their ability to opt-out of data collection.
Note: The Data Privacy plug-in includes an icon in the Packages/Analytics Library/DataPrivacy folder. Unity encourages you to use this icon on your data privacy button (or similar control) to provide a consistent graphical cue to players encountering data privacy controls in Unity games.
In response to the player’s click or interaction with this control, call the DataPrivacy.FetchPrivacyUrl()
function. This function takes an Action<string>
object that it invokes when the network request completes. You can optionally pass in a second Action<string>
function to handle cases where the network request fails.
In your handler for the FetchPrivacyUrl()
request, use Application.OpenURL()
to open the URL received in a browser.
For example, the following script opens the Player Data Privacy page in response to a click on a GameObject:
using System;
using UnityEngine;
using UnityEngine.Analytics;
public class OptOutHandler : MonoBehaviour {
static void OnFailure(string reason)
{
Debug.LogWarning(String.Format("Failed to get data privacy page URL: {0}", reason));
}
void OnURLReceived(string url)
{
Application.OpenURL(url);
}
public void OpenDataURL()
{
DataPrivacy.FetchPrivacyUrl(OnURLReceived, OnFailure);
}
void OnMouseOver(){
if(Input.GetMouseButtonUp(0)){
OpenDataURL();
}
}
}
See Unity Analytics DataPrivacy API for more information.
When you visit any website, it may store or retrieve information on your browser, mostly in the form of cookies. This information might be about you, your preferences or your device and is mostly used to make the site work as you expect it to. The information does not usually directly identify you, but it can give you a more personalized web experience. Because we respect your right to privacy, you can choose not to allow some types of cookies. Click on the different category headings to find out more and change our default settings. However, blocking some types of cookies may impact your experience of the site and the services we are able to offer.
More information
These cookies enable the website to provide enhanced functionality and personalisation. They may be set by us or by third party providers whose services we have added to our pages. If you do not allow these cookies then some or all of these services may not function properly.
These cookies allow us to count visits and traffic sources so we can measure and improve the performance of our site. They help us to know which pages are the most and least popular and see how visitors move around the site. All information these cookies collect is aggregated and therefore anonymous. If you do not allow these cookies we will not know when you have visited our site, and will not be able to monitor its performance.
These cookies may be set through our site by our advertising partners. They may be used by those companies to build a profile of your interests and show you relevant adverts on other sites. They do not store directly personal information, but are based on uniquely identifying your browser and internet device. If you do not allow these cookies, you will experience less targeted advertising. Some 3rd party video providers do not allow video views without targeting cookies. If you are experiencing difficulty viewing a video, you will need to set your cookie preferences for targeting to yes if you wish to view videos from these providers. Unity does not control this.
These cookies are necessary for the website to function and cannot be switched off in our systems. They are usually only set in response to actions made by you which amount to a request for services, such as setting your privacy preferences, logging in or filling in forms. You can set your browser to block or alert you about these cookies, but some parts of the site will not then work. These cookies do not store any personally identifiable information.