Guide
Reddit Rate Limited: Why It Happens and How to Fix It (2026)
Getting 429s or 'you are doing that too much' on Reddit? What triggers each limit, how long it lasts, how to fix it now, and the real .rss ceiling we measured.
By Shubham Bhatt · July 27, 2026 · 9 min read
Quick answer
Reddit rate limits you when you send requests faster than your access method allows. As a logged-in user posting or commenting, you see "you are doing that too much" and it usually clears in a few minutes. As a developer you get an HTTP 429, and the limit is 100 requests per minute with OAuth or 10 without. Slow down, check the X-Ratelimit-Reset header, and wait out the window. Retrying immediately makes it worse.
There are two completely different situations that both get described as "Reddit rate limited," and the fix is different for each. This covers both, then gets into the part almost nobody writes about: what the limits actually are in practice, which is not the same as what the docs say.
15-18
Reddit's public .rss endpoints allow only about 15 to 18 sequential requests from one IP before returning 429 for everything, a ceiling we measured live while running Reddit fetching in production. Reddit does not document a number for .rss anywhere.
Why am I being rate limited on Reddit?
Because you crossed a threshold on how fast you are asking Reddit for something. Which threshold depends entirely on how you are talking to Reddit, so work out which of these two you are before trying to fix anything.
Case 1: you are a normal user and see "you are doing that too much"
This is the account-level limit, and it applies to actions rather than requests: posting, commenting, sending messages, voting quickly. New accounts and accounts with low karma hit it far more aggressively than established ones, which is the single most common reason people think Reddit is broken when it is not. Reddit does not publish these thresholds and they vary by account age, karma, and subreddit.
Case 2: you are a developer and see HTTP 429
This is the request-level limit. You are calling the API, scraping, or pulling .rss feeds too quickly. Reddit responds with status 429 and, on the API, three headers that tell you exactly where you stand: X-Ratelimit-Used, X-Ratelimit-Remaining, and X-Ratelimit-Reset. Those headers are the fastest way to stop guessing. If Remaining is 0, you are done until Reset counts down.
What are Reddit's actual rate limits?
Reddit publishes limits for its API, but not for the public .rss feeds a lot of tools quietly depend on. Here is both, with the .rss number measured rather than quoted, because there is nothing official to quote.
| Access method | Limit | Where the number comes from |
|---|---|---|
| API with OAuth | 100 requests/minute per client | Reddit published |
| API without OAuth | 10 requests/minute | Reddit published |
| Public .rss feeds | ~15-18 requests per ~10-minute window | Measured by us, undocumented |
| Posting/commenting | Varies by account age and karma | Not published, varies |
How long does a Reddit rate limit last?
For the "you are doing that too much" case, usually a few minutes, and the message often tells you how long. For a 429 on the API, read X-Ratelimit-Reset, which gives you the seconds remaining in the current window. Reddit's windows are rolling and roughly 10 minutes long, so a hard 429 with no header information is usually cleared within about 10 minutes.
The important part: the clock only runs down if you stop. Every retry while you are limited can extend the block rather than shorten it, which is why aggressive retry loops turn a 30-second problem into a 10-minute one.
How do I fix Reddit rate limiting right now?
- 1Stop sending requests. This sounds obvious and it is the step people skip. A retry loop is why you are still blocked.
- 2Check the headers if you have them. X-Ratelimit-Remaining tells you if you have budget left, X-Ratelimit-Reset tells you how many seconds until it refills.
- 3Authenticate. Going from unauthenticated to OAuth takes you from 10 requests per minute to 100. This is the single biggest jump available to you.
- 4Add real spacing between calls, not just a retry. One request every second or two sustained beats bursts of twenty followed by a wall.
- 5Cache anything you fetch more than once. Most rate-limit problems are the same data being requested repeatedly.
What we learned running Reddit fetching in production
We fetch Reddit at scale to build scored pain-point research, so we have hit every version of this. Three things surprised us, and none of them are in Reddit's documentation.
The .rss budget is shared across every path
Reddit's unauthenticated .rss endpoints do not have separate budgets for search, listings, and comments. They share one per-IP budget across all of them. So a job that politely paces its search calls can still get 429d because a different part of the same system was pulling listings. When we instrumented this properly, a fresh window allowed roughly 15 to 18 sequential listing calls before everything started failing.
On serverless, your IP is shared with strangers
This is the one that catches people out. If you run on Vercel, AWS Lambda, or any serverless platform, your outbound requests come from a shared pool of egress IPs. Reddit's per-IP budget is therefore not yours alone, it is shared with every other tenant on that IP. Your code can be perfectly well-behaved and still get 429d because of somebody else's traffic. Locally everything works; in production it does not.
Cache first, rate limit second
The limiter is a safety net, not a solution. What actually removed most of our load was caching fetched listings so that many users asking about the same subreddit produce one upstream request instead of hundreds. If you are hitting rate limits regularly, the real question is usually not "how do I retry better" but "why am I fetching this twice."
What a rate limiter that actually works looks like
"Add spacing between calls" is easy advice and vague enough to be useless. These are the actual parameters we run in production, arrived at by hitting 429s until it stopped happening. They are deliberately below Reddit's ceiling, because the goal is to never reach it rather than to ride it.
- A token bucket, not a sleep. Roughly one request every 1.2 seconds sustained, with a burst of 8 saved up for bursty moments. A fixed sleep either wastes time or fails under concurrency.
- A hard concurrency cap. Never more than 4 requests genuinely in flight at once, no matter how many jobs want data. This is what stops a thundering herd.
- Cooperative backoff. When any one request sees a 429, pause every Reddit request for a cooldown, we use 8 seconds. Backing off only the failed call means the rest of your system keeps hammering a door that is already closed.
- A maximum wait, so failure is graceful. If a request cannot get a slot within about 15 seconds, give up and return no data instead of hanging the whole job.
The cooperative part is the piece most implementations miss. Per-request retry logic is not enough, because the limit is per IP and therefore shared across everything your process is doing. The limiter has to be a single choke point that all Reddit traffic passes through, or it is not really governing anything.
If you want the pricing side of this rather than the troubleshooting side, what the Reddit API costs and how the limits are priced covers that, including a calculator for your expected volume.
Do you actually need the API, or do you need the data?
Worth asking honestly, because they are different problems. If you are building a Reddit client or a tool that posts on someone's behalf, you need the API and you need to solve rate limiting properly. If what you actually want is to know what people in a community are complaining about, you are solving an infrastructure problem to get to a research answer.
That second case is what IdeaFast does: it scans Reddit, clusters recurring complaints into scored pain points, and links every claim back to the original thread, with no API keys or rate limits for you to manage. Pain points in r/SaaS is an example of the output. Your first scan is free.
Try it now
Work out your Reddit API volume and cost
Enter your expected monthly call volume to see whether you fit inside the free rate limit, and what commercial access would cost.
Enter your expected monthly API calls to see the estimate.
Frequently asked questions
Why does Reddit say I am doing that too much?
You have hit the account-level action limit, which applies to posting, commenting, messaging, and voting rather than API requests. It is much stricter on new or low-karma accounts. It usually clears within a few minutes, and the message often tells you how long to wait.
How long does a Reddit rate limit last?
Usually a few minutes for account-level limits, and up to about 10 minutes for API 429s, since Reddit's windows are rolling and roughly 10 minutes long. Check X-Ratelimit-Reset for the exact seconds remaining. Retrying while limited can extend it rather than clear it.
What is Reddit's API rate limit?
100 requests per minute per OAuth client for authenticated use, and 10 requests per minute unauthenticated. These are throughput limits on how fast you call, not caps on total monthly calls.
How do I avoid getting rate limited by Reddit?
Authenticate with OAuth to get 100 requests per minute instead of 10, space requests out rather than sending bursts, cache anything you fetch more than once, and back off properly when you do get a 429 instead of retrying immediately.
What are the X-Ratelimit headers?
Reddit returns three on API responses: X-Ratelimit-Used (requests used this window), X-Ratelimit-Remaining (requests left), and X-Ratelimit-Reset (seconds until the window resets). They are the most reliable way to know where you stand without guessing.
Do Reddit's .rss feeds have a rate limit?
Yes, though Reddit does not document it. We measured roughly 15 to 18 sequential requests from a single IP before 429s begin, and the budget is shared across search, listings, and comments rather than split between them.
Why do I get rate limited on Vercel or Lambda but not locally?
Serverless platforms send outbound requests from shared egress IPs, so Reddit's per-IP budget is shared with other tenants on that IP. Your own traffic can be well within limits and still get 429d because of somebody else's. Caching aggressively is the practical fix.
Skip the manual digging
IdeaFast scans Reddit for you and scores real pain points with evidence. Run your first scan free.
Start your free scan