All of a sudden, all our HTTP requests are failing to send to Roblox with an error of HTTP 429 (Too Many Requests) for requests like Player:GetRankInGroup(). This has never happened before, and our systems haven’t been updated since June 24, 2026. The code surrounding these variables also hasn’t been updated in 4 years. This inconsistency and no notice on Ratelimit changes inclines the need for a bug report because an issue with ratelimits has occured without public notice.
This affects our leaderboard, our chat, and our ping system.
Expected behavior
HTTP 429 (Too Many Requests) doesn’t affect us with Roblox native systems because of changed Ratelimits.
What We’ve Tried
Error Preventive Solution
While this code may prevent the errors, we shouldn’t be worrying about failures occuring this rapidly from Roblox’s end. This code piece is for those needing a resolve into the matter, as this hasn’t been fixed for awhile now.
Finding Possible Cause
This makes it something out of our control that Roblox needs to find a solution to. Membership checks are extremely needed in many experiences across Roblox. It’s fundamental for administrative systems and further.
I can confirm we experienced something very similar during our roleplay session today.
Our game relies heavily on voice chat and player/group-based systems, and we usually have 100+ users attempting to join around the same time, usually around 7:45 PM Eastern. During that join window, our console began getting spammed with HTTP 429 “Too Many Requests” errors, which is not something we normally experience at this scale.
This affected systems that depend on player information, including rank/group checks and other player-related backend logic. The game started behaving inconsistently because several systems were suddenly unable to complete requests that normally work without issue.
We have since started optimizing our own scripts by slowing down requests, centralizing player information checks, caching more data, and reducing the number of scripts making separate calls at once. However, the fact that this suddenly became a major issue without us previously seeing this behavior makes it seem like something changed on Roblox’s end, or at least that the rate limit behavior became much stricter very suddenly.
This is especially concerning for games with scheduled sessions or large join waves, where 100+ players may enter within a short period of time. Even if developers optimize their own systems, native Roblox-backed requests suddenly returning 429s without clear warning or documentation can cause major live-session issues.
It would be helpful to know whether any rate limits were recently changed, whether this is intended behavior, or whether this is a platform bug affecting Roblox services.
Worth noting that even a small-scale team changer UI in a relatively small server (i.e. 10 people or less) still triggered these issues. It feels almost definitely like there’s something going on that’s not just a ratelimit change or something like that, but perhaps a deeper issue going on with ROBLOX servers at the moment.
local Success, groupRank = pcall(function()
return player:GetRankInGroupAsync(groupId)
end)
if not Success then
groupRank = 0
end
local Success, groupRole = pcall(function()
return player:GetRoleInGroupAsync(groupId)
end)
if not Success then
groupRank = "Guest"
end
local Success, groupMember = pcall(function()
return player:IsInGroupAsync(groupId)
end)
if not Success then
groupMember = false
end
-- HANDLING CODE
Had this as well, I made a whole module that queues every GetRankInGroup/IsInGroup/GetRoleInGroup in my game because all of my staff couldn’t work and servers weren’t showing up.
I thought it was because of it being tagged as [Depricated], but I was wrong.
This is making my players have to wait for 2m sometimes, just to load their stupid group rank.