Integrate event tags
Automatic event tracking
After installing the Ad SDK, you just have to Initialise the core SDK and the event tracking will be automatically available.
Session times are being recorded out of the box and you don’t have to do anything. So how much time the player spends in your application per day and player retention are tracked automatically.
You can send the basic event, or you can provide a bit more information to better understand player behavior, serve more appropriate ads, or tailor your app to your player.
For recording other significant actions and activities, you have the option to create app events manually.
The more information you share via the SDK, the more advanced your reporting and player profiling will be.
For a better understanding of app performance, we are also providing analytic tracking.
How many events should I integrate?
The logic is simple: the more events you integrate the better the predictions will be. With better predictions we are able to better match users to ads, generating higher revenue for you. As a rule of thumb, our Head of Machine Learning shared that...
- Ideal integration : 15 events (the 5 most frequent spend, earn, receive events)
- Good integration : 9 events (the 3 most frequent spend, earn, receive events)
- If you are a publisher integrating multiple games, consistency is beneficial! Integrate same events across all apps
Receive Event
Event for recording the player receiving any resource:
// Record just receiving of any resource
NeftaEvents.Record(new ReceiveEvent());
// Record a bit more information about receiving
NeftaEvents.Record(new ReceiveEvent({ _name = "coins", _category = Category.SoftCurrency, _quantity = 5 });
// Record receiving of resources in full details
NeftaEvents.Record(new ReceiveEvent(
{
_name = "coins",
_category = Category.SoftCurrency,
_quantity = 5,
_method = ReceiveMethod.Reward,
_customString = "daily-2"
});
AddReceiveEvent(category: ResourceCategory.Other,
method: ReceiveMethod.Shop,
name: "name2",
quantity: 2,
customPayload: "{\"field\":\"value\"}")
[_plugin.Events AddReceiveEventWithCategory:ResourceCategoryConsumable
method:ReceiveMethodCreate
name:"name2"
quantity:2
customPayload:@"{\"field\":\"value\"}"];
Spend event
Event for tracking player spending any resource:
// Record just spending of any resource
NeftaEvents.Record(new SpendEvent());
// Record a bit more information about spending
NeftaEvents.Record(new SpendEvent({ _name = "coins", _category = Category.SoftCurrency, _quantity = 10 }););
// Record spending of resources in full details
NeftaEvents.Record(new SpendEvent(
{
_name = "coins",
_category = Category.SoftCurrency,
_quantity = 10
_method = SpendMethod.Continuity,
_customString = "world-3;segment-4;speed-8"
});
_neftaEvents.AddSpendEvent(category: NeftaEvents.ResourceCategory.PremiumCurrency,
method: NeftaEvents.SpendMethod.Upgrade)
[_plugin.Events AddSpendEventWithCategory: ResourceCategoryPremiumCurrency
method: SpendMethodUpgrade];
Quantity
Should always be a positive number.
Very large numbers (values over billion) will be clamped on BE because of behavioural analysis.
Progression event
For tracking player progress through the application:
// Just record progression
NeftaEvents.Record(new ProgressionEvent());
// Record progression event with a bit more information
NeftaEvents.Record(new ProgressionEvent() { _name = "tutorial", _status = Status.Start });
// Record progression event in full detail
NeftaEvents.Record(new ProgressionEvent()
{
_name = "tutorial",
_status = Status.Start,
_type = Type.GameplayUnit,
_source = Source.CoreContent,
_value = 3,
_customString = "group-D"
});
_neftaEvents.AddProgressionEvent(status: NeftaEvents.ProgressionStatus.Start,
type: NeftaEvents.ProgressionType.GameplayUnit,
source: NeftaEvents.ProgressionSource.CoreContent,
name: @"area-4",
value: 21)
[_plugin.Events AddProgressionEventWithStatus: ProgressionStatusStart
type: ProgressionTypeGameplayUnit
source: ProgressionSourceCoreContent
name: "area-4"
value: 21];
Updated 4 months ago