Page 1 of 1

ProfileService: Universal session-locked savable table API

Posted: Wed Jul 15, 2026 3:44 pm
by Roblox
Image

ProfileService is the module most experienced developers reach for when player data actually matters. It handles session locking, so duplication exploits and data loss from server crashes stop being your problem. If your game has trading or an economy, look here first.

What is ProfileService?
Universal session-locked savable table API

FOR NEW PROJECTS - USE ProfileStore (Click here) (This project is no longer supported - it's been stable for a long while and migration to ProfileStore is possible for most projects) ProfileService is a stand-alone ModuleScript that specialises in loading and auto-saving A DataStore Profile (Later referred to as just Profile) is a set of data which is meant to be loaded up only once inside a Roblox server and then written to and read from locally on that server (With no delays associated with talking with the DataStore every time data changes) whilst being periodically auto-saved and saved immediately once after the server finishes working with the Profile. The benefits of using ProfileService for your game's profiles are: - Easy to learn, and eventually forget - ProfileService does not give you any data getter or setter functions. It gives you the freedom to write your own data interface. - Built for massive scalability - low resource footprint, no excessive type checking. Great for 100+ player servers. ProfileService automatically spreads the DataStore API calls evenly within the auto-save loop timeframe.

The facts, straight from GitHub
  • Repository: MadStudioRoblox/ProfileService
  • 324 stars and 152 forks, with 13 open issues
  • Written mainly in Lua
  • Licensed under Apache-2.0
  • Started in 2020, last updated 2024-10-13
Getting started
Grab it with: git clone https://github.com/MadStudioRoblox/ProfileService.git
Check the README for how to install: most Roblox projects are distributed through Wally or as rbxm models you drop into Studio.

Frequently asked questions

Is ProfileService free to use?
It is released under the Apache-2.0 license, so it is free to use. Read the license text for the exact terms before you ship anything based on it.

Is the project still maintained?
Development has slowed down: the last push was on 2024-10-13. The code is still valuable as reference, and forks may carry the work forward.

What do I need to know before diving in?
The project is written mainly in Lua, so some familiarity there helps a lot. Start with the README, then browse the open issues to see what the rough edges are. That is usually the fastest way to understand the real state of any repository.

Where do I get help if I am stuck?
Open an issue on the GitHub issue tracker, check existing discussions, and of course post right here in this topic. Someone in the Roblox community has probably hit the same wall before you.

Over to you
Have you tried ProfileService? Are you running it, forking it, or did you rage quit halfway through the setup? Reply below with your experience, your questions or your own favorite alternative. If there is enough interest we can put together a community guide for it.