Essential Analytics

brainCloud has built-in analytics to provide a realtime snapshot of the latest activity of your app. 

The dashboard, found under Reporting | Analytics in the Portal, provides information on total users, daily actives, session activity, platform distribution, purchasing activity and more - for the past 7 days.

However, you may be looking for more than what's here.

Introducing DataStream

brainCloud's DataStream system allows you to stream analytics from brainCloud to the analytics tool of your choice. 

This is done via our integration with Segment.com - which allows us to connect to over 200+ tools.

Trying out DataStream is very simple. To do so:

  • Register for a free Segment Developer account, and create a project to use
  • You will need to get the 1: SourceId and the 2: Write Key and add them to the brainCloud dashboard on the  Design | Integrations | Segment  page.
  • Go to the brainCloud portal, and enter the Segment project information in the new Design | Integration section
  • Connect another service to Segment – like MixPanel, Google Analytics, etc.

That’s it – once you do this brainCloud will immediately begin sending the following events:

  • Identity – contains base information (like profile id, name, e-mail etc) about a user interacting with Segment. Sent before we send any other events associated with that user.
  • Login – triggered when a user logs in (via the Authenticate API)
  • Register – triggered when a new user account is created (via the Authenticate API)
  • RecordedScore – triggered when a user posts a score to a leaderboard
  • LevelledUp – triggered when a user gains an experience level
  • AwardedAchievement – triggered when a user is awarded an achievement
  • AwardedMilestone – triggered when a user is awarded a milestone
  • AwardedQuest – triggered when a user is awarded a quest
  • WasSentNotification – triggered when a remote push notification was sent to the user [Note - limited in V4+]
  • CompletedOrder – triggered when a user completes an IAP purchase
  • JoinedTournament – triggered when a user joins a tournament
  • LeftTournament – user left the tournament
  • JoinedDivision – triggered when a user joins a division
  • LeftDivisionInstance – user left the division instance.
  • PostedTournamentScore – user posted an updated score in the tournament
  • ClaimedTournamentReward – triggered when a user claims a reward
  • PostedChatMessage – sent whenever a user sends a chat message
  • JoinedGroup – the user has joined a group
  • LeftGroup – the user has left a group
  • JoinedLobby – triggered when a user joins a lobby
  • LeftLobby - triggered when the user leaves a lobby


In addition, your app can send custom events of its own (from the client or via Cloud Code).  The DataStream service has three methods to support this:

  • CustomTrackEvent – used to track custom user behaviours throughout your app – for example, a puzzle game might record “RoundStarted” with information on what round the user is playing, and what boosts they’ve selected for the round, together with a “RoundCompleted” event that summarizes the results. CustomTrackEvent() takes as parameters the name of the event and set of custom key+value pairs for attributes.
  • CustomScreenEvent – used to record that the user went to a particular app screen
  • CustomPageEvent – same as the above, but oriented toward web pages

How do I verify this worked?

You can go to the API Explorer on Design | Cloud Code | API Explorer and Authenticate and run Operations against the DataStream Service.

You should see a 200 status, and those events should appear in the analytics dashboard connected to your Segment's account.

Other Options

Finally, there is nothing forcing you to use the brainCloud-provided analytics. Feel free to integrate your favorite analytics library into your app - brainCloud plays nicely with others!

Happy coding and good luck!

Your feedback is important to us. Please rate this response below. Thanks! 

Did this answer your question?