AWS for Games Blog

Delight your players with game analytics


September 8, 2021: Amazon Elasticsearch Service has been renamed to Amazon OpenSearch Service. See details.

Game development is all about building an experience that will delight players. But, as a developer, how do you know which decisions are the right ones?

Focus testing and market research can get you part of the way there, but nothing can provide better insight into player behavior than gathering real data from actual players. Real world analytics can provide insight into a number of different aspects of your game such as:

  • Engagement data to help you determine how long players play
  • Gameplay data to help tune and balance your game’s difficulty curve
  • Or technical performance data to help ensure you’re delivering that smooth 60 FPS experience that your players crave.

Analytics data empowers you to make informed, data-driven decisions instead of guessing what your players want. With the rise of the games-as-a-service business model, releasing a game is often only the start of the journey. Realtime insight into player behavior is critically important for understanding how to retain your players, drive monetization, and create a game with lasting success.

Today’s players expect new content and updates to roll out on a regular basis and with data analytics, you can ensure you’re regularly delivering content that will keep your players coming back.

Amazon Web Services (AWS) provides a number of tools and services to allow game developers to quickly and easily build an architecture for collecting, storing and analyzing gameplay data that will elastically scale to the size of your player base, whether you’re making a small indie game or Epic Games’ Fortnite.

Collecting Data

The value of real world analytics data in games is clear, but as a developer, getting started can be intimidating. When there’s so much happening in your game, it’s hard to know what to data collect. The key is to start with questions that you want to answer:

  • How long do players play in a single sitting?
  • Which character do players pick the most?
  • What is the hardest level in the game?

Once you understand the questions you want to answer, it’s easy to determine what data you need to collect. For instance, if you’re trying to determine which character gets chosen the most (a.k.a. the “pick rate”) in your game, you can send an analytics event every time a player makes a choice on the character select screen. With all of those datapoints available, you can easily calculate the popularity of all the different characters in your roster. An overly popular character might indicate a game balance problem or an extremely unpopular character might indicate more of an artistic appeal issue.

In general, analytics work best when you follow the scientific method: ask a question, form a hypothesis, run an experiment, and analyze the results. As a developer, this will be a cycle where you ask questions, answer them and then ask new questions as a result. What matters most is having an easy way to collect the data so that you can answer these important questions.

Analytics in the Cloud

Whether you’re a seasoned developer of cloud-based services or are new to analytics and cloud computing entirely, AWS provides a number of features and services that you can use to build a flexible and scalable platform for your game analytics.

The first step is getting data out of your game and into the cloud. AWS services like Amazon Kinesis Data Streams and Amazon Kinesis Data Firehose provide massively scalable and durable realtime data streaming that can continuously capture gigabytes of data per second from your game. To help answer your key analytics questions, you can send analytics events to Amazon Kinesis every time a players log in, completes a level, picks a character or performs any action that will help you answer your analytics questions.

Once your data is in the cloud, you can use any of the AWS Compute Services to run code, in virtually any language, to validate, transform and store your data. For instance, you might choose to run secure, resizable virtual machines on Amazon EC2, manage a fleet of Docker containers on Amazon ECS or go completely serverless with AWS Lambda.

After your data has been validated and transformed for analysis, you can choose from a number of purpose-built data storage options in AWS. If you need to durably store and archive huge amounts of player data, Amazon S3 provides the ability to store and retrieve any amount of data with industry leading durability, availability, security and performance. In order to answer more ad-hoc questions, you can use a fast, scalable data warehouse like Amazon Redshift to quickly run massive queries across your entire player base to perform analysis like determining your Daily Active User (DAU) count or average play session length. For real-time analytics and dashboarding, you can leverage Amazon OpenSearch Service (successor to Amazon Elasticsearch Service) and its built-in Kibana plug-in to generate beautiful, up-to-date visualizations of player activity that can be shared with the entire development team.


Understanding the behavior of your player base is critical to engaging players, retaining them and ultimately creating a fun and successful game. By letting AWS handle the analytics infrastructure heaving lifting, you can more easily get actionable insights from your data and focus on making a great game.

To find out more about how AWS can help you on your analytics journey, visit