AnalyticsService

Show Deprecated
Not Creatable
Service
Not Replicated

AnalyticsService is a collection of methods that allows developers to track how users interact with their experiences, specifically player progression, in-experience economy, funnels, and custom events.

Summary

Methods

Properties

Methods

LogCustomEvent

()

Parameters

player: Player
eventName: string
value: number
Default Value: 1
customFields: Dictionary
Default Value: "nil"

Returns

()

Code Samples

Log Custom Event

local AnalyticsService = game:GetService("AnalyticsService")
-- Log when the mission starts
AnalyticsService:LogCustomEvent(
player,
"MissionStarted" -- Custom event name
)
-- Log when the mission is completed with the time it took
AnalyticsService:LogCustomEvent(
player,
"MissionCompletedDuration", -- Custom event name
120 -- Event value used in aggregation
)

LogEconomyEvent

()

Parameters

player: Player
currencyType: string
amount: number
endingBalance: number
transactionType: string
itemSku: string
customFields: Dictionary
Default Value: "nil"

Returns

()

Code Samples

Tracking an in-app purchase

local AnalyticsService = game:GetService("AnalyticsService")
AnalyticsService:LogEconomyEvent(
player,
Enum.AnalyticsEconomyFlowType.Source,
"Coins",
1000, -- How many coins are in the bundle
1020, -- balance after transaction
Enum.AnalyticsEconomyTransactionType.IAP.Name,
"1000CoinBundle" -- Unique identifier of the coin bundle
)

LogFunnelStepEvent

()

Parameters

player: Player
funnelName: string
funnelSessionId: string
step: number
Default Value: 1
stepName: string
customFields: Dictionary
Default Value: "nil"

Returns

()

Code Samples

Tracking Shop steps

local AnalyticsService = game:GetService("AnalyticsService")
local HttpService = game:GetService("HttpService")
funnelSessionId = HttpService:GenerateGUID()
-- Log when the user opens the store
AnalyticsService:LogFunnelStepEvent(
player,
"ArmoryCheckout", -- Funnel name used to group steps together
funnelSessionId, -- Funnel session ID for this unique checkout session
1, -- Step number
"Opened Store" -- Step name
)
-- Log when the user views an item
AnalyticsService:LogFunnelStepEvent(
player,
"ArmoryCheckout", -- Funnel name used to group steps together
funnelSessionId, -- Funnel session ID for this unique checkout session
2, -- Step number
"Viewed Item" -- Step name
)
-- Log when the user views adds to cart
AnalyticsService:LogFunnelStepEvent(
player,
"ArmoryCheckout", -- Funnel name used to group steps together
funnelSessionId, -- Funnel session ID for this unique checkout session
3, -- Step number
"Added to Cart" -- Step name
)

LogOnboardingFunnelStepEvent

()

Parameters

player: Player
step: number
stepName: string
customFields: Dictionary
Default Value: "nil"

Returns

()

Code Samples

Tracking onboarding steps

local AnalyticsService = game:GetService("AnalyticsService")
-- Log the first step of the FTUE
AnalyticsService:LogOnboardingFunnelStepEvent(
player,
1, -- Step number
"Joined Game" -- Step name
)
-- Log the second step of the FTUE
AnalyticsService:LogOnboardingFunnelStepEvent(
player,
2, -- Step number
"Choose Class" -- Step name
)

LogProgressionCompleteEvent

()

Parameters

player: Player
progressionPathName: string
level: number
levelName: string
customFields: Dictionary
Default Value: "nil"

Returns

()

LogProgressionEvent

()

Parameters

player: Player
progressionPathName: string
level: number
levelName: string
customFields: Dictionary
Default Value: "nil"

Returns

()

LogProgressionFailEvent

()

Parameters

player: Player
progressionPathName: string
level: number
levelName: string
customFields: Dictionary
Default Value: "nil"

Returns

()

LogProgressionStartEvent

()

Parameters

player: Player
progressionPathName: string
level: number
levelName: string
customFields: Dictionary
Default Value: "nil"

Returns

()

Events