Version: 2021.1
Unity Analytics
Setting Up Analytics

Unity Analytics Overview

Note: Unity Remote Config is now available as a preview package. Remote Config is an improved offering that allows you to change the behavior and appearance of your game without requiring a new binary. You can remotely enable or disable features, change the specifics of your game to target specific audiences, or run special events by scheduling new content releases.

Unity AnalyticsAbbreviation of Unity Analytics
See in Glossary
provides the data you need to manage your relationship with your players.

The Unity Analytics Dashboard
The Unity Analytics Dashboard

Understand your players; understand why they play your games; understand why they stop playing your games. Make decisions based on data, not guesses.

By simply enabling Unity AnalyticsA data platform that provides analytics for your Unity game. More info
See in Glossary
in your project, you can get data about how many people first start playing your game, how many play every day, how many play in a given month, and other session-based usage data. If you also use the Unity Ads and IAP Services, your analytics data automatically includes the revenue from these sources. This sort of session data paints a valuable picture of the health of your game. It answers question such as: “Am I getting new players?” “How often and how long do they play?” “Do they play again the next day? The next week? The next month?” “How much revenue am I making per player on a given day?”

By dispatching Standard Analytics Events when players perform key actions in your game, you can extend the analytics data available so that it reveals what your players are actually doing when they play. Do they make it through your onboarding tutorial? Do they visit your IAP store? Do they progress through your game levels as you expect?

Analytics data can help you focus on the most fruitful areas to improve your application to better serve your players. You can make these changes by releasing updates, but you can also create Remote SettingsRemote settings are game variables that you can set remotely on your Analytics Dashboard. More info
See in Glossary
that allow you to adapt and tune your game without an update.

By understanding your players and how they play your games, you can make your games better. And when the data shows that your players are changing, you can react and adapt.

See Analytics Metrics, Segments, and Terminology for definitions of specific terms used throughout the Analytics documentation.

Core usage data

When you enable Analytics, Unity tracks core usage metrics on supported platforms without any effort or implementation on your part. These core metrics include:

  • New installs
  • Daily active users (DAU)
  • Monthly active users (MAU)
  • Total sessions
  • Sessions per user
  • Time spent in app
  • User Segments for Country and Platform

These are all good metrics to use to monitor the health of your game. They tell you how many people are installing your game, how often they play, and how long they stick with it. Many external factors also influence these numbers, but you should watch them for signs of problems that you can correct.

The following chart, displayed on the Overview tab of your Analytics Dashboard shows three data plots: New UsersUsers who played your game for the first time. More info
See in Glossary
, DAU(Daily Active Users) The number of different players who started a session on a given day. DAU includes both new and returning players. More info
See in Glossary
(Daily Active Users), and MAU(Monthly Active Users) The number of players who started a session within the last 30 days. More info
See in Glossary
(Monthly Active Users):

DAU, MAU, New Users chart
DAU, MAU, New Users chart

The New Users plot shows how many people play your game for the first time on a given day. Since new players won’t have had much, if any, exposure to your game, this chart generally reflects external factors. If you launch a marketing campaign or other promotion to attract new players, you would hope to see a bump in the New Users plot.

The DAU plot shows how many of your players played on a given day. Similar to the DAU plot, the MAU plot shows how many of your players played in a given 30-day period.

Sticky Factor chart
Sticky Factor chart

The Sticky FactorAn estimate of how compelling a game is to its players. A high “sticky factor” means that players stick with an app over time. More info
See in Glossary
chart plots the percentage of your monthly players who played on a given day (DAU/MAU). The general idea behind this metric is that it shows how often your players return to play day-after-day. (In other words, how likely players are to “stick” with your game.)

High active player numbers can indicate popularity, but can be tricky to interpret in isolation. In particular, these metrics don’t separate the influence of new versus returning users. For example, an influx of new players could mask the loss of more established players. (The loss of players is called “churn” in common analytics jargon.) DAU, MAU, and Sticky Factor metrics are often used in the Games industry because DAU and MAU have historically been the most widespread publically-available data with which to compare different games.

See Analytics Dashboard for information on how to view your analytics data.

Player behavior data

To learn about game-specific player behavior, you can send analytics events from your game at the appropriate times. Unity provides easy-to-use APIs for sending both standardized and fully-customized events. You can use these events to instrument your games to monitor player behavior, particularly in the following areas:

  • Onboarding — are players making it through your onboarding mechanics such as tutorials or starting levels?
  • Progression — are players progressing through your levels?
  • Economy — are your game economies working out as expected?
  • Design validation — are your game design choices working out as you thought they would?
  • Application validation — are all areas of your application being utilized as you expect? Are there parts that players ignore or don’t notice?
  • Monetization — are your monetization strategies optimal? Are there impediments to players carrying out purchases?

See Analytics EventsEvents dispatched to the Analytics Service by instances of your applications. Analytics events contain the data that is processed and aggregated to provide insights into player behavior. More info
See in Glossary
for information on gathering player behavior data.

To help you analyze player behavior, the Analytics Dashboard includes a funnel builder. A funnel is a display that shows how your players progress through a linear sequence of steps. For example, you could create a funnel for a tutorial that showed what percentage of your users made it through the tutorial steps. Funnels are useful for identifying places in your application where you lose players.

Level progression funnel
Level progression funnel

This example funnel shows player progression through a hypothetical game. Each step in the funnel represents the completion of a game level. While you can always expect some drop off from level to level, too large a drop after a given level could indicate a problem on that level. The funnel won’t tell you the cause – it could be a game play problem, a bug, or the level might be too difficult – but the funnel does indicate a worthwhile area for investigation.

See FunnelsIn Analytics, a funnel is a linear sequence of standard or custom events that you expect a player to complete in order. More info
See in Glossary
for information on implementing funnels.

Revenue data

You can analyze in-app purchase (IAP) revenue along with your other analytics data. If you use the Unity IAPAbbreviation of Unity In App Purchase
See in Glossary
Service, the revenue data is available automatically. Otherwise, you can send an event to the Analytics Service whenever a player makes a purchase. If you use the Unity Ads Service, you can also analyze the resulting revenue on the Analytics Dashboard. (There isn’t any way to report outside ad revenue to the Analytics Service, though.)

The following charts, displayed on the Overview tab of your Analytics Dashboard, show the daily revenue numbers for your project:

Revenue totals
Revenue totals

The first chart shows verified in-app purchase revenue and transactions and advertising revenue from the Unity Ads Service. The charts on the Overview tab only show verified IAP revenueRevenue from verified IAP transactions. IAP verification is currently supported by the Apple App Store and the Google Play Store. More info
See in Glossary
, but you can view all reported revenue in the Data ExplorerA Unity Analytics Dashboard page that allows you to build, view and export reports on your Analytics metrics and events. You can also see how metrics and custom events change over time. More info
See in Glossary
. Unverified revenue sources include test transactions, fraudulent transactions, transactions from platforms that do not support receipt verification (like Amazon and the Windows store), and transactions reported using missing or incorrect information or without configuring the required store API keys. When you use the Unity IAP Service, IAP transactions are automatically reported and verified. When you use an external IAP API, you can report and verify IAP revenue through the Unity Analytics API.

The second chart shows the daily averages of revenue per paying user and per active user:

Average Revenue
Average Revenue

Average Revenue Per Paying User (ARPPU) shows the average amount spent by those players who make IAP transactions on a given day. The Average Revenue Per Daily Active User (ARPDAU) shows the average revenue from all users and includes both IAP revenue and advertising revenue on a given day.

The overview charts show revenue for all users. To better understand how different groups of players monetize, use the Data Explorer to view revenue by segment. The standard segments include lifecycle cohort, geography, monetization category, demographics (when reported), and platform. You can also define your own segments.

The Data Explorer page of the Dashboard provides several additional monetization metrics and segments:

Monetization Metrics:

  • ARPDAU (Average Revenue Per Daily Active User)
  • ARPPU(Average Revenue Per Paying User) Average verified IAP revenue per user who completed a verified IAP transaction. More info
    See in Glossary
    (Average revenue Per Paying User)
  • Number of Unverified Transactions
  • Number of Verified Transactions
  • Total IAP Revenue
  • Total Verified Revenue
  • Unverified IAP Revenue
  • Verified IAP Revenue
  • Verified Paying Users

Ad Metrics:

  • Ad ARPU (Average Revenue Per User)
  • Ad Revenue
  • Ad Starts
  • Ads per DAU
  • eCPM(estimated Cost Per Mille) The estimated revenue for 1000 ad impressions for your app. See What is ECPM. More info
    See in Glossary
    (estimated Cost Per Thousand Impressions)

Monetization Segments:

  • Whales
  • Dolphins
  • Minnows
  • Never Monetized
  • All Spenders

See Monetization for more information about revenue analytics.

Data segmentation

Segments help you better understand player behavior. The standard, predefined segments group players by the following categories:

  • Lifecycle – group players by the number of days since install. Lifecycle cohorts are useful for analyzing how player behavior changes with more experience in your application.
  • Geography – group players by country.
  • Monetization – group players by spending category. Monetization categories help you understand the behavior of players by how much revenue they generate.
  • Platform – group by the player’s computer OS or device type.
The MAU metric segmented by lifecycle cohorts
The MAU metric segmented by lifecycle cohorts

You can use the Segment Builder to define your own categories. However, you can only use any new categories that you make on data collected after those categories are created. For example, if you add a segment for players from Gibraltar, the segment is initially empty; only new activity from players in Gibraltar will show up in the segment.

You can use segments in the Data Explorer and Funnel reports.

For more information about creating your own segments, see Segment Builder.

Remote Settings

The Remote Settings feature allows you to change the values of variables in your games from your Analytics Dashboard. You can create any number of Remote Settings while developing your game and assign them to 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
variables in the Editor. After launching your game, you can change the values of these variables at any time, allowing you to adapt game behavior without releasing an update.

You can use Remote Settings for tasks such as:

  • Adjusting game-play tuning variables
  • Enabling or disabling features
  • Changing graphical themes

See Remote Settings for more information.

Heatmaps

Heatmaps visualize Analytics events spatially in your game.

A heatmap displays Analytics events in the Unity Editor where they occurred in a scene
A heatmap displays Analytics events in the Unity Editor where they occurred in a scene

Use heatmaps while playtesting your game to identify performance and gameplay bottlenecks. Because they require a high volume of Analytics events, using heatmaps after your game has shipped and is in production is not supported.

See BitBucket documentation on HeatmapsHeatmaps are a spatial visualization of analytics data. More info
See in Glossary
for more information.

Heatmaps require Raw Data Export, which is only available with a Unity Pro subscription.

Accessing your raw data

When the reports available on the Analytics Dashboard don’t support the type of analysis you want to perform, you can export your analytics events using Raw Data Export. You can export data from the Analytics Dashboard or using the Raw Data Export REST API in either JSON or tab-separated-value format. From there, you can import the data into a database or analysis tool.

Raw Data Export requires a Unity-Pro subscription. See Raw Data Export for more information.

Supported platforms

The Unity Analytics Service supports the following platforms:

  • iOS
  • Android
  • Tizen
  • Windows Phone 8.1
  • Windows Store 8.1 (Desktop)
  • Windows Store 10.0 (Desktop)
  • Mac, PC, Linux Standalone
  • WebGLA JavaScript API that renders 2D and 3D graphics in a web browser. The Unity WebGL build option allows Unity to publish content as JavaScript programs which use HTML5 technologies and the WebGL rendering API to run Unity content in a web browser. More info
    See in Glossary
    - 5.3 integration and onwards

  • 2018–06–22 Page published

  • New feature in Unity 2017.1

  • Removed Demographics section.

Unity Analytics
Setting Up Analytics