Funnels are a way of visualizing and measuring how your players move through a sequence of events, or ‘steps’. A well-configured funnel gives insight into which of these steps lose the most players, whether your paths to conversion are optimized, and whether your players are progressing through your game as intended.
The aim of this post is to give you all the insights you need to make the most of GameAnalytics funnels. We’re going to start with some background and cover the basic concepts, before ‘diving deep’ into some of the more advanced practices to help supercharge your setup, including how to create and track custom events.
Plan your custom events with this free tool…
We’ve also created a worksheet for you to use for inspiration when creating your custom event IDs. View it in Google Sheets here (click ‘file’ > ‘make a copy’ to edit). We’ll continue to update the tool over time with more examples. Feel free to share it with your friends ? ?How to improve player engagement and drive more in-app purchases with funnels ? #GameDev Click To Tweet
The fundamentals of funnels
The graphic below visualizes a very basic funnel to help report on First Time User Experience (FTUE) and conversions. By default, every player of your game is added into this linear reporting flow when they complete the first step of the funnel (installing your game). This is important. The players that you want to measure must meet the first condition of the report. It’s therefore a good idea to pick a broad criterion for your first step, as going too granular at this stage can limit practical insight.
So, what can we learn from the example funnel above? In it, we see that only 30% of players complete the tutorial, with just 5% finishing level five. Why is this the case? Perhaps the game intro isn’t engaging enough. Is the opening pace too slow? Are the levels too long? Is the learning curve too steep? Already, funnels are raising appropriate questions led by data.
Here’s a detailed post about creating a great FTUE in your game.
When should you use a funnel?
Funnel reports are most appropriate when you need to visualize a linear process that has a series of connected stages. It makes sense to use a funnel in the following cirumstances:
- Your data is linear and moves through at least 4 stages
- You want to measure retention and conversion on a per stage basis
- You want to reveal bottlenecks and issues in your desired user flow
- You want to track and measure paths to conversion for optimisation
Why use a visual report?
Visualising the data is about more than aesthetics; the visual nature of a funnel report means that – with just a quick glance – you a get a snapshot into the health of your game. The shape of the funnel should match the example below. If the shape is different (or pear shaped), then you know straight away that there’s an issue – and at which step the issue is occurring.
With funnels, each stage represents a percentage of the total unique players. A well configured funnel should have a predictable shape. The first “intake” stage should always be the largest, with each stage thereafter smaller than its predecessor.
Planning your tracking
1. Ask the right questions!
The first question that you should ask before using a funnel is whether your data is in a linear format. If not, consider using one of the different analysis tools within game analytics, such as cohorts or custom segments.
The next thing you should do is question what you want to measure, so that you can properly define the core game KPIs, data and events that you’ll track for each of your steps. The questions that you ask yourself will shape your future tracking and insight. As an example, in your time developing games, have you ever asked yourself the following?
- Have I created an engaging game intro?
- Are my players grinding? If so, where?
- Is my game design creating a good UX?
You can begin to answer these questions with a simple funnel setup, shown below. This funnel report is available in the GameAnalytics demo game.
In this example, we can see that the drop-off between level 1 and level 2 is pretty high (at more than 17%). More focus should be placed on engaging users in this area.
2. Setup your first funnel and keep it simple
If you haven’t created a funnel in GameAnalytics yet, we recommend that you start with a basic structure to get started. You can then identify areas for improvement and layer new steps into your reports over time. It’s easy to duplicate funnels in GameAnalytics, so you can experiment with their structure, while storing all results. Just note that any changes you make to existing funnels will require reprocessing.
Here’s an example of a very basic funnel for reporting on the flow of a tutorial (a design event):
Here’s a more detailed funnel to get you started tracking both your progression and first-time conversion effectiveness. Results are broken down by each step of the funnel. At each step, we count the unique user that completed or dropped-off, together with the average time for completion.
① Installed game
② Game first launched
③ Tutorial started
④ Tutorial completed
⑤ Level 1 started
⑥ Level 1 completed
⑦ Level 2 started
⑧ Level 2 complete
⑨ Resource special offer
GOAL: 1st time converter ?
When creating your steps, make sure to give them humanly readable names, as demonstrated above. This will ensure that when you go to explore your reports, the data is clear and makes sense at a glance.
Important: Keep in mind that funnels work like one-way traffic, or water through a sieve (as the name implies). Users can move forward to the next stage of the funnel, but never backwards. This is a fundamental principle of funnels, so you should always consider whether they are appropriate for your desired tracking.
3. Start fixing the leaks in your funnel
In order to improve the quality of your conversion funnels you’ll need to experiment with each element of player interaction. If you notice an issue at a specific stage, such as bottlenecks or particularly high drop-off rates, you should optimise these areas by reworking the design. The more players you get to the later stages of your funnel, the greater your game’s chances of engaging users – ultimately increasing conversions and driving monetization.
Improving your funnel reports with custom events
In GameAnalytics, you can create funnels with custom events to measure practically any sequence of your game, from level progression to first purchase flows. Funnels excel at providing actionable data, if setup correctly with custom events tailored to your game experience, They’ll then help you identify areas of your game with the most opportunity for improvement.
Important: In GameAnalytics, 4 types of custom event categories work with funnels. You should keep these categories in mind when planning your tracking. The event types are: business, design, progression and resource. Below, we’ve listed some possible event IDs that may ‘live’ within each event type.
Examples: Coins, Lives, Spin
Business events are ways of tracking real-world monetization. Although you may get this functionality from the respective app stores, we would also recommend that you setup business events within GameAnalytics.
This isn’t a needless duplication of data. Configuring your business events in this way means you’ll have a central platform to report on all of your monetization metrics, across all of your channels. Below is an example of purchase event triggered in the iOS SDK.
[sourcecode language=”plain”]string receipt= "MIIT8AYJKoZIhvcNAQcC…2LJuwKuaCXT4Y="; // raw receipt from the purchase platform provider[/sourcecode]
[sourcecode language=”plain”]GameAnalytics.NewBusinessEventIOS("USD",249,"Shop item","Minigun Purchase","Shop_01",receipt);[/sourcecode]
Examples: Gameplay, Kills, Purchase, Social, Tutorial, Player
An example design event could be tracking kills of neutral players, alongside the number of kills achieved. The code below outlines how you could fire this event for tracking:
[sourcecode language=”plain”]GameAnalytics.NewDesignEvent ("Achievement:Killing:Neutral:10_Kills", 123);[/sourcecode]
Examples: Attempts, Complete, Fail, Start, Win %
One of the most common progression events to track within games is level completion. In addition to this, you might also want to capture more information, such as the score each user reach per level. The coded example below outlines level tracking, with and without an associated score:
[sourcecode language=”plain”]GameAnalytics.NewProgressionEvent (GAProgressionStatus.Start, "World_01", "Stage_01", "Level_Progress"); // without score[/sourcecode]
[sourcecode language=”plain”]GameAnalytics.NewProgressionEvent (GAProgressionStatus.Complete, "World_01", "Stage_01", "Level_Progress", 200); // with score[/sourcecode]
Examples: Flow (transactions), Sink (transactions), Source
Resources events are split into 2 categories: sink and source. They represent whether your virtual resources are lost or gained, respectively. Below is a coded example for source event (grenade reward following a boss kill), and a sink event (grenade thrown in combat):
[sourcecode language=”plain”]GameAnalytics.NewResourceEvent (GAResourceFlowType.Source, "Grenade", 2, "Looting", "BossKilled");[/sourcecode]
[sourcecode language=”plain”]GameAnalytics.NewResourceEvent (GAResourceFlowType.Sink, "Grenade", 1, "Combat", "GrenadeThrow");[/sourcecode]
For more detailed information about custom event tracking, check out our ‘Planning your Tracking’ page for a breakdown of each event type, with some coded examples to help your implementation.
Summary and Key Points
When continually analyzed and measured, funnels are a great way of determining specific areas for improvement within a strictly defined process. Funnel analytics allows you to tweak settings at particular stages and measure whether your changes have a positive outcome, which ultimately brings more of your players towards your desired goal. This setup means that they are especially useful within gaming, as they are primed for understanding how to re-engage users and drive more conversions.