Threads API Rate Limits: Posts, Replies, Search and Calls
Threads API rate limits are set per profile over a moving 24 hours: 250 API-published posts, 1,000 replies, 100 deletions and 500 location searches. Keyword search allows 2,200 queries per user per rolling 24 hours across all apps, and profile discovery allows 1,000 requests. Overall calls are capped at 4,800 times the account's impressions per 24 hours, with impressions counted as at least 10, and you check usage with GET /{threads-user-id}/threads_publishing_limit.
The Threads API has more separate limits than most APIs, and all of them run on a moving 24-hour window. That means there is no midnight reset: each call counts for exactly 24 hours after you make it. What the API gives you access to, and at what cost, is in Is the Threads API free?
Threads API rate limits at a glance
| Limit | Amount | Counted per | Window |
|---|---|---|---|
| All API calls | 4,800 x impressions (minimum 10 impressions) | App and user pair | Rolling 24 hours |
| CPU time / total time | 720,000 x impressions / 2,880,000 x impressions | App and user pair | Per day |
| Published posts | 250 (a carousel counts as 1) | Threads profile | Moving 24 hours |
| Published replies | 1,000 | Threads profile | Moving 24 hours |
| Deletions | 100 | Threads profile | Moving 24 hours |
| Location searches | 500 | Threads profile | Moving 24 hours |
| Keyword and topic tag search | 2,200 queries | User, across all apps | Rolling 24 hours |
| Profile discovery | 1,000 requests | User | Rolling 24 hours |
From Meta's Threads API overview, keyword search and profiles docs.
How the Threads call limit is counted
Impressions are the number of times content from the user's Threads account appeared on someone's screen in the last 24 hours. A new or quiet account is counted as 10, so every app and user pair gets at least 48,000 calls a day. A creator with 50,000 daily impressions gets 240 million, far more than any app needs. In practice the call limit only matters for small accounts, and the per-feature limits matter for everyone.
How to check your Threads API usage
One endpoint reports every publishing-type limit. Ask for the fields you need:
curl -s "https://graph.threads.com/v1.0/THREADS_USER_ID/threads_publishing_limit?fields=quota_usage,config,reply_quota_usage,reply_config,delete_quota_usage,delete_config,location_search_quota_usage,location_search_config&access_token=TOKEN"
Each *_usage field is the count in the last 24 hours, and each config object holds quota_total (for example 250) and quota_duration (86400 seconds). Meta asks you to enforce the publishing limit in your own app, especially if users can schedule posts. Check before you publish, not after it fails.
The keyword search limit in practice
Keyword search is the limit people hit first. Facts that change the math:
- 2,200 queries per rolling 24 hours, per user, shared across every app that user authorized.
- Repeating the same keyword counts again.
- Queries that return no results do not count.
- Each query returns 25 posts by default and up to 100 with
limit. - Without approval for the
threads_keyword_searchpermission, search only covers the authenticated user's own posts.
Worked plan: you monitor 30 brand keywords. Every 15 minutes is 30 x 96 = 2,880 queries a day, which is over 2,200. Every 20 minutes is 30 x 72 = 2,160, just under. With limit=100 and the since parameter set to your last run, each query returns only new posts, up to 216,000 a day. If you need 15-minute freshness, split the keywords: poll the 10 that matter most every 10 minutes (1,440) and the other 20 every 40 minutes (720), for 2,160 in all.
def max_keywords(interval_minutes, budget=2200, margin=0.95):
runs_per_day = 24 * 60 // interval_minutes
return int(budget * margin // runs_per_day)
print(max_keywords(15)) # 21 keywords
print(max_keywords(20)) # 29 keywords
Publishing limits in practice
A scheduling tool for a brand account can publish 250 posts and 1,000 replies in any 24-hour stretch. A carousel of up to 20 items is one post. A reply bot that answers every mention would hit 1,000 replies well before the call limit. Queue replies and check reply_quota_usage before each send.
import requests
BASE = "https://graph.threads.com/v1.0/"
def can_publish(user_id, token, kind="post"):
field = {"post": ("quota_usage", "config"), "reply": ("reply_quota_usage", "reply_config")}[kind]
r = requests.get(BASE + user_id + "/threads_publishing_limit",
params={"fields": ",".join(field), "access_token": token}, timeout=30)
r.raise_for_status()
row = r.json()["data"][0]
return row[field[0]] < row[field[1]]["quota_total"]
What happens when you hit a limit
Requests over a limit fail with a Meta error object in the JSON body. The Threads docs do not list Threads-specific throttle codes, so log the full error object, stop calls for that user, and resume after the oldest counted call is 24 hours old. Do not retry in a loop: on Meta's APIs, calls made while throttled still count. For publishing and search, the usage endpoint above tells you exactly when you are clear.
Can you get higher Threads API limits?
Meta publishes no request form for higher Threads limits. The call limit grows with the account's impressions. The per-feature limits are fixed per profile or user. To reach public posts at all, your app needs App Review approval for permissions such as threads_keyword_search and threads_profile_discovery.
When a paid API is simpler
If you only post for your own accounts, the Threads API is the right tool and its limits are generous. If you monitor many keywords or read public profiles at scale, the 2,200-query and 1,000-profile limits per user become the job's ceiling. ScrapeIO allows 300 requests a minute per API key, with no daily or monthly cap beyond the credits you hold. A 429 from ScrapeIO costs nothing, and neither do failed calls, private or not-found answers, or cached repeats.
ScrapeIO's threads search API, threads profile API and threads user posts API read public Threads data at 1 credit a call, with no App Review. It cannot publish. Agents can use the Threads MCP server. See Threads API: official vs alternatives.
FAQ
How many posts can I publish per day with the Threads API?
250 per profile in any moving 24-hour period, plus 1,000 replies.
Does a carousel count as one post?
Yes. A carousel counts as a single post toward the 250.
Do empty keyword searches count toward the limit?
No. Queries that return no results do not count.
Is the keyword search limit per app?
No. It is per user, across all apps. Two apps searching for the same user share 2,200 queries.
What is the minimum Threads API call limit?
48,000 calls per 24 hours, because impressions below 10 are counted as 10.
Sources
Checked on 9 November 2026 from each vendor's own pages. Prices and limits change; follow the links before you decide.
- https://developers.facebook.com/docs/threads/overview
- https://developers.facebook.com/docs/threads/keyword-search
- https://developers.facebook.com/docs/threads/threads-profiles
100 free credits, no card. Credits never expire.
Get API key