HTTP Request Ratelimit Changed W/O Notice

Issue

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.

Visual Aids



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.

16 Likes

I am experiencing this same issue with my games, Would appreciate if it could get looked into asap.

1 Like

Experiencing in my game as well.

1 Like

Experiencing in my game as well

Experiencing the same issue in my game as well.

I am experiencing this issue as well in our experiences.

Affecting us heavily in our experiences.

I am experiencing this in my game as well.

1 Like

Temporary fix is to do pcall(function() for now.

--Example:
pcall(function()
 local groupRole = player:GetRoleInGroup(groupId)
end)

Any group role stuff won’t show but it’ll prevent your entire code from breaking.

2 Likes

i am experiencing this as well

I can also confirm this issue is occurring.

This is occurring for the experiences I work on as well.

1 Like

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.

2 Likes

Expierencing this in Asylum Life;

This seems to line up with the FFlag DFFlagGetRolesInGroupAsyncEnabled2 getting flipped

1 Like

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

This is a better way of going about it.

1 Like

im not experiencing this in my game but please fix this i NEED valley prison!1!!!1!111!

4 Likes

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.

This really needs to be fixed.

3 Likes

Bumping this - it is heavily affecting our experiences as well.

We have a pretty much identical situation to @KUPR1N in that our player count is high and comes in waves so I’d echo their statement on this as well.

4 Likes