เหตุการณ์ฟunnel

*เนื้อหานี้แปลโดยใช้ AI (เวอร์ชัน Beta) และอาจมีข้อผิดพลาด หากต้องการดูหน้านี้เป็นภาษาอังกฤษ ให้คลิกที่นี่

เหตุการณ์ฟunnel ช่วยให้คุณติดตามความก้าวหน้าของผู้ใช้ผ่านขั้นตอนที่สำคัญในเกมของคุณ ซึ่งรวมถึง:

  • การเริ่มต้น — ผู้ใช้จะออกจากเกมที่ไหนเมื่อต้องเริ่มเล่นเกมของคุณ?
  • ความก้าวหน้า — ผู้ใช้จะหยุดพัฒนาผ่านเกมของคุณที่ไหน?
  • ร้านค้า — ผู้ใช้จะละทิ้งการซื้อที่ไหน?

เมื่อเกมของคุณเริ่มติดตามเหตุการณ์ฟunnel คุณจะปลดล็อกหน้าฟunnel บนแดชบอร์ดการวิเคราะห์ใน Creator Hub คุณสามารถเพิ่มแท็บลงในแดชบอร์ดได้สูงสุดถึงสิบฟunnel

ติดตามเหตุการณ์ฟunnel

ในการติดตามเหตุการณ์ฟunnel ให้ระบุฟunnel ที่สำคัญที่สุดในเกมของคุณและแบ่งออกเป็นขั้นตอน เนื่องจากเป้าหมายคือการเข้าใจพฤติกรรมของผู้เล่น ขั้นตอนเหล่านี้มักเกี่ยวข้องกับการกระทำหรือความสำเร็จบางอย่าง

ใน RPG คุณอาจมีขั้นตอนสำหรับเข้าร่วมเกม หนึ่งสำหรับเลือกคลาส อีกหนึ่งสำหรับออกจากห้องเริ่มต้น และอื่นๆ คุณมักจะเรียกใช้ LogFunnelStepEvent() หรือ LogOnboardingFunnelStepEvent() หลังจาก ที่ผู้เล่นทำขั้นตอนเสร็จ แต่สิ่งที่สำคัญที่สุดคือการทำให้แน่ใจว่าคุณเรียกใช้วิธีเหล่านี้ในเวลาที่สม่ำเสมอและใช้ชื่อที่เข้าใจง่าย

การเริ่มต้นของคุณเป็นสถานที่ที่ดีในการเริ่มติดตามเหตุการณ์ฟunnel เนื่องจากเป็นที่ที่คุณอาจสูญเสียผู้ใช้ส่วนใหญ่

ติดตามฟunnel แบบครั้งเดียว

ฟunnel แบบครั้งเดียวติดตามเหตุการณ์การแปลงที่เกิดขึ้นเพียงครั้งเดียวต่อผู้ใช้

ตัวอย่างที่พบบ่อยคือ ฟunnel การเริ่มต้น ซึ่งมีความสำคัญในการเข้าใจวิธีการปรับปรุงการรักษาผู้ใช้ใหม่และระยะเวลาการเล่นในเกมของคุณ ตัวอย่างต่อไปนี้เป็นฟunnel การเริ่มต้นสำหรับ Plant เกมประเภท tycoon ที่ผู้ใช้ใหม่เข้าฟาร์ม ปลูกเมล็ด น้ำต้นไม้ และอื่นๆ ตามลำดับ:

ติดตามขั้นตอนการเริ่มต้นใน Plant

local AnalyticsService = game:GetService("AnalyticsService")
-- บันทึกขั้นตอนแรกของ FTUE
AnalyticsService:LogOnboardingFunnelStepEvent(
player,
1, -- หมายเลขขั้นตอน
"ในฟาร์ม" -- ชื่อขั้นตอน
)
-- บันทึกขั้นตอนที่สอง
AnalyticsService:LogOnboardingFunnelStepEvent(
player,
2, -- หมายเลขขั้นตอน
"ปลูกเมล็ด" -- ชื่อขั้นตอน
)

ติดตามฟunnel ที่เกิดขึ้นซ้ำ

ฟunnel ที่เกิดขึ้นซ้ำติดตามเหตุการณ์การแปลงที่เกิดขึ้นหลายครั้งต่อผู้ใช้

ตัวอย่างที่พบบ่อยคือ ฟunnel ร้านค้า ซึ่งช่วยให้คุณเข้าใจวิธีปรับปรุงการแปลงผู้ที่จ่ายในเกม ARPPU และรายได้ ตัวอย่างต่อไปนี้เป็นฟunnel ร้านค้า ซึ่งผู้ใช้เปิดร้าน ดูสินค้า เพิ่มสินค้าลงในตะกร้า และอื่นๆ

ใช้ funnelSessionId เพื่อแยกแยะระหว่างการเชื่อมต่อที่แตกต่างกันของผู้ใช้คนเดียวในฟunnel ที่เกิดขึ้นซ้ำ เช่น การเปิดร้านซ้ำหลายครั้งในช่วงเซสชันเดียว

ติดตามขั้นตอนร้านค้า

local AnalyticsService = game:GetService("AnalyticsService")
local HttpService = game:GetService("HttpService")
local funnelSessionId = HttpService:GenerateGUID()
-- บันทึกเมื่อผู้ใช้เปิดร้าน
AnalyticsService:LogFunnelStepEvent(
player,
"ArmoryCheckout", -- ชื่อฟunnel ที่ใช้ในการจัดกลุ่มขั้นตอน
funnelSessionId, -- ID เซสชันฟunnel สำหรับเซสชันการชำระเงินที่ไม่ซ้ำกันนี้
1, -- หมายเลขขั้นตอน
"เปิดร้าน" -- ชื่อขั้นตอน
)
-- บันทึกเมื่อผู้ใช้ดูสินค้า
AnalyticsService:LogFunnelStepEvent(
player,
"ArmoryCheckout", -- ชื่อฟunnel ที่ใช้ในการจัดกลุ่มขั้นตอน
funnelSessionId, -- ID เซสชันฟunnel สำหรับเซสชันการชำระเงินที่ไม่ซ้ำกันนี้
2, -- หมายเลขขั้นตอน
"ดูสินค้า" -- ชื่อขั้นตอน
)
-- บันทึกเมื่อผู้ใช้เพิ่มสินค้าลงในตะกร้า
AnalyticsService:LogFunnelStepEvent(
player,
"ArmoryCheckout", -- ชื่อฟunnel ที่ใช้ในการจัดกลุ่มขั้นตอน
funnelSessionId, -- ID เซสชันฟunnel สำหรับเซสชันการชำระเงินที่ไม่ซ้ำกันนี้
3, -- หมายเลขขั้นตอน
"เพิ่มลงในตะกร้า" -- ชื่อขั้นตอน
)

การใช้ funnelSessionId

เมื่อดำเนินการฟunnel funnelSessionId สามารถช่วยให้คุณติดตามเหตุการณ์ของคุณ แต่ไม่จำเป็นต้องใช้ในทุกกรณี สามารถใช้แนวทางต่อไปนี้:

  • ฟunnel แบบครั้งเดียว - คุณไม่จำเป็นต้องใช้ funnelSessionId สำหรับฟunnel แบบครั้งเดียว เพราะมันเกิดขึ้นเพียงครั้งเดียวต่อผู้ใช้
  • ฟunnel ร้านค้า - ใช้ funnelSessionId เพื่อแยกแยะระหว่างการเชื่อมต่อที่แตกต่างกันของผู้ใช้คนเดียวในฟunnel ที่เกิดขึ้นซ้ำ เช่น การเปิดร้านในช่วงเซสชันเดียวใน ตัวอย่างก่อนหน้า ในกรณีเช่นนี้ ที่ผู้เล่นอาจเปิดร้านหลายครั้งในเซสชันเดียว ควรใช้ GUID เป็น funnelSessionId
  • การอัปเกรดสินค้า - ใช้ funnelSessionId เพื่อแยกแยะระหว่างเส้นทางการอัปเกรดสินค้าที่แตกต่างกัน โดยปกติมักจะมีระยะเวลานานกว่าหนึ่งเซสชันการเล่นเดียว แทนที่จะใช้ GUID เช่นกรณีฟunnel ร้านค้า คุณมักจะสามารถสร้างคีย์ที่ไม่ซ้ำกันโดยอิงจากสินค้าที่ถูกอัปเกรด เช่น: <playerId>-<itemId>.

ขั้นตอนเริ่มต้น

ฟunnel จะเริ่มเมื่อมีการบันทึกขั้นตอนแรก หากคุณต้องการเริ่มฟunnel ทันทีเมื่อผู้เล่นเข้าร่วม ให้บันทึกขั้นตอนแรกในเหตุการณ์ PlayerAdded.

บันทึกขั้นตอนแรกในเหตุการณ์ PlayerAdded

local AnalyticsService = game:GetService("AnalyticsService")
local Players = game:GetService("Players")
Players.PlayerAdded:Connect(function(player)
AnalyticsService:LogOnboardingFunnelStepEvent(
player,
1, -- หมายเลขขั้นตอน
"ผู้เล่นเข้าร่วม" -- ชื่อขั้นตอน
)
end)

ขั้นตอนที่ซ้ำกัน

หากผู้ใช้ทำขั้นตอนซ้ำในฟunnel ฟunnel จะพิจารณาเพียงครั้งแรกของขั้นตอนเท่านั้น ตัวอย่างเช่น หากผู้ใช้บันทึกขั้นตอน 2 ของฟunnel สองครั้ง ฟunnel จะนับเพียงครั้งแรกของขั้นตอน 2 เท่านั้น คุณไม่จำเป็นต้องดำเนินการพิเศษใด ๆ ในการจัดการฟunnel แบบครั้งเดียวสำหรับผู้เล่นที่ตัดการเชื่อมต่อและเชื่อมต่อใหม่ และ funnelSessionId จะจัดการฟunnel ที่เกิดขึ้นซ้ำ

ขั้นตอนที่ทำซ้ำจะถูกมองข้ามโดยฟunnel แต่ยังคงถูกบันทึกและมีส่วนทำให้เกิด การจำกัดอัตราทั่วไป

ขั้นตอนที่ข้าม

หาก auser ข้ามขั้นตอนในฟunnel ขั้นตอนก่อนหน้าอัตโนมัติจะสมบูรณ์ ตัวอย่างเช่น หากคุณมีฟunnel ที่มีขั้นตอน 1, 2 และ 3 และคุณบันทึกขั้นตอน 3 โดยไม่บันทึกขั้นตอน 1 หรือ 2 ฟunnel จะถือว่าเสร็จสิ้นขั้นตอน 1 และ 2.

ใช้ตัวกรองฟunnel

Roblox มีตัวกรองที่ช่วยให้คุณวิเคราะห์ข้อมูลฟunnel ของคุณ สิ่งเหล่านี้รวมถึงข้อมูลผู้เล่นและข้อมูลอุปกรณ์ และคุณสามารถส่งข้อมูลที่กำหนดเองได้ด้วย ในบางกรณี สถานะของผู้เล่นอาจเปลี่ยนแปลงระหว่างฟunnel เช่น เมื่อผู้เล่นเปลี่ยนอุปกรณ์จากมือถือไปยังเดสก์ทอป.

เพื่อหลีกเลี่ยงการนับฟunnel ซ้ำ ตัวกรอง ใช้ได้กับขั้นตอนแรกเท่านั้น ของฟunnel ซึ่งหมายความว่าหากผู้เล่นเปลี่ยนอุปกรณ์ระหว่างฟunnel ฟunnel จะได้รับการระบุให้กับอุปกรณ์ของพวกเขาในช่วงเวลาที่พวกเขาเข้าสู่ฟunnel.

คล้ายกัน ฟunnel จะแสดงโดยกลุ่ม ซึ่งหมายความว่าหากผู้เล่นเข้าฟunnel ในวันที่ 6/19 ฟunnel จะได้รับการระบุให้กับกลุ่มวันที่ 6/19 แม้ว่าพวกเขาจะเสร็จสมบูรณ์ฟunnel ในวันที่ 6/20.

แก้ไขฟunnel

หลังจากที่คุณทำการอัปเดตขั้นตอนฟunnel ของคุณ เป็นสิ่งสำคัญที่ต้องตั้งค่าช่วงวันที่ที่ถูกต้องเพื่อดูฟunnel ล่าสุด หากวันที่ปัจจุบันเป็นวันที่ 6/21 และคุณได้ทำการอัปเดตขั้นตอนที่ 2 ของฟunnel การเริ่มต้นในวันที่ 6/14 คุณควรตั้งค่าช่วงวันที่เป็นวันที่ 6/14 – 6/21 เพื่อดูฟunnel ล่าสุด.

หากคุณเลือกช่วงวันที่ที่รวมการอัปเดตขั้นตอนฟunnel การเตือนจะปรากฏบนขั้นตอนที่เกี่ยวข้อง:

มีการแสดงการแจ้งเตือนบนแดชบอร์ดฟunnel แสดงให้เห็นการเปลี่ยนชื่อภายในช่วงวันที่ที่เลือก.

ปกป้องฟunnel ของคุณจากผู้หลอกลวง

เพื่อให้ข้อมูลของคุณสะอาด สิ่งสำคัญคือการเพิ่มระดับการตรวจสอบข้อมูลในโค้ดเซิร์ฟเวอร์ของคุณเพื่อป้องกันไม่ให้ผู้หลอกลวงส่งข้อมูลที่ไม่ถูกต้องไปยังบริการการวิเคราะห์ของคุณ

ตัวอย่างเช่น หากคุณมีฟunnel การเริ่มต้นที่มีสามขั้นตอน คุณสามารถใช้ RemoteEvent สำหรับไคลเอนต์เพื่อแจ้งเซิร์ฟเวอร์เมื่อผู้เล่นทำแต่ละขั้นตอนเสร็จสมบูรณ์ และเพิ่มการตรวจสอบเซิร์ฟเวอร์เพื่อให้แน่ใจว่าหมายเลขขั้นตอนนั้นถูกต้องก่อนที่จะบันทึกเหตุการณ์:

โค้ดเหตุการณ์ด้านไคลเอนต์

local ReplicatedStorage = game:GetService("ReplicatedStorage")
local onboardingEvent = ReplicatedStorage:WaitForChild("OnboardingEvent")
local function fireOnboardingEvent(step: number)
onboardingEvent:FireServer({ step = step })
end
fireOnboardingEvent(1)
fireOnboardingEvent(2)
fireOnboardingEvent(10) -- ขั้นตอนที่ไม่ถูกต้อง
โค้ดเหตุการณ์ด้านเซิร์ฟเวอร์

local AnalyticsService = game:GetService("AnalyticsService")
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local onboardingEvent = ReplicatedStorage:WaitForChild("OnboardingEvent")
local maxStep = 3
local function onPlayerEventFired(player: Player, args: { step: number })
local step = args.step
if(step > maxStep) then
warn(`ขั้นตอนการเรียนรู้ที่ไม่ถูกต้อง {step} ได้รับจากไคลเอนต์.`)
return
end
print(`{player.Name} ทำขั้นตอนเสร็จสิ้น: {step}`)
AnalyticsService:LogOnboardingFunnelStepEvent(player, step)
end
onboardingEvent.OnServerEvent:Connect(onPlayerEventFired)

ใช้ฟิลด์ที่กำหนดเอง

เหตุการณ์ฟunnel ยังช่วยให้คุณแบ่งข้อมูลออกเป็นฟิลด์ที่กำหนดเองเพื่อสนับสนุนการเปรียบเทียบที่ง่ายขึ้นระหว่างกลุ่ม ตัวอย่างเช่น คุณสามารถติดตามว่าสินค้าเริ่มต้นใดที่ให้ผู้เล่นมีความก้าวหน้าที่ดีที่สุด หรือแนบแมพที่แตกต่างเพื่อดูว่าแมพใดมีวงจรเกมที่ดีกว่าคนอื่น.

ดรอปดาวน์ที่แสดงฟิลด์ที่กำหนดเองสามฟิลด์ที่คุณสามารถเปรียบเทียบ ข้าม โดยมีการแบ่งตามมาตรฐานเช่น อายุ เพศ ระบบปฏิบัติการ และอื่น ๆ.

สำหรับข้อมูลเพิ่มเติม ดูที่ ฟิลด์ที่กำหนดเอง.

ใช้ฟunnel เพื่อพัฒนาเกมของคุณ

หนึ่งในฟunnel ที่สำคัญที่สุดในการติดตามคือการเริ่มต้น เพราะเกมหลายเกมต้องดิ้นรนกับการรักษาผู้ใช้ใหม่และการมีส่วนร่วม.

ในฟunnel การเริ่มต้นสำหรับ Plant ด้านล่าง การลดลงที่ใหญ่ที่สุดคือขั้นตอน 2 ("ปลูกเมล็ด").

กราฟแสดงฟunnel สำหรับเกม Plant แสดงการลดลง 70% ระหว่างในฟาร์ม ขั้นตอนที่ 1 และ ปลูกเมล็ด ขั้นตอนที่ 2.

ตามข้อมูลนี้ คุณสามารถ:

  • เพิ่มตัวบ่งชี้บริบทเพื่อช่วยให้ผู้ใช้ปลูกเมล็ดได้ดีขึ้นเมื่อพวกเขาเริ่มต้น.
  • ออกแบบประสบการณ์ผู้ใช้ใหม่ที่ต้องการให้ผู้ใช้ปลูกเมล็ดและเติบโตเป็นต้นไม้ที่ประสบความสำเร็จก่อนที่จะแสำรวจส่วนอื่น ๆ ของเกม คุณสามารถปรับปรุงเหตุการณ์นี้ได้โดยการสร้าง องค์ประกอบย้อนกลับในเชิงบวก หรือใช้เทคนิคการออกแบบเกมอื่น ๆ.
มุมมองในเกมของเกม Plant แสดงคำแนะนำให้ปลูกเมล็ดเหนือกระถางดอกไม้.
©2026 Roblox Corporation. Roblox, โลโก้ Roblox และ Powering Imagination เป็นส่วนหนึ่งของเครื่องหมายการค้าที่จดทะเบียน และไม่ได้จดทะเบียนของเราในสหรัฐฯ และประเทศอื่นๆ