Skip to main content

Set up activity tracking in your game (the loader, rank and idle time)

Step-by-step: download the loader, add it to your Roblox game, choose who is tracked, switch idle time on or off, and replace the key.

Written by Liam Radford

You need to be a workspace admin, or have the Reset activity permission (it covers the Activity settings).

1. Choose who is tracked and idle time

Open Settings > Activity.

  • Activity Role: choose the minimum rank that is tracked. Anyone below it is ignored.

  • Idle Time Tracking: Enabled subtracts away-from-keyboard time from active minutes. Disabled counts all time in game.

2. Download the loader

On the same page choose Download loader. There is also a Download beta loader.

  • The stable loader is recommended for production.

  • The beta loader uses batched requests and DataStore retry to avoid Roblox's HTTP rate limits. It is still being tested, so use it at your own risk.

Each download creates a new activity key and replaces the previous one. The key is built into the file you download. Rosterr stores only a hash of it, so the old file stops working the moment you download a new one. Always update the loader in your game after downloading a new one.

3. Add it to your game

  1. Open your game in Roblox Studio.

  2. Turn on Allow HTTP Requests in Game Settings > Security.

  3. Insert the downloaded file (it is a Roblox model, .rbxmx) into ServerScriptService, the usual place for scripts that must only run on the server and that players cannot read.

  4. Publish the game.

Roblox only runs it in published, live servers. Studio and private servers are not tracked by default.

Options inside the package

The script has a small configuration block at the top:

Option

Meaning

Default

privateEnabled

Also track private servers and Studio

false (not tracked)

cooldownPeriod

Seconds between retries of failed requests

30

rankChecking

Only send data for people at or above the tracked rank

recommended on

groupId

The Roblox group ID to track for

set for you

minTrackedRank

The lowest tracked rank, fetched from Rosterr when the game starts

from Settings

minutesTillAFK

Minutes without movement before someone is AFK

2

Do not edit the lines marked "Do not touch".

4. Check it works

  • Join the game as a tracked staff member. The output window in Studio or the developer console shows "Rosterr: Module loaded; activity will be tracked for [name]".

  • Open Settings > Activity and look at Game health, if your workspace has it: it lists each game that has sent activity, when it last did, and whether it is "Sending", "Quiet" (over a day) or "Not heard from" (over a week).

  • After you leave, your session appears on your profile.

Writing your own integration

Instead of the loader you can call the public API yourself. See "Track staff time with the game API (Luau example)".

Troubleshooting

  • Nothing is recorded. Is HTTP enabled in the game? Is the loader in ServerScriptService? Did you download a new loader and forget to update the game (the old key no longer works)? Is the person at or above the tracked rank? Are you testing in Studio (not tracked)?

  • The wrong people are tracked. Change the Activity Role (minimum rank).

  • Roblox says HTTP requests are being rate limited. Try the beta loader, which batches requests.

  • Two games? Each game needs the loader. They all report to the same workspace, using the same key.

Related articles

Did this answer your question?