Roblox DataStore limits calculator
Request budgets for your server size, a check of your autosave plan against them, and a save-size checker. Numbers from Roblox's DataStore limits page, checked .
Many older forum answers quote reads and writes as
60 + numPlayers × 10. Roblox's current page says 60 + numPlayers × 40. Budgets can also be changed per experience, so check the live value in-game with the snippet below.Your game
Check
Request budgets per server, per minute
Save-size checker
Paste a save as JSON (what HttpService:JSONEncode would produce) to see its size against the 4,194,304 limit. The page counts UTF-8 bytes, which is what Luau's # returns and never less than the character count, so it errs on the safe side.
Other limits
| Limit | Value |
|---|---|
| Value per key (after JSON serialization) | 4,194,304 characters |
| Data store name, key name, scope | 50 characters each |
| Metadata: key name / value / all pairs combined | 50 / 250 / 300 characters |
| Per-key writes, all servers (rolling minute) | 4 MB |
| Per-key reads, all servers (rolling minute) | 25 MB |
| Throughput rounding | each request rounded up to the next KB |
| Total latest-version storage | 500 MB + 1 MB × lifetime users |
Read the live budget in your game
local DataStoreService = game:GetService("DataStoreService")
for _, requestType in Enum.DataStoreRequestType:GetEnumItems() do
print(requestType.Name, DataStoreService:GetRequestBudgetForRequestType(requestType))
end
Run it from a server Script. The budget refills over time, so check it before bursts of requests (for example a save on shutdown), and queue saves instead of firing them all at once.