Search Unity

  1. Megacity Metro Demo now available. Download now.
    Dismiss Notice
  2. Unity support for visionOS is now available. Learn more in our blog post.
    Dismiss Notice

Unity Analytics vs. Google Analytics vs. GameAnalytics (vs. other solutions)

Discussion in 'General Discussion' started by CanisLupus, Feb 20, 2015.

  1. CanisLupus

    CanisLupus

    Joined:
    Jul 29, 2013
    Posts:
    427
    Update: Shortly after creating this thread, I completely changed this first post from questions to the results of my research. The 3 posts that follow this one might not make much sense now. ;)

    Seeing as there aren't many useful threads about Unity and analytics, I'd like to write what I have found on analytics solutions, from the perspective of someone who has never used analytics before.

    First of all, from what I could gather, GameAnalytics, Flurry and Google Universal Analytics are probably the 3 most used solutions, in no particular order. For games, Google doesn't seem to be used as much. Unity Analytics now also looks like a good possibility, benefiting from its strong integration with the engine. Then, there are other services, like Parse, Soomla, Keen IO, among many others. If you think any of them have features that surpass the others in some way, please do post. :)

    What follows are pros and cons I was able to find for each solution. These do not currently include setup difficulty, most features (heat maps, cohort analysis, etc) and are sometimes subject to opinion (though I should be mostly impartial). Some solutions might also have pros/cons that I mention in another one, without that being mentioned. If that happens, it is only because I don't know it. Finally, I might simply be taking wrong conclusions in some places. Please share your knowledge!

    GameAnalytics


    Pros
    • Entirely free (no premium plan) and has no discernible usage or event limits.
    • Has several events pre-configured for Unity, such as sending an event when a scene is loaded (and sending the time the player spent in the previous scene), your average FPS, when your FPS get to critical levels, error logging, etc. It makes shameless use of the no-limit of events. These are all activated by check boxes in the GameAnalytics settings, which is easy to setup.
    • (Their Unity SDK used to work on all Unity platforms, but their new version currently only works on iOS and Android.)
    • They have benchmarks, so that you can compare various metrics for your game against other games in the market which use the service.

    Cons
    • Events are mainly organized by their ID, such as "Game:Level:Begin" and "Game:Level:End", but the associated event value must always be a float and what you can do with it is mostly limited to sums and means (no distribution/histograms). If you want to send a "duration" along with your "Game:Level:End" event, you can't see the distribution of duration from all players; only their mean and sum (though this is a limitation of many other platforms). You can get around this by including the time range in your ID, because GameAnalytics allows displaying a histogram from an ID category. For example, create IDs like "Game:Level:End:0-20s", "Game:Level:End:21-40s", etc and send those (this is limited, error prone and seems to involve quite some work).
    • This also makes it difficult to send many values associated with a single event, such as the level ID, a time, a score, etc. You have to send several events, one for each value. This shouldn't change in the recent future, based on the answer their support channel gave me.
    • Some people report that the dashboard is not useful for more complex comparisons or filtering.


    Flurry Analytics

    Pros
    • Completely free (no premium plan).
    • From general feedback, it's very easy to use and has nice visualization tools.
    • One of those tools is the User Path, a flow graph which lets you not only see sequences of actions (like funnels), but what percentage of players took each action after another. Example: from the players that got to the main menu, 60% of them clicked "New Game", other 35% clicked "Options", and the rest exited the game.
    • Events can take a dictionary of associated values (instead of just a single one), so, along with your "LevelComplete" event, you can send the level ID, the score, etc. However...

    Cons
    • ...the dictionary of parameters is only composed of strings, so it ends up having the same no-distribution problem as GameAnalytics, where values must include hand-made ranges in order to display useful distribution information (correct me if I'm wrong!). Furthermore, strings don't have sums or means...*
    • No SDK for Unity, so it requires a third party plugin to work in all Unity platforms (if there is one like that at all), or many plugins. Flurry supports the following platforms officially (different packages for each): iOS, Android, Windows Phone 8, Windows 8 (using this ridiculous trick), BlackBerry and HTML5.
    *Just for the record, when a system uses a dictionary of strings as parameters for its events, those strings are generally called "dimensions". They are not much different from the GameAnalytics way of separating the event ID in sections/categories, though they are much more flexible.

    Other info
    • Event limits exist, but seem reasonable (though that always depends on the case). Quoting the FAQ, "there is a limit of 300 Events for each app". These are event "types", actually. It means you can create 300 and use event IDs. Each event can then have 10 parameters/dimensions. Each parameter can have an infinite number of different values, though only the 500 more relevant are displayed in the dashboard (the remaining are grouped under "Others"). The display limitation probably exists in other platforms as well and is kind of expected. You can send a max of 1000 events per session (a session is generally started when the user opens the app, and closed when it goes to the background).

    Google Universal Analytics

    Pros
    • Many data visualization tools, though it might be more complex than other platforms, on average (this is just from some feedback; I haven't checked this).
    • Has specific calls to measure timing events - which are common - social events, etc.
    [I'm sure it has other advantages, as you can define custom things in the dashboard, but it seems a bit complex and I haven't had the time to research it more deeply, so if anyone has insight on it, please share]

    Cons
    • No official SDK, though it should theoretically support all platforms, thanks to the Rest API. There are paid plugins in the asset store to support Google Universal Analytics.
    • Just like in GameAnalytics, we can only send a single value (*see "Other info" section below) along with the event (this time a long integer), though the event ID should have a complex structure to allow useful queries. In fact, the ID is explicitly divided into Category, Action and Label.
    • Limits (from here): "10 million hits per month per property" (reasonable for some; not enough for others). After this, you must upgrade to Premium. "200,000 hits per user per day". "500 hits per session not including ecommerce (item and transaction hit types)". Depending on the expected session length in your game, 500 events might be too little. (?) 2 events per second limit, on average. Max of 20 at once.
    Other info
    • In fact, Google Analytics allows defining custom dimensions as strings, that seem to end up being similar to sending parameters along with events (which is what happens in Flurry). Nevertheless, these dimensions must be defined in the web interface and not dynamically from code.

    Unity Analytics

    Pros
    • Events have a dictionary of <string, object>. In theory, this means that you can send anything with an event. A time float, a score int, a level ID string, etc. As long as the object type is a basic type, recognized by the server, and there are decent visualizations, this means that anything is analyzable.
    • Already supports most if not all relevant platforms in Unity, following the cross platform paradigm.
    Cons
    • Currently in beta, so many things can and will change, and there's no final stand on event limits, pricing (although at least a basic solution will be free).
    • Limit of 100 custom events per hour (per user), as far as I know. This can go out fast, depending on the game, so you might have to condense some events into a single one somehow.
    Other info

    This is a post that tends to become out-of-date quickly, so if you are a new reader, also read the posts by other users, below!

    - Daniel
     
    Last edited: Nov 8, 2015
  2. rakkarage

    rakkarage

    Joined:
    Feb 3, 2014
    Posts:
    683
    Last edited: Feb 21, 2015
    moonyTown likes this.
  3. andymads

    andymads

    Joined:
    Jun 16, 2011
    Posts:
    1,614
    It's a bit hard to gauge Unity Analytics at the moment as it is beta.

    There's also Flurry which provides some really good dashboards for viewing your data.
     
  4. CanisLupus

    CanisLupus

    Joined:
    Jul 29, 2013
    Posts:
    427
    Yes, it probably is hard to measure right now. :) I had hoped for some feature comparisons but you're right. That said, there are a lot of options. I'll test a few to get a better understanding and maybe return here then.

    We were looking for a cross platform solution, and while it helps if scene transitions and similar are tracked without much setup, custom events achieve the same with more work, so not having that is not a recipe for exclusion.

    Thanks to you both for the additional suggestions.
     
  5. CanisLupus

    CanisLupus

    Joined:
    Jul 29, 2013
    Posts:
    427
    I have updated (more like "replaced") the initial post to show my findings/opinions/comparisons. I intended to make this a summary of pros and cons of each solution, so if anyone has additions or corrections to my (already very large) post, please share! There are many things missing. :)
     
  6. Gigiwoo

    Gigiwoo

    Joined:
    Mar 16, 2011
    Posts:
    2,981
    Good summation. Flurry was my favorite web interface - LOVED IT - until I began supporting multiple platforms. I cringed at needing to purchase multiple Prime31 plugins, and their stuff is pretty heavy-weight. The last 18 months, I've settled on Game Analytics - It was easy to integrate, is free, and works well with Unity. There are a few quirks about update times (sometimes data is delayed), though that is relatively minor.

    The biggest weakness with GA is the limitations to the way you can browse data. For instance, comparing funnels for how many people who generated event X also generated event Y is impossible. And, it is REALLY stupid when it comes to 'Sessions' - a single player, never leaving the game, can somehow generate LOTS of distinct sessions, so your average playtime might appear to be 45s. Overall - it's my favoriate.

    Gigi
     
  7. angeloferro

    angeloferro

    Moderator

    Joined:
    Sep 12, 2014
    Posts:
    105
    Hey @CanisLupus! Thanks for the pros/cons list - I'm sure this information is super helpful for developers (and it's helpful for my team as well :))

    I can only really speak for Unity Analytics, and what I can say is that our goal has always been to make an analytics tool that was easy to integrate, that made it easy to understand and analyze your data, and that had features that were worthy of your time.

    You are right - we are in beta, so things will likely change. But rest assured, we're here and we're listening. We will always recommend that developers use the analytics tool that suits their specific needs best (which may not be Unity Analytics), but we're trying our hardest to make a dashboard that is worth the time and effort investing in.
     
  8. sschan

    sschan

    Moderator

    Joined:
    Oct 8, 2014
    Posts:
    87
    Hi - just to expand upon what @angeloferro posted, one key differentiator between other tools and Unity Analytics will be integrated in the Unity engine early in Unity 5.x cycle (this integration eliminates the needs for SDKs!). In the future, Unity Analytics will also provide reporting on Unity Cloud Services such as Cloud Build and Ads - so Unity developers will finally have one solution that brings all the important data together to help them make smart decisions for their games!

    In general, we understand that there are a lot of analytics solutions out there that are interesting for various reasons. We want to provide a solution that meets the needs of the Unity developer community as effectively as possible. But as we continue to build out our functionality, we know that there are other tools out there that might serve certain needs more effectively. We encourage you to try out a variety of services as we see these other tools as being complementary, and not competitive.
     
  9. CanisLupus

    CanisLupus

    Joined:
    Jul 29, 2013
    Posts:
    427
    @Gigiwoo Thanks a lot for sharing. :) You're actually not the first one I read saying that the GameAnalytics dashboard tends to be limited, so that's something to consider.

    @angeloferro and @sschan, I'm glad I can help. I'm very divided between these analytics solutions because indeed, none of them is perfect, and certainly not adequate for everybody. One way to go is to use more than one at the same time, but that has its issues. :)

    I'll try to update or fix information as I find it.

    I used Unity Analytics briefly (as well as most others I mentioned) to get a feel for it, and liked the way you set the event parameters, which can be almost anything. As with other dictionary approaches, I felt it was intuitive (you pass any information relevant to the event), and in this case values are not necessarily strings, which allows a powerful dashboard that can use (for example) decent float parameter distributions instead of only categories. It's unfortunate that typos in dictionary keys can't be easily caught, but that's probably not a big problem.
     
    Last edited: Feb 25, 2015
  10. Ox_

    Ox_

    Joined:
    Jun 9, 2013
    Posts:
    93
    I'm very interested what are the advantages of Unity Analytics and Performance Reporting over GameAnalytics and its crash reporting.

    GA may has some minor flaws but it's completely free.
     
  11. marc_tanenbaum

    marc_tanenbaum

    Unity Technologies

    Joined:
    Oct 22, 2014
    Posts:
    637
    Hi @Ox_
    Please take a look at this link for additional information about Performance Reporting - https://perf.cloud.unity3d.com
    We'll ask our Cloud team to synch up with you as our team isn't specifically working on Performance Reporting.
     
  12. andyk-unity

    andyk-unity

    Joined:
    Dec 11, 2013
    Posts:
    37
    Hey @Ox_, thanks for your question regarding Performance Reporting. The service is in a preview mode and at this stage always looking for feedback to help make it the best choice for you.

    Similar to what @angeloferro and @sschan mentioned, over time we will be seamlessly integrated in the Unity editor, as well as with the other Cloud services.

    As to the service itself, we show crash exceptions on the dashboard fairly quickly after they are encountered (a matter of minutes), allowing you to track down and debug issues found during testing at a much faster rate without having to wait for the next processing cycle to occur.

    We are currently open to developers with a Unity 5 Pro license, so please try it and give us feedback in our forum (http://forum.unity3d.com/forums/game-performance-reporting-preview.83/) . Let us know how we can make Performance Reporting better for you.


    Thanks!
     
  13. Voxel-Busters

    Voxel-Busters

    Joined:
    Feb 25, 2015
    Posts:
    1,952
    @andyk.unity Does this track C#/js exceptions with full stack trace or crashes even in native platfrom(ios and android)?
     
  14. Remiel

    Remiel

    Joined:
    Oct 17, 2012
    Posts:
    105
  15. rakkarage

    rakkarage

    Joined:
    Feb 3, 2014
    Posts:
    683
  16. ilovebread

    ilovebread

    Joined:
    Jun 8, 2015
    Posts:
    6
    Great comparison CanisLupus . I just want to confirm, have you (or anyone in this thread) confirmed if any of the analytics discussed in the comparison above also impose a hard limit on the number of characters each argument can have? Arguments would be the name of the custom parameter type, the custom parameter type values, etc.
     
  17. Mish

    Mish

    Joined:
    Apr 23, 2010
    Posts:
    96
    Does anyone know about any plans for making the Unity Analytics available for all the platforms which Unity support, including consoles?

    GameAnalytics already supports all platforms right?
     
  18. sschan

    sschan

    Moderator

    Joined:
    Oct 8, 2014
    Posts:
    87
    Hi @Mish - We support the following platforms now:
    • Mobile - iOS, Android, Windows Phone 8.1
    • Desktop - Windows, Windows 8.1, Mac, and Linux
    We are always exploring additional platforms to support. :) Please submit your request via the feedback site - http://feedback.unity3d.com/ and tag the category as "Analytics."

    Game Analytics does not support all platforms.
     
  19. pariente

    pariente

    Joined:
    Jul 13, 2015
    Posts:
    1
    Hi @sschan

    I am considering using Unity Analytics for a game I am developing with Unity, but I could not find any information about whether it allows cohorts analysis. Does it?
     
  20. larku

    larku

    Joined:
    Mar 14, 2013
    Posts:
    1,422
    I've been a GameAnalytics user for a year or so and have been very happy with the product.

    One thing missed in the overviews given in the OP is their latest feature - Benchmarks!

    Quote from the GA email introducing this new feature:

    You can now compare your games’ performance to that of all the other games in the GameAnalytics’ network. This will give you an understanding of how you fare against the competition, and where to focus your development efforts.

    The Overview dashboard now shows you benchmarks for:
      • Retention (day 1, 7, 28 and 90)
      • Conversion rate
      • ARPDAU
      • ARPPU
      • Average session length

    This is rather useful information since it can quickly show areas where you need attention.

    You can compare your game to all games on their network or compare against genres (ie sports, action, puzzle, etc)
     
  21. sschan

    sschan

    Moderator

    Joined:
    Oct 8, 2014
    Posts:
    87
  22. Pixie3D

    Pixie3D

    Joined:
    Jun 9, 2015
    Posts:
    2
    Does anyone know if it is possible to build a customized dashboard that can be displayed on a personal website by any chance?
     
  23. angeloferro

    angeloferro

    Moderator

    Joined:
    Sep 12, 2014
    Posts:
    105
    Hi @Pixie3D - Unity Analytics does not currently support customized dashboards, so if this is something you'd like to see, make sure you vote for this feature here.

    Thanks!
     
  24. eexxoo

    eexxoo

    Joined:
    Apr 6, 2013
    Posts:
    7
    @Mish GameAnalytics can be used basically by anyone in tracking events as the REST API is platform agnostic. When it comes to the Unity SDK we are compliant with all platforms except consoles in V1 and with iOS and Android so far in V2. More platforms will be announced!

    @Pixie3D you can create in GA custom dashboards
    @pariente GA allows cohort analysis on core and custom events
     
  25. gurdotan

    gurdotan

    Joined:
    Feb 6, 2013
    Posts:
    15
    Disclaimer: I'm one of the founders of SOOMLA.

    We've recently started creating content around data and analytics for our new product launch that planned for September. An example of what we're writing about is the top data reports of mobile gaming. This e-book is a compilation of the best reports by the likes of TUNE, Appsflyer, GameAnalytics, DeltaDNA, App Annie and several others.

    I wonder if people here would be interested in a similar e-book that compares all 10 analytics dashboards from across the industry.
     
    sivrikaya and yuchangseng like this.
  26. SaraCecilia

    SaraCecilia

    Joined:
    Jul 9, 2014
    Posts:
    675
    Moved this thread over to General Discussion as it doesn't deal with Unity Analytics support specifically.
     
  27. tiggus

    tiggus

    Joined:
    Sep 2, 2010
    Posts:
    1,240
    Interesting writeup, thanks. I haven't used any of these analytics packages and am wondering if there is a clear winner at this point for sending detailed analytics for free. I'm guessing GameAnalytics?

    The game I am interested in adding analytics to is a roguelike that I have been testing with a friend and soon pushing out to some stores. I am sure it is horribly unbalanced but analytics seems to be the only way to get the unbiased feedback I need. Ie. I need to know if certain monsters are over/under powered, what level people seem to fizzle out on, what abilities are over/under powered etc. If possible I would log just about everything.
     
  28. elenzil

    elenzil

    Joined:
    Jan 23, 2014
    Posts:
    73
    For what it's worth,
    as soon as I have a free moment I'll be switching our project to Keen.IO.
    It's not free but it's pretty inexpensive,
    and it has a great API, unlimited data in the parameter dictionary, etc.
    It gives you much more flexible custom-analysis than Flurry,
    and doesn't hide your data from you as much.

    One possible downside is data volume. You pay for more data being recorded.
     
  29. larku

    larku

    Joined:
    Mar 14, 2013
    Posts:
    1,422
    Just curious, have you compared them to Game Analytics? http://www.gameanalytics.com/

    I've been totally impressed with their free service. Excellent analytics.
     
  30. lior_rosenspitz

    lior_rosenspitz

    Joined:
    Jan 24, 2015
    Posts:
    24
    What changed from your last post until toady?
     
  31. CanisLupus

    CanisLupus

    Joined:
    Jul 29, 2013
    Posts:
    427
    @lior_rosenspitz I assume that question is for me...? :)

    Well, even if it isn't, I updated my first post a bit, mainly to reflect two main changes:

    1. The current GameAnalytics SDK for Unity does not support all platforms anymore. It is limited to Android and iOS, so if you want analytics for your desktop game, it won't currently work unless you revert to a previous version.

    2. Unity Analytics has come a long way and now has a functioning dashboard, with funnels, data explorer, etc (since some time ago, actually). I also updated the description for event limits.

    I would also like to thank everyone for their opinions and new platforms suggestions. :) If I could, I would make this whole thread a wiki, so that everyone could update it. My first post will tend to be out of date easily (and subject to my opinion, of course).
     
  32. AAverin

    AAverin

    Joined:
    Nov 7, 2015
    Posts:
    2
    How about play Google Analytics? They have a library in Assets and so far Google Analyitcs is probably the most advanced platform for tracking.
    https://developers.google.com/analytics/devguides/collection/unity/v3/devguide

    GoogleAnalytics has years of experience and best technicians on the table. I don't want to be rude to Unity team, but even though Unity Analytics will be integrated into Editor, product is still relatively fresh. Also, my in-game logic is not tied to Editor and MonoBehaviours, and with DI frameworks I don't really care which analytics implementation to inject.

    So, why not Google Analytics?
     
  33. Anjin_nz

    Anjin_nz

    Joined:
    Jun 24, 2014
    Posts:
    75
    referral spam?
     
  34. furic

    furic

    Joined:
    Jul 8, 2013
    Posts:
    13
    Great post!

    We were at spot where GA already implemented and thinking to switch to Google Analytic, because of more accurate target for AdMob and able to track age/gender of players (but not sure if it really work from this question). Now, we may stick with GA for a while more before Google Analytic has non-beta Unity version and our game gaining more revenue for premium account...

    Also extra information for some people, we also use Umeng in China market, it's surprisingly quite good: having official Unity plugin, responsive support, and user path just like Flurry and test devices/result separated from live data, mobile app that can see realtime data, etc. However, it's speed is horrible outside China so we use GA instead...
     
    Last edited: Jan 11, 2016
  35. grofie

    grofie

    Joined:
    Dec 9, 2013
    Posts:
    30
    Nobody answered this question!

    Does Unity Analytics shows the games exceptions in the dashboard or not?

    GameAnalytics does that for sure. We would give Unity Analytics a try, but without that feature Unity Analytics is quite useless for us at the current state of the project..
     
  36. forzabo

    forzabo

    Joined:
    Aug 28, 2015
    Posts:
    63
    JohnTube likes this.
  37. Anjin_nz

    Anjin_nz

    Joined:
    Jun 24, 2014
    Posts:
    75