Players progress through levels, but you don't know where they drop off? Built-in metrics from App Store and Google Play don't show in-game behavior. We specialize in GameAnalytics integration — a platform designed for mobile games — so you can see every progression funnel, every currency spend, and every ad session. Our team has over 7 years of experience and has completed 150+ GameAnalytics integrations for mobile games. Get a consultation — discuss the details of integration for your project.
Why GameAnalytics Beats Universal Systems
GameAnalytics is built for games from the ground up. Progression, resource, and design events are its native data model. No need to design a schema from scratch. Setup time is reduced by 2 days on average. License cost under high load is 2–3 times lower than Amplitude. At 10 million events per month, license savings reach 80%. Compared to custom analytics, GameAnalytics integration is 3x faster and 5x more cost-effective. GameAnalytics documentation
How GameAnalytics Improves Retention
Automatic Day 1, 7, and 30 reports show player retention dynamics. Level progression funnels pinpoint the exact churn point. For example, after optimizing level 5 for one of our clients, Day 14 retention increased by 20%. Clients typically see up to 30% improvement in retention within the first month after integration.
How to Monitor Monetization
Resource events track all currency sources and sinks, giving full monetization tracking. GameAnalytics automatically builds an economy balance: if sinks significantly exceed sources, players quickly become poor and leave. We configure these events for you and provide recommendations for balancing.
SDK Integration
SDKs are available for Unity (GameAnalytics SDK Unity v6.2.0), iOS (GameAnalytics iOS), Android (GameAnalytics Android), and React Native. Follow these steps to integrate:
- Install the SDK via Package Manager or download .unitypackage.
- Add the GameAnalytics component to a GameObject in your first scene.
- Enter your Game Key and Secret Key from the dashboard into the component.
- Call
GameAnalytics.Initialize()in the Awake method of your GameManager.
For Unity — via Package Manager or .unitypackage:
using GameAnalyticsSDK; public class GameManager : MonoBehaviour { void Awake() { GameAnalytics.Initialize(); } } Before calling Initialize(), the GameAnalytics component must be in the scene with Game Key and Secret Key from the dashboard filled in.
On iOS natively:
import GameAnalytics GameAnalytics.configureBuild("1.0.0") GameAnalytics.initialize(withGameKey: "GAME_KEY", gameSecret: "SECRET_KEY") Event Types (table)
| Event Type | Purpose | Example |
|---|---|---|
| Progression | Level progress | Start world_1 level_05 |
| Resource | Economy (Source/Sink) | Source gold 500 reward daily_bonus |
| Design | Custom metrics | Boss:Defeated:DragonKing |
Progression and Resource can be combined in one code block:
// Level start GameAnalytics.NewProgressionEvent(GAProgressionStatus.Start, "world_1", "level_05"); GameAnalytics.NewResourceEvent(GAResourceFlowType.Source, "gold", 500, "reward", "daily_bonus"); Design covers everything else:
GameAnalytics.NewDesignEvent("Boss:Defeated:DragonKing", 1); GameAnalytics.NewDesignEvent("Settings:SoundToggle", 0); // 0 = disabled How to Add a Design Event for a Custom Mechanic (Step by Step)
- Define the hierarchy using colons (max 5 levels).
- Call
GameAnalytics.NewDesignEvent("your:event:path", value). - Verify the event appears in the GameAnalytics Dashboard.
Avoiding Event Naming Mistakes
The event string is separated by colons — these are hierarchy levels in the dashboard. Boss:Defeated:DragonKing creates a branch Boss → Defeated → DragonKing. Max 5 levels. If you don't maintain structure from the start, the dashboard becomes a flat list of hundreds of lines.
Automatic Metrics
GameAnalytics collects DAU/MAU, retention (Day 1, 7, 30), session length, and crash reports (via native crash handler integration) without extra code. For iOS 14+ SKAdNetwork support is enabled automatically. These automatic game metrics are critical for product evaluation.
Common integration mistakes:
- Naming Design events without hierarchy — dashboard becomes flat.
- Missing explicit session end on iOS for background tasks.
- Incorrect Game Key and Secret Key mapping for different builds.
Integration Stages
| Stage | Duration | Description |
|---|---|---|
| Analysis and event design | 0.5 day | Define key events: progression, resource, design |
| SDK integration | 0.5 day | Install SDK, configure keys |
| Event development | 1 day | Implement event sending in code |
| Testing and debugging | 0.5 day | Verify data in dashboard |
| Deployment and monitoring | 0.5 day | Launch and first reports |
Session End Validation
GameAnalytics automatically closes a session when the app goes to background via OnApplicationPause. On Android this works reliably. On iOS, under certain scenarios (VoIP, Background Fetch), the session may not close. Add an explicit call:
void OnApplicationPause(bool paused) { if (paused) GameAnalytics.StopSession(); else GameAnalytics.StartSession(); } The free GameAnalytics plan suits most indie games — event limits are high enough (500 million events per month). This makes it attractive for projects without a budget for Amplitude or Mixpanel.
What's Included
- SDK integration (Unity / iOS / Android)
- Configuration of progression events for each game world and level
- Configuration of resource events for all currency sources and sinks
- Design events for key mechanics (bosses, items, settings)
- Data verification in GameAnalytics Dashboard
Timelines
Basic setup with core event types: 0.5–1 day. Cost is calculated individually. We guarantee transparent analytics with no hidden costs. Contact us to discuss your project.







