"Your request has been rate limited" on Reddit: causes and fixes
What Reddit's rate limit message means for app users and for developers, Reddit's documented API limits as of Oct 2026, and the fixes that work for each.
Piyushh · October 17, 2026 · 6 min read
"Your request has been rate limited" means Reddit decided your account or connection sent too many requests too fast, and now it's making you wait. In the app the full message usually says "please take a break for 405 seconds and try again", and the fix is to do exactly that. Developers hit the same limit as an HTTP 429 when they go over Reddit's API limit. As of October 17, 2026, that limit is 100 queries per minute per OAuth client id.
App users and developers run into it for different reasons, and the fixes differ too. App users mostly see it while scrolling or editing a profile. Developers see it when a script goes faster than the limit allows or doesn't use OAuth. This post covers both groups. It also covers "You're doing that too much," which looks similar but comes from a separate rule.
Three Reddit messages that look alike
| Message | Who sees it | What it means | What to do |
|---|---|---|---|
| "Your request has been rate limited, please take a break for N seconds" | App and website users | Too many requests from your account or connection in a short window | Wait the stated seconds, then reopen |
| "You're doing that too much. Try again in N minutes" | People posting or commenting | Reddit's anti-spam limit on posting frequency | Earn some karma, post less often in that community |
HTTP 429 Too Many Requests | Developers and scripts | You exceeded the Data API limit, or sent unauthenticated traffic | Use OAuth, read the rate limit headers, back off |
Reddit's help center covers the second one. "Why am I being told, You're doing that too much" (checked October 17, 2026) says "there's a limit to how often users can post and comment in a community," and new accounts with little karma hit it most. We couldn't find a help article for the first message, so what follows comes from user reports.
"Your request has been rate limited" in the Reddit app
We searched Reddit for posts from the past year that quote the message (the API call is further down). The first page returned 25 posts, the newest from the day we checked, spread across r/help, r/bugs, r/ios, r/teenagers and others. A few patterns stand out.
It happens during normal use. On September 5, u/cakeeded posted in r/bugs about app version 2026.35.1 on iOS: "I scroll around 10-20 posts and already getting this app freezing my app for 120-300 seconds." In r/help, u/royalblue4 said it had been happening daily, once "after about two minutes of scrolling after not opening Reddit" for 12 hours.
Profile edits seem to trigger it. Several posts describe changing an avatar or banner and getting stuck. u/Maybeelven wrote in r/help that after changing a banner, every page said "Looks like reddit is having some trouble" with "please take a break for 405 seconds" at the bottom.
The wait varies: these threads report 91, 120 to 300, 396 and 405 seconds. One r/help commenter wrote: "never have I been rapidly commenting, posting, upvoting etc. Just doing normal Reddit behavior."
Reddit hasn't said what sets these limits, so we can't tell you the exact threshold. These are individual reports, not a measured rate.
How to fix it as a user
- Wait the time it shows. The message tells you how long. Reopening the app repeatedly during the wait probably doesn't help, since each reload is another request.
- Close and reopen the app once the wait is over. If an error screen keeps repeating on its own, as in the banner reports, force-quit it.
- Update the app. One of the clearest reports names a specific iOS build, so check that you're on the latest one.
- Try the website at reddit.com in a browser if the app keeps hitting it.
- If it keeps happening during ordinary scrolling, report it in r/bugs with your app version and what you were doing.
If you were posting or commenting when it appeared and the message says "You're doing that too much," that's the spam filter. Wait the stated minutes and post less often in that community.
The Reddit API rate limit for developers
Reddit documents its API limit in the Data API Wiki, checked October 17, 2026:
- The limit is "100 queries per minute (QPM) per OAuth client id." Reddit raised it from 60 to 100 on July 1, 2023, according to its Moderation Bots & Tooling help article.
- That limit is averaged over a window: "QPM limits will be an average over a time window (currently 10 minutes) to support bursting requests." You can go above 100 in one minute as long as the 10-minute average stays under.
- Requests without OAuth get nothing: "Traffic not using OAuth or login credentials will be blocked, and the default rate limit will not apply." In our own test on October 14, an unauthenticated request to a subreddit's
new.jsonreturned HTTP 429 on the first call (details in the Reddit API guide). - Reddit asks for a User-Agent in the format
<platform>:<app ID>:<version string> (by /u/<reddit username>), and says "Many default User-Agents (like 'Python/urllib' or 'Java') are drastically limited." It also says "NEVER lie about your User-Agent." - Chat messages have their own daily caps for free access, listed on the same page.
Reddit returns three headers you should read on every response:
| Header | Meaning (Reddit's wording) |
|---|---|
X-Ratelimit-Used | "Approximate number of requests used in this period" |
X-Ratelimit-Remaining | "Approximate number of requests left to use" |
X-Ratelimit-Reset | "Approximate number of seconds to end of period" |
X-Ratelimit-Reset is a count of seconds, not a timestamp. X's equivalent header is a Unix timestamp, so code that handles both needs to know the difference.
Handling the Reddit API rate limit in code
Check remaining, sleep until reset when it hits zero, and treat a 429 as "slow down" rather than "retry now."
import time
import requests
HEADERS = {
"Authorization": "Bearer YOUR_OAUTH_TOKEN",
"User-Agent": "script:com.example.mytool:v1.0.0 (by /u/your_username)",
}
def reddit_get(url, params=None, max_tries=5):
for attempt in range(max_tries):
r = requests.get(url, headers=HEADERS, params=params, timeout=30)
remaining = float(r.headers.get("X-Ratelimit-Remaining", 1))
reset = float(r.headers.get("X-Ratelimit-Reset", 60))
if r.status_code == 429:
time.sleep(max(reset, 2 ** attempt)) # seconds until the window ends
continue
r.raise_for_status()
if remaining < 1:
time.sleep(reset) # spend the wait now instead of hitting a 429 next call
return r.json()
raise RuntimeError("Still rate limited after retries")
Three habits matter more than the code. Cache responses that don't change minute to minute, such as subreddit details and old threads. Batch where the API lets you, for example limit=100 on listings. And if you run several workers, they share one budget, because the limit is per OAuth client id.
Rate limits aren't the only wall
The rate limit is the easy part. Reddit stops accepting new public API requests on October 31, 2026, and commercial use was never on the free tier. Our Reddit API pricing post has the published rates and dates, and how to get a Reddit API key covers the approval process.
Getting Reddit data without managing Reddit's limits
If you'd rather not run OAuth, pace requests and handle 429s yourself, a hosted API can do that part. ChatterAPI reads Reddit and deals with the upstream limits on its side, so what you manage is a key and a credit balance. It's independent and not affiliated with Reddit.
It does have its own rate limit, counted in requests per second per account: 2 on signup credits, 10 on Starter, 25 on Growth and 50 on Scale, as listed in the rate limits docs. This is the search we ran on October 17, 2026 to find the user reports above:
curl "https://api.chatterapi.com/v1/reddit/search?q=%22your+request+has+been+rate+limited%22&sort=new&time=year" \
-H "Authorization: Bearer $CHATTERAPI_KEY"
The response, trimmed to two of the 25 posts:
{
"data": [
{
"id": "1w7t53k",
"title": "IOS “Your request has been rate limited” 2026.35.1",
"author": "cakeeded",
"subreddit": "bugs",
"score": 4,
"numComments": 0,
"createdAt": "2026-09-05T06:44:02.000Z"
},
{
"id": "1vk8mfc",
"title": "Frequently rate limited",
"author": "royalblue4",
"subreddit": "help",
"score": 2,
"numComments": 2,
"createdAt": "2026-08-10T02:34:41.000Z"
}
],
"page": { "nextCursor": "AftQlH7YGtMZ…", "hasMore": true },
"credits": { "charged": 2, "remaining": 626 },
"requestId": "req_01M54ZAYTAZATC35FXWR",
"cached": false
}
Go over our limit and the error says how long to wait. To see it, we sent four requests at once from an account on signup credits (limit 2 per second). Two succeeded and two came back like this:
{
"error": {
"code": "rate_limited",
"message": "Over 2 requests per second.",
"retryable": true,
"docsUrl": "https://chatterapi.com/docs/errors#rate_limited",
"instructionsForAgent": "Too many requests per second. Wait retryAfter seconds, then retry once.",
"retryAfter": 1
},
"requestId": "req_01M5502J49B45K4F367D"
}
That response came with retry-after: 1, x-ratelimit-limit: 2 and x-ratelimit-remaining: 0, and neither rejected call cost anything. The free Reddit post search tool runs the same search in a browser.
Next step
If you're a user, wait out the timer and update the app. If you're a developer and your script keeps hitting 429s, add the header check above today, or sign up with Google for 100 free credits (no card) and let ChatterAPI handle Reddit's limits. Plans start at $19 a month for 25,000 credits.