Data Access

Data Access provides access to your Analytics data through Snowflake (a data warehouse).

You can leverage the power of Snowflake to view your Analytics data through a third-party visualization tool such as Tableau. Your data will join other Analytics data in your Snowflake account; you have access to your organization's entire Analytics data, rather than per project. It’ll be in raw data format, so you can perform advanced SQL queries that aren't currently possible within the Analytics feature set. This is possible through the Snowflake feature named Secure Data Sharing.

Unity currently supports GCP EU-WEST4 and GCP US-CENTRAL1 regions. To use Data Sharing, you’ll need:

  • A Snowflake account you created, independent of Unity
  • A Snowflake sharing key (account locator)
  • The cloud provider and region of your Snowflake account (must be either GCP EU-WEST4 or GCP US-CENTRAL1)

Due to data replication, event data in GCP US-CENTRAL-1 may be delayed by up to 1 hour 30 minutes.

Note that only organization owners can access the Data Access settings in the dashboard.

Share to an existing Snowflake account

  1. Open Analytics in the Unity Cloud Dashboard, and select Analytics Settings.

  2. Click Set up Data Access.

  3. Click With an existing account, then click Next.

  4. Enter your account locator and cloud region provider. Click Submit.

  5. Your Data Access account will now show under Analytics Settings.

To create and to access the database from this share in Snowflake, click the Shares icon in the menu bar. You’ll see the share listed in the view. Shares can be viewed by using a SQL command. This lists the shares available for the SF account.

To access the shared data you need to create a database from the share and grant the account admin role for the database.

  1. Select the share that you want to create the DB from and click Create database from Secure Share.

  2. You’ll see a pop-up asking for a database name and select a role. Give your desired name to the database and grant the ACCOUNTADMIN role.

  3. Click Create Database; that will create a database with the name you choose. Alternatively, you can do this through the following SQL in Snowflake:

    CREATE DATABASE "SFSHARETEST" FROM SHARE UNITYLIVEOPS."UNITY_ANALYTICS_PDA";
    GRANT IMPORTED PRIVILEGES ON DATABASE "SFSHARETEST" TO ROLE "ACCOUNTADMIN";

To look at the created Databases, click on the Databases icon in the menu bar. Alternatively, you can use SQL commands to view the list of databases: Show databases;

To look at views and tables with in the share, run a describe share <sharename> SQL query in the worksheet. You can see the database in the list below.

Find the share name in the database table under the origin column.

Now that you have access to all the views that are shared to you, you can run SQL in the worksheet using the data within the views.

For more information on how to consume SF shared data see the SF documentation.

Useful resources

Data Access Available Views

Through Data Access, you gain access to a number of views containing your account’s data.

ACCOUNT_EVENTS

This table lists all of the events that have been sent in from your application. Event-specific parameters can be found in the EVENT_JSON column as a JSON object. As the parameters are stored as a JSON object, you'll need to parse the content in order to query it.

ACCOUNT_NAME (TEXT)

GAME_NAME (TEXT)

GAME_ID (NUMBER)

ENVIRONMENT_NAME (TEXT)

ENVIRONMENT_ID (NUMBER)

LOAD_ID (NUMBER)

EVENT_ID (NUMBER)

EVENT_TIMESTAMP (TIMESTAMP) - The time the event created on the client device

EVENT_NAME (TEXT)

PLAYER_START_DATE (DATE)

ACQUISITION_CHANNEL (TEXT)

USER_COUNTRY (TEXT)

USER_ID (TEXT)

EVENT_JSON (VARIANT)

LOADED_TIMESTAMP (TIMESTAMP) - The time where the event is loaded into the data warehouse.

ACCOUNT_EVENT_JSON_KEYS

This table contains data on the event fields that are used for your games.

ACCOUNT_NAME (TEXT)

GAME_NAME (TEXT)

GAME_ID (NUMBER)

ENVIRONMENT_NAME (TEXT)

FIELD_NAME (TEXT)

INSERTED_TIMESTAMP (TIMESTAMP)

ACCOUNT_GAMES

This table lists all of the games that exist under your account.

ACCOUNT_NAME (TEXT)

GAME_NAME (TEXT)

GAME_ID (NUMBER)

ENVIRONMENT_NAME (TEXT)

ENVIRONMENT_ID (NUMBER)

UNITY_PROJECT_ID (TEXT)

ACCOUNT_USERS

This table lists all the users who have sent in an event in the past. For each user, the columns contain a variety of useful metrics.

ACCOUNT_NAME (TEXT)

GAME_NAME (TEXT)

GAME_ID (NUMBER)

ENVIRONMENT_NAME (TEXT)

ENVIRONMENT_ID (NUMBER)

USER_ID (TEXT)

BIRTH_YEAR (NUMBER)

LAST_SESSION_ID (TEXT)

LAST_EVENT_TIMESTAMP (TIMESTAMP)

LAST_PLATFORM (TEXT)

COUNTRY (TEXT)

GENDER (TEXT)

START_DATE (DATE)

ACQUISITION_CHANNEL (TEXT)

LAST_LOCALE (TEXT)

ACCOUNT_FACT_EVENT_TYPE_USERS_DAY

This table lists all of the events a user has recorded in one day and how many times they have sent in each of those events.

ACCOUNT_NAME (TEXT)

GAME_NAME (TEXT)

GAME_ID (NUMBER)

ENVIRONMENT_NAME (TEXT)

ENVIRONMENT_ID (NUMBER)

EVENT_DATE (DATE)

USER_ID (TEXT)

AGE_GROUP (TEXT)

GENDER (TEXT)

USER_COUNTRY (TEXT)

ACQUISITION_CHANNEL (TEXT)

PLAYER_START_DATE (DATE)

PLATFORM (TEXT)

CLIENT_VERSION (TEXT)

EVENT_NAME (TEXT)

NUMBER_OF_EVENTS (NUMBER)

INSERTED_TIMESTAMP (TIMESTAMP)

ACCOUNT_FACT_WAU_USERS

This table lists all of the users that have sent in an event in the last week.

ACCOUNT_NAME (TEXT)

GAME_NAME (TEXT)

GAME_ID (NUMBER)

ENVIRONMENT_NAME (TEXT)

ENVIRONMENT_ID (NUMBER)

EVENT_DATE (DATE)

USER_ID (TEXT)

AGE_GROUP (TEXT)

GENDER (TEXT)

USER_COUNTRY (TEXT)

ACQUISITION_CHANNEL (TEXT)

PLAYER_START_DATE (DATE)

PLATFORM (TEXT)

CLIENT_VERSION (TEXT)

ACCOUNT_FACT_MAU_USERS

This table lists all of the users that have sent in an event in the last 30 days.

ACCOUNT_NAME (TEXT)

GAME_NAME (TEXT)

GAME_ID (NUMBER)

ENVIRONMENT_NAME (TEXT)

ENVIRONMENT_ID (NUMBER)

EVENT_DATE (DATE)

USER_ID (TEXT)

AGE_GROUP (TEXT)

GENDER (TEXT)

USER_COUNTRY (TEXT)

ACQUISITION_CHANNEL (TEXT)

PLAYER_START_DATE (DATE)

PLATFORM (TEXT)

CLIENT_VERSION (TEXT)

ACCOUNT_FACT_MISSION_USERS_DAY

This counts how often a user has started, completed, failed and abandoned missions.

ACCOUNT_NAME (TEXT)

GAME_NAME (TEXT)

GAME_ID (NUMBER)

ENVIRONMENT_NAME (TEXT)

ENVIRONMENT_ID (NUMBER)

EVENT_DATE (DATE)

USER_ID (TEXT)

AGE_GROUP (TEXT)

GENDER (TEXT)

USER_COUNTRY (TEXT)

ACQUISITION_CHANNEL (TEXT)

PLAYER_START_DATE (DATE)

PLATFORM (TEXT)

CLIENT_VERSION (TEXT)

MISSION_NAME (TEXT)

MISSIONS_STARTED (NUMBER)

MISSIONS_COMPLETED (NUMBER)

MISSIONS_FAILED (NUMBER)

MISSIONS_ABANDONED (NUMBER)

INSERTED_TIMESTAMP (TIMESTAMP)

ACCOUNT_FACT_POTENTIAL_RETAINED_USERS_7_DAY

This table contains data on Users retained after installing in the last 7 days.

ACCOUNT_NAME (TEXT)

GAME_NAME (TEXT)

GAME_ID (NUMBER)

ENVIRONMENT_NAME (TEXT)

ENVIRONMENT_ID (NUMBER)

EVENT_DATE (DATE)

USER_ID (TEXT)

AGE_GROUP (TEXT)

GENDER (TEXT)

USER_COUNTRY (TEXT)

ACQUISITION_CHANNEL (TEXT)

PLAYER_START_DATE (DATE)

PLATFORM (TEXT)

CLIENT_VERSION (TEXT)

ACCOUNT_FACT_POTENTIAL_RETAINED_USERS_14_DAY

This table contains data on Users retained after installing in the last 14 days.

ACCOUNT_NAME (TEXT)

GAME_NAME (TEXT)

GAME_ID (NUMBER)

ENVIRONMENT_NAME (TEXT)

ENVIRONMENT_ID (NUMBER)

EVENT_DATE (DATE)

USER_ID (TEXT)

AGE_GROUP (TEXT)

GENDER (TEXT)

USER_COUNTRY (TEXT)

ACQUISITION_CHANNEL (TEXT)

PLAYER_START_DATE (DATE)

PLATFORM (TEXT)

CLIENT_VERSION (TEXT)

ACCOUNT_FACT_PRODUCT_USERS_DAY

This table contains the number of products bought split out by the standard filter parameters. The data comes from the productsReceived object in the transaction event.

ACCOUNT_NAME (TEXT)

GAME_NAME (TEXT)

GAME_ID (NUMBER)

ENVIRONMENT_NAME (TEXT)

ENVIRONMENT_ID (NUMBER)

EVENT_DATE (DATE)

USER_ID (TEXT)

AGE_GROUP (TEXT)

GENDER (TEXT)

USER_COUNTRY (TEXT)

ACQUISITION_CHANNEL (TEXT)

PLAYER_START_DATE (DATE)

PLATFORM (TEXT)

CLIENT_VERSION (TEXT)

PRODUCT_CATEGORY (TEXT)

ACCOUNT_FACT_RETAINED_USERS_7_DAY

This table contains data on Users retained after installing in the last 7 days.

ACCOUNT_NAME (TEXT)

GAME_NAME (TEXT)

GAME_ID (NUMBER)

ENVIRONMENT_NAME (TEXT)

ENVIRONMENT_ID (NUMBER)

EVENT_DATE (DATE)

USER_ID (TEXT)

AGE_GROUP (TEXT)

GENDER (TEXT)

USER_COUNTRY (TEXT)

ACQUISITION_CHANNEL (TEXT)

PLAYER_START_DATE (DATE)

PLATFORM (TEXT)

CLIENT_VERSION (TEXT)

ACCOUNT_FACT_RETAINED_USERS_14_DAY

This table contains data on Users retained after installing in the last 14 days.

ACCOUNT_NAME (TEXT)

GAME_NAME (TEXT)

GAME_ID (NUMBER)

ENVIRONMENT_NAME (TEXT)

ENVIRONMENT_ID (NUMBER)

EVENT_DATE (DATE)

USER_ID (TEXT)

AGE_GROUP (TEXT)

GENDER (TEXT)

USER_COUNTRY (TEXT)

ACQUISITION_CHANNEL (TEXT)

PLAYER_START_DATE (DATE)

PLATFORM (TEXT)

CLIENT_VERSION (TEXT)

ACCOUNT_FACT_USER_SESSIONS_DAY

This table has a record for each user session. Each record contains a variety of user level aggregate KPIs for that session. If any of the dimensions excluding aggregate dimensions, are recorded in this table change during a session (for example, AGE_GROUP or GENDER), a new record will be created for that session.

ACCOUNT_NAME (TEXT)

GAME_NAME (TEXT)

GAME_ID (NUMBER)

ENVIRONMENT_NAME (TEXT)

ENVIRONMENT_ID (NUMBER)

EVENT_DATE (DATE)

USER_ID (TEXT)

AGE_GROUP (TEXT)

GENDER (TEXT)

USER_COUNTRY (TEXT)

ACQUISITION_CHANNEL (TEXT)

PLAYER_START_DATE (DATE)

PLATFORM (TEXT)

CLIENT_VERSION (TEXT)

SESSION_ID (TEXT)