Use Case: Product & Game Preference
Follow our step by step guide in order to target your player base with relevant content based on their game type and product preferences using the Singularity Model.
๐ Objective: Use the Singularity Model to have the ability to target players with relevant content based on their game type and product preferences in order to increase campaign conversion.
Firstly, we want to specify the below segmentation capabilities:
- Product Preference (e.g. Casino / Live Casino / Sportsbook)
- Game Type Preference
- Blackjack
- Slots
With these in mind, we want to look at the game type and product preference in two different time ranges:
- Short-term (recently = within the last 30 days)
- Long-term (historically = within the player lifetime)
Every feature that you create should be meaningful to ensure it's relevant for your use.
Below๐ we will walk you through a step-by-step guide on how to use the Data Studio and Singularity Model in order to achieve this objective.
๐ Define Segmentation in the Data Studio
Firstly, we need to clarify the definitions behind the different types of segmentation. We can do this with the help of the Data Studio, to find out the possible values for Game Type and Product that are needed to create the Feature Types.
Navigate to: Insights and Analytics -> Data Studio -> Dashboards
Create a Brand Dashboard Group and add a new Dashboard into that group. Click to open the new Dashboard and add a Widget to your Dashboard. For this objective, we need to select Player Performance in order to get the relevant data.
Add Dimension
Once the widget is added, select Casino Game Type as the dimension. This will check the database for all values captured on the game_type field in the casino event.
Run the query to get a list of all the values that we can use later to define the product and game type preferences.
๐ Map out Definitions
Using the values from the Dashboard, we can map out the definitions of Product Preference and Game Type Preference.
Product Preference
A player should be classified by the product that they have bet the largest amount on:
Product | Event | Key | Value |
---|---|---|---|
Casino | Casino Event | game_type | slots |
Casino | Casino Event | game_type | jackpot |
Live Casino | Casino Event | game_type | roulette |
Live Casino | Casino Event | game_type | poker |
Live Casino | Casino Event | game_type | game-show |
Live Casino | Casino Event | game_type | first-person |
Live Casino | Casino Event | game_type | blackjack |
Live Casino | Casino Event | game_type | baccarat-sic-bo |
Game Type Preference
A player should be classified by the specific Game Type that they have bet the largest amount on:
Game Type | Event Type | Value | Key |
---|---|---|---|
Slots | Casino Event | slots | game_type |
Jackpot | Casino Event | jackpot | game_type |
Roulette | Casino Event | roulette | game_type |
Poker | Casino Event | poker | game_type |
Game Show | Casino Event | game-show | game_type |
First Person | Casino Event | first-person | game_type |
Blackjack | Casino Event | blackjack | game_type |
Baccarat | Casino Event | baccarat-sic-bo | game_type |
โ๏ธ Create Feature Type
Now that we have all the information we need, we can set this up as a Feature Type inside the Singularity Model. Starting with the Product Preference we can create a new Feature Type.
For this objective, we need to set it up as in the image below. Set up a class for each value identified.
๐ง Note: The Slug will later be used in the computations to make sure the relevant data is connected to the Class.
Next, repeat the same by creating a Feature Type for Game Type Preference, as in the image below๐.
๐ฉโ๐ฉโ๐ฆโ๐ฆ Create Player Feature
Now that we have the Feature Types set up, we can create the relevant Player Features.
As mentioned in the objective, we want to assess a player's preference in two different time ranges: short and long term. We should set up one Player Feature for each preference and for each time range. That will result in 4 Player Features:
- Product Preference (short-term) - (using Feature Type Product Preference)
- Product Preference (long-term) - (using Feature Type Product Preference)
- Game Type Preference (short-term) - (using Feature Type Game Type Preference)
- Game Type Preference (long-term) - (using Feature Type Game Type Preference)
๐ง Note: For these 4 player Features, we do not want to set a default value.
The default value is the value a player will be assigned if they have not yet been classified as any other value.
Product Preference (short-term)
Here is an example of how to set up the Player Features:
๐ฅ Add Computations (Manage Movements)
Step two of setting up the Player Features involves managing the player movements, or computations. This will calculate and assign players to the features we have created.
๐ง Note: The type of Action will define when the calculation takes place.
This is similar to how an activity can fire actions on either a real-time event specifically for the player or a set time for all players.
For this objective, we want the computation to run on a time-based query and ideally during low traffic, therefore we have set it to trigger at 03:00 UTC.
From the Player Feature page, click Manage Movements.
Set up your time-based query with a computation Trigger set to 03:00 UTC. To do this, you will need to create the query against the database where the computation will be done. Here you need to identify certain tables, fields and statements.
๐โโ๏ธ Please reach out to Fast Track in case you need assistance with the query.
Once the query is completed, simply decide a name for the computation and click Update.
Repeat this step for each of the 4 Player Features.
Segmentation
After the computation Trigger has fired (03:00UTC in our example), you'll be able to see that players have now been assigned to one of the classes of your Player Feature.
You can see this happen in the Player Distribution dashboard inside the Player Feature:
Following this, you will be able to find the Product Preference and Game Type Preference in the standard segmentation list to be used for activities and lifecycles.