Skip to content

Player Management

Player management is about knowing your players individually — not just as aggregate numbers. When a player reports a bug, you can look up their timeline. When you want to reward loyal players, you can segment them. When you want social features, you can add leaderboards and achievements.

  • How to search and inspect individual players
  • How to create player segments for targeted configs
  • How to set up achievements and measure unlock rates
  • How to manage leaderboards and moderate scores
  • How to browse and manage cloud saves
  • How to see what players are doing right now (live activity)

The Player Explorer is your support dashboard. Search any player by ID, view their complete event timeline, properties, tags, and session history.

Player Explorer with timeline and properties panel

  • Bug report: Player says “I lost my progress on level 5” → search their ID, see the timeline, find what happened
  • Whale analysis: Look up your top spender, see their purchase history and play patterns
  • Churn investigation: Find a player who stopped playing, see their last events

Player IDs are auto-generated by the SDK and persist across sessions. You can also set a custom ID:

# Use your own auth system's ID
QuestData.player_id = "steam_76561198012345"
# Set searchable properties
QuestData.set_user_properties({
"username": "DragonSlayer",
"platform": "Windows",
"level": 42
})

Segments group players by tags — labels like vip, beta_tester, churned, or whale. Segments drive Remote Config overrides, so different groups get different game experiences.

Segments page with player counts per segment

  1. Tag players in your game:

    QuestData.set_user_tag("paying_user")
    if total_spent > 100:
    QuestData.set_user_tag("whale")
  2. Create a segment in the dashboard:

    • Go to Players > Segments
    • Click New Segment
    • Name: “Whales”, Tag: whale
  3. Use segments for config overrides:

    • In Remote Config, add a segment override
    • Whales get special_offer_price = 0.99 instead of 4.99

See Players & Segments SDK Reference for full details.


Achievements motivate players with goals beyond the main gameplay. Quest Data tracks global unlock rates so you can see how many players earn each achievement.

Achievements page with unlock rate percentages

  1. Define achievements in the dashboard:

    • Go to Players > Achievements
    • Create achievements with key, name, description, points
    • Mark secret achievements as “Hidden”
  2. Unlock from your game:

    QuestData.unlock_achievement("beat_final_boss", func(response):
    if response.get("success") and not response.get("already_unlocked"):
    show_achievement_popup(response["achievement"])
    )
AchievementUnlocksRateWhat it means
First Blood450/100045%Almost half your players get this — well-balanced
Completionist45/10004.5%Very hard, endgame content — expected
Tutorial Done600/100060%40% don’t finish the tutorial — might be too long

See Achievements SDK Reference for full details.


Leaderboards add social competition to your game. Players compare scores, compete for rankings, and come back to improve.

Leaderboard rankings table with moderation tools

Leaderboards are auto-created when the first score is submitted:

QuestData.submit_score("weekly_highscore", 15000, {
"level": 42,
"character": "warrior"
}, "DragonSlayer")

In the dashboard under Players > Leaderboards:

  • View top players per board
  • Delete suspicious entries (cheaters)
  • See score history

See Leaderboards SDK Reference for full details.


Let players save progress to the cloud and continue on any device. The SDK handles version conflicts automatically.

Cloud Saves browser showing player save data

# Save at a checkpoint
QuestData.save_game({
"level": 15,
"inventory": ["sword", "shield"],
"coins": 5000
})
# Load on game start
QuestData.load_game(func(data, version):
if not data.is_empty():
restore_game_state(data)
)

In Players > Cloud Saves you can:

  • Search saves by player ID
  • View raw save data (JSON)
  • See when saves were last updated

See Cloud Saves SDK Reference for full details including conflict resolution.


See what players are doing right now in real-time. Useful during launch day, events, or playtesting.

Live Activity feed showing active players

# Set what the player is doing
QuestData.set_activity("Playing Level 5", {
"level": 5,
"health": 85,
"character": "warrior"
})
# Clear when going to menu
QuestData.clear_activity()

The dashboard shows all active players with their current activity, updated in real-time via WebSocket.