Front-End Web & Mobile

Announcing Amazon Mobile Analytics in the AWS Mobile SDK for Unity

Update: April 30, 2018: We’ve discontinued Amazon Mobile Analytics. Amazon Pinpoint now provides the analytics features that Amazon Mobile Analytics previously offered. If you’re new to Mobile Analytics, you can integrate the mobile analytics features of Amazon Pinpoint into your app. If you currently use Amazon Mobile Analytics, you can migrate to Amazon Pinpoint.


Last month we launched the AWS Mobile SDK for Unity in Developer Preview. Today, we announce the availability of Amazon Mobile Analytics in the AWS Mobile SDK for Unity, one of the most requested features for the SDK. With Amazon Mobile Analytics, you can gain deep insights into your games developed in Unity.

Here are some of the ways you can use Amazon Mobile Analytics:

Measure Engagement & Retention

With Amazon Mobile Analytics, you can

  • Track how frequently your players play the game (i.e., number of times your game was used in a day)
  • Measure how effectively you are able to retain your players on a daily and weekly basis
  • Measure how engaged your players are

Engagement and retention is measured via session events. Here is how you can record session events:

void Start()
    {

           _analyticsManager = AmazonMobileAnalyticsManager.GetOrCreateInstance(
                    new CognitoAWSCredentials(<cognitoIdentityPoolId>, <region>), 
                    <region>, 
                    <appId>);       
    }

void OnApplicationFocus(bool focus) 
    {
            if(focus)
            {
                _analyticsManager.ResumeSession();
            }
            else
            {
                _analyticsManager.PauseSession();
            }
    }

Custom Events

Custom events help you understand user actions specific to your game. For example, you may want to understand how many attempts it takes before players successfully complete a level or what armor type players prefer to use. With custom events, you can create an event called “levelX_complete” with “attempts” as a metric value and “armor_type” as an attribute value. Then each time a player completes a level, you can record a “levelX_complete” event with the player’s attempts count and armor type.

AmazonMobileAnalyticsEvent customEvent = new AmazonMobileAnalyticsEvent("level3_complete");
            
customEvent.AddAttribute("armor_type","Titanium");
customEvent.AddMetric("attempts", failedAttempts);

_analyticsManager.RecordEvent(customEvent);

By reviewing the data via the Custom Events Dashboard, you may discover that level 3 is too easy because players always finish on their first attempt. You could then adjust the level’s difficulty to better challenge and engage players to improve retention. You might also discover that some armor types are under-utilized, so you could adjust their properties to make them more popular.

Revenue

Monetization events help you track the in-app revenue that is generated in your game. You can measure the following:

  • Paying Daily Active Users
  • Average Revenue Per Daily Active User (ARPDAU)
  • Average Revenue Per Paid Daily Active User (ARPPDAU)
  • Paying Monthly Active Users
  • Average Revenue Per Monthly Active User (ARPMAU)
  • Average Revenue Per Paid Monthly Active User (ARPPMAU)

Let’s say you are offering health booster as an in-app item in your game. By correlating revenue data with custom events, you can determine if increasing the difficulty for level 3 increases the paying daily/monthly active users or if it impacts the average revenue.

Here is how you can record monetization events:

AmazonMobileAnalyticsMonetizationEvent monetizationEvent = new AmazonMobileAnalyticsMonetizationEvent();

monetizationEvent.Quantity = 3.0;
monetizationEvent.ItemPrice = 1.99;
monetizationEvent.ProductId = "health_booster";
monetizationEvent.ItemPriceFormatted = "$1.99";
monetizationEvent.Store = "Apple";
monetizationEvent.TransactionId = "TransactionId123";
monetizationEvent.Currency = "USD";

_analyticsManager.RecordEvent(monetizationEvent);

Custom Data Analysis

Amazon Mobile Analytics Auto Export enables you to set up automatic export of your data to Amazon S3 for use with other data analytics tools such as Amazon RedshiftAmazon Elastic MapReduce (EMR), Extract, Transform and Load (ETL) software, or your own data warehouse.

To learn more about custom data analysis, see the following blog post by Jeff Barr.

Resources

Here are some resources to help you get started with the AWS Mobile SDK for Unity:

The AWS Mobile SDK for Unity is currently in Developer Preview. If you have any questions, issues, or ideas, you can provide us feedback.